百思不得其姐 发表于 2015-3-6 16:37:56

mysql插入数据库成功,但是insert_id为0

$res = $this->db->insert('haha',$insert);
$insert_id = $this->db->insert_id();
插入成功,返回的$insert_id为0

Closer 发表于 2015-3-6 16:49:39

本帖最后由 Closer 于 2015-3-6 16:52 编辑


$this->db->insert('haha',$insert);
$insert_id = $this->db->insert_id();

這樣的話呢?
static/image/hrline/line3.png
看了 CI 社區 - $this->db->insert_id() 该如何用?
發現你那張表需要一個會自動編號的主鍵才行

百思不得其姐 发表于 2015-3-6 17:09:50

Closer 发表于 2015-3-6 16:49
$this->db->insert('haha',$insert);
$insert_id = $this->db->insert_id();



都不行~还是返回0    id就是主键自增的~

57sy.com(隐身中 发表于 2015-3-6 17:30:48

百思不得其姐 发表于 2015-3-6 17:09
都不行~还是返回0    id就是主键自增的~

你数据库要设置为主键自动递增!!!

luofuchuan 发表于 2015-3-6 17:48:25

因为你每次插入数据库都是插在了最顶行。最顶行的insert_id都是为0

一叶扁舟 发表于 2015-3-7 11:21:20

点开数据库看看不就知道了

Michael锐生 发表于 2015-6-23 11:53:18

刚好我也碰到这个问题,我是在事务提交后返回自增的id就会返回0,修改为在事务提交前记录自增的id就没有问题

x-xiong 发表于 2016-7-8 18:01:42

我今天也遇到这个问题,解决了,那是因为主键没有自增(主键不需要自增的情况),就会为0,你打印影响的行数:$this->db->affected_rows()就得出结果了
页: [1]
查看完整版本: mysql插入数据库成功,但是insert_id为0