mysql插入记录后获取自动递增ID函数mysql_insert_id为空的解决方法

mysql_insert_id()会将最近一次的insert操作中,产生的auto_increment字段值返回。mysql_insert_id()不受其它客户端请求干扰。非常有用!但是稍不留意,mysql_insert_id()就会返回空值,有以下几种情况:

1,同时打开了一个以上的数据库资源,如果其中一个资源,没有使用insert语句,或,没有auto_increment类型的数据,或返回结果恰好为空值时,会导致mysql_insert_id()返回空值。

解决办法就是:指定连接资源即可。mysql_insert_id(this->conn);

2,此外的一种情况不是mysql_insert_id()本身导致的返回结果为空。有一次,用die(mysql_insert_id());来返回刚插入的id。数据库里已经成功插入了,但是返回确实空值,最后发现,die()只接受字符串。

解决办法:die(mysql_insert_id().””);就可以了。

如果程序执行不下去就去掉 die() 直接 mysql_insert_id().”” 就OK了

发表评论

您的电子邮箱地址不会被公开。