UPDATE 更新數據時報錯:
ERROR 1292 (22007): Truncated incorrect DOUBLE value: 'XXXX'
查了下原因爲查詢條件字段的類型不匹配,例如:
CREATE TABLE `test` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`user_id` varchar(20),
`name` varchar(20),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
查詢時
UPDATE test SET name = "aaa" WHERE user_id = 1111;
就會報上邊的錯誤。
需要改爲
UPDATE test SET name = "aaa" WHERE user_id = "1111";
詳細解釋可以參考:
ERROR 1292 (22007): Truncated incorrect DOUBLE value 和ORA-01722: invalid number