mysql - 更新数据库中的列值

标签 mysql codeigniter

我需要用一些值减去'stk_on_hand'字段的值并更新它。为此我尝试过的是

        $this->db->select('co_q_id,co_stk_id,co_req_quantity');
        $this->db->from('customer_order');                 
        $this->db->where('co_num',1);  
        $result=$this->db->get();  
        foreach($result->result() as $row){                                 
            $stkArray[] = array(
            'stk_id'=>$row->co_stk_id,
            'stk_on_hand' =>'stk_on_hand - ' . (int) $row->co_req_quantity
            ); 
        $this->db->update_batch('ms_stock_list',$stkArray, 'stk_id');

但是执行此操作后,我得到的 'stk_on_hand'0。请有人帮忙。

最佳答案

首先检查您的数据库列,如果“stk_on_hand”是 varchar 第二撤销前面的(int)

$row->co_req_quantity

关于mysql - 更新数据库中的列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41504970/

相关文章:

php - MySql 获取最近 10 条评论以及所有子评论

mysql - 使用 UNION 语句进行双重 ORDER BY 排序

java - 在 hibernate 条件查询中选择 "all columns"和 "group by"

mysql - 提交到数据库后,输入字段保留空白并带有特殊字符

php - 如何将表单下拉CodeIgniter中的索引数组与SQL中的id相匹配?

mysql - 2个不同数据库之间的表模式转换

php - SQL 查询给出了错误的顺序

php - 无法在 codeigniter 中销毁 session

php - Codeigniter/PHP session 安全问题

php - 如何在codeigniter中加入多个连接