ZEND 框架:无法在单个函数中执行更新和插入

ZEND framwork: unable to perform update and insert in a single function

我是 ZEND 的新手,正在处理现有代码。

我需要编写代码,如果编辑现有数据然后通过 id 将 is_active 更新为 0 并插入新的 data.Both 工作正常但单独更新工作或插入(通过评论其他)。

这是我的代码: 控制器:

class ConfigurationController extends Zend_Controller_Action {
public function myFunction()
{
   $data_array = array('id' => $emp_id, 'user_id' =>  $emp_user_id,
                'email' => $emp_email,
                'isactive' => '1'
            );

$empModel = new Default_Model_emp();//obj of model
$result = $empModel ->updateEmpConfig($data_array); //call model method
 }
}

型号:-

class Default_Model_emp extends Zend_Db_Table_Abstract {
  protected $_name = 'tbl_emp';
    protected $_primary = 'id';

function  updateEmpConfig($data)

{
    if ($data['id']) {
            //remove previous ie isactive = 0
            $dataUpdate = array(
                'isactive' => 0,
                'modified_by' => $data['modified_by'],
                'modified' => date("Y-m-d H:i:s")
            );
  // Update in table
            $result = $this->_db->update('tbl_emp', $dataUpdate, array('id = ?' => $data['id']));
}

     //insert in table as new entry
          $this->insert($data);
$insert_result = $this->getAdapter()->lastInsertId('tbl_emp');

return $insert_result ;   
}

这里有什么问题?

我通过分别执行简单的 2 个查询解决了这个问题。

$updateQry=" UPDATE tbl_name SET col=value WHERE where_condition";

$result_update = Zend_Db_Table_Abstract::getDefaultAdapter()->query($updateQry);  


$insetQry="INSERT INTO tbl_name". '` (' . implode(',', array_keys($arrayData)) . ") VALUES ( " . implode(',', array_values($arrayData)) . ') ';

$result_insert = Zend_Db_Table_Abstract::getDefaultAdapter()->query($insetQry);