【问题标题】:Why is MySQL not returning the last inserted id, it returns 0?为什么 MySQL 不返回最后插入的 id,它返回 0?
【发布时间】:2012-09-12 07:26:27
【问题描述】:

我有一个表,它有一个自动递增的主键。每次我在该表中插入一行,并使用mysql_insert_id() 获取为该表插入的最后一个 id,它都会返回 0。

还有什么其他可能的问题?

【问题讨论】:

  • 插入真的发生了吗?查询可能失败,因此没有要返回的 id。
  • 有趣的是,该行正在被插入...
  • 这个不看代码是无法回答的。其他一些查询过程或连接关闭可能会造成干扰,或者任何数量的事情。

标签: php mysql database insert opencart


【解决方案1】:

使用OpenCart提供的方法:

$this->db->getLastId()

【讨论】:

  • 是的,我最初使用它,但它得到了与我上面描述的相同的错误。
  • 您使用的是 INSERT 和 $this->db->query 函数?另外,插入新产品/类别时是否会出现此问题?如果不是,那么它要么是数据库设计,要么你根本没有正确使用这些方法。正如其他人指出的那样,代码示例很容易验证这一点
猜你喜欢
  • 1970-01-01
  • 2011-11-06
  • 2014-09-06
  • 2017-03-26
  • 2012-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多