public function deleteByPk($pk, $condition = '', $params = array()) { $transaction = $this->dbConnection->beginInternalTransaction(); try { $this->versionToTable($this->commandBuilder->createPkCriteria($this->tableName(), $pk, $condition, $params)); $result = parent::deleteByPk($pk, $condition, $params); $transaction->commit(); return $result; } catch (Exception $e) { $transaction->rollback(); throw $e; } }