更新语句正确的写法
update table_name set column1 = 'value1', column2 = 'value2' where id = 1
更新语句错误的写法
update table_name set column1 = 'value1' and column2 = 'value2' where id = 1
运行错误写法的结果
column1 会被更新为 0
原因分析
使用and连接符时,该语句会被解析为
update table_name set column1 = ('value1' and column2 = 'value2') where id = 1
而 ('value1' and column2 = 'value2') 是一个逻辑表达式,由于 column2 = 'value2'并不成立,故 (column2 = 'value2') 的结果为0,此时表达式等效为 (1 and 0),故实际的结果被更新为 0
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。