在使用update更新數據時,顯示更新成功,但是卻沒有更新數據。
問題: update t_book SET price = price + 1 where id = '1' ;
結果:
Query OK, 1 row affected (0.02 sec)
Rows matched: 1 Changed: 1 Warnings: 0
原因:
因爲在表t_book中price(int)的初始值爲null,所以使用price = price + 1時數據並不會更新。
解決方法:
把price的初始值設置爲0即可。
update t_book SET price = 0 where id = '1' ;
update t_book SET price = price + 1 where id = '1' ;
這樣即可更新成功。
雖然price爲空時讀取出來的結果還是0,但是在數據庫中執行自增時就會出現問題。