为什么将字段附加到字段会将所有内容替换为0

时间:2018-03-06 11:20:31

标签: mysql sql

 $invoice_id = $data['invoice_id'];
        $remark = '  ### Manually set as Paid Note: '.$data['paid_note'].' ###';
        $sql = "UPDATE tbl_invoice SET payment_status = 1, remark = remark+'$remark' WHERE invoice_id = $invoice_id";

这应该附加'评论'具有新价值的领域。但备注字段用' 0'更新。奇怪!无法找到我的代码上的问题。任何的想法?

N.B:我正在使用MySql DBMS。

1 个答案:

答案 0 :(得分:1)

您应该学会使用参数。但是您的问题是使用+,这是另外的。我认为你想要字符串连接:

UPDATE tbl_invoice
    SET payment_status = 1,
        remark = CONCAT(remark, '$remark')
    WHERE invoice_id = $invoice_id;

但是,代码应该更像这样:

UPDATE tbl_invoice
    SET payment_status = 1,
        remark = CONCAT(remark, ?)
    WHERE invoice_id = ?;

其中?是参数的占位符。