SQL语句:update语句的一个小坑
数据库中的表内容如下:
语句1 :
update apps set owner_code='43212' and owner_name='李四' where owner_code='13245' and owner_name='张三';
问 :语句是否有语法问题?执行结果是什么?
答 :语句无语法问题,执行后数据库结果如下:
语句2 :
update apps set owner_code='43212' , owner_name='李四' where owner_code='13245' and owner_name='张三';
问 :语句是否有语法问题?执行结果是什么?
答 :语句无语法问题,执行后数据库结果如下:
分析 :
update apps set owner_code='43212' and owner_name='李四' where owner_code='13245' and owner_name='张三';
等同于 :
update apps set owner_code= ('43212' and owner_name='李四' ) where owner_code='13245' and owner_name='张三';
(‘43212’ and owner_name=‘李四’ )的结果当然为false了。