有没有更有效的更新数据库值的方法?

时间:2020-01-19 15:34:09

标签: php sql codeigniter web

function updateQty($qty, $kode){
    for ($i=0; $i <$qty ; $i++) { 
        $this->db->set('qty', 'qty+1',FALSE); 
        $this->db->where(array('kode'=>$kode, 'username'=>$this->session->userdata('username')));
        $this->db->update('temp'); 
    }
}

是否有一种有效的方法将qty列更新为qty+$qty? 我试图更改qty+$qty,但是它不起作用。


NB:
qty是数据库中的列名
$qty是php中的变量名

1 个答案:

答案 0 :(得分:2)

在循环中运行查询通常不是一个好主意。相反,您可以通过将变量连接到字符串来将新值设置为qty + $qty

function updateQty($qty, $kode) {
    $this->db->set('qty', 'qty + '.(int)$qty); 
    $this->db->where(['kode' => $kode, 'username' = >$this->session->userdata('username')]);
    $this->db->update('temp'); 
}