使用笨和表与唯一键约束如下:为什么last_insert_id()会在失败的插入中返回一个值?
UNIQUE KEY `user_identity_unique` (`site_id`,`user_id`,`event_id`)
然后将数据插入该表具有以下方法:
$this->db->insert('events', $data);
return $this->db->insert_id();
当插入失败由于键约束,即使没有插入任何东西,$this->db->insert_id()
仍然会返回一个值。我敢肯定MySQL是因为调用$this->db->_error_message()
的结果返回一个错误...
Duplicate entry '267-83880-07' for key 'user_identity_unique'
这似乎是不正确的行为 - 任何人都熟悉这个可以提供一些线索?为什么last_insert_id仍然会返回一个值? (在这种情况下,完全不相关的行的ID)
您是否阅读过文档? – Kermit 2013-03-17 16:57:27