MySql报错原因分析Unknown column ‘xxx’ in ‘where clause’

在更新数据库时曾经碰到过类似于Unknown column ‘xxx’ in ‘where clause’的问题。 单从字面理解,我们很容易得出列名不存在的结论,但是,很多时候起始并不是由于列名出错造成的。而是由于拼凑sql语句时对字符类型数据没有用引号引起来造成的。


例如:一个sql语句:

    UPDATE tbl_Mdr SET nRecvTime=%s WHERE strMsgId=%s 则错误如下:

Unknown column
‘ysy′ in ‘where clause’

如果sql中字符串类型必须要包含在引号内。

所以修改sql为UPDATE tbl_Mdr SET nRecvTime='%s' WHERE strMsgId='%s'

则错误消失。。

你可能感兴趣的:(mysql,数据库)