我不知道为什么,我的查询正在完成他的工作,但有时ID自动增量不会像它应该的那样。
$stmt = $this->mysqli->prepare("INSERT INTO `user` (`name`, `date`) VALUES ('$name','$timestamp') ON DUPLICATE KEY UPDATE `name` = VALUES(name), `update` = '$timestamp'");
$stmt->execute();
// My MySql table
---------------------
id | name | date | update |
1 | John | 2014-10-07 15:42:14 | 0000-00-00 00:00:00 |
---------------------
当我再次插入John时
// he will do update good
---------------------
id | name | date | update |
1 | John | 2014-10-07 15:42:14 | 2014-10-07 15:43:20 |
---------------------
现在,来了bug,当我插入Anie时,我会得到:
// But now he will skip ID number 2 - Why ? and how to fix this ?
---------------------
id | name | date | update |
3 | Annie | 2014-10-07 15:44:14 | 0000-00-00 00:00:00 |
---------------------
ID设置为主键,唯一,auto_increment
和
我正在使用MySqli INNODB引擎和PHP 5.5