【发布时间】:2020-01-16 22:52:20
【问题描述】:
在我的第一个table(ts_users) 更新打开user_opening_balance 的同时,我想在我的第二个table(ts_voucher) 列中更新user_opening_balance 是voucher_amount。但是在我的第二张表中 table(ts_voucher) voucher_amount 更新了所有列的数量。
我的代码:
public function updateConsignor($myData){
extract($myData);
$this->db->set('user_full_name' , $user_full_name);
$this->db->set('user_opening_balance' , $user_opening_balance);
$this->db->where('user_id', $user_id);
if($this->db->update('ts_users')){
$userId = $myData['user_id'];
$this->db->trans_begin();
$openingBalTrxn = array(
'voucher_amount' => $myData['user_opening_balance'],
);
$this->db->update('ts_voucher', $openingBalTrxn);
$this->db->where('voucher_person_account_id',$userId);
if ($this->db->trans_status() === false){
$this->db->trans_rollback();
return false;
}else{
$this->db->trans_commit();
return true;
}
return $query_result;
return true;
}else{
return false;
}
}
我给出了 where 条件
$this->db->update('ts_voucher', $openingBalTrxn);
$this->db->where('voucher_person_account_id',$userId);
为了更新一条记录,它会更新所有 voucher_amount 列记录
【问题讨论】:
标签: php mysql sql codeigniter