数据库
首页 > 数据库> > mysql-Zend_Db last_insert_id返回超大数字

mysql-Zend_Db last_insert_id返回超大数字

作者:互联网

我有一个MySql表,其主键是64位BigInt

我正在使用Zend_Db(Zend Framework 1.8.4)插入新行,然后调用lastInsertId()检索新行的ID,我得到的是一个超大数字,例如18446744072633694008,这个数字会随着时间的变化而变化.时间,但是总是那么大.自动递增索引设置为0,并且实际上已使用正确的主ID(0、1、2 …)插入数据库中的记录,只是从lastInsertId()返回的ID给出了奇怪的数字. Zend_db是否处理64位数字,这是一个已知问题吗?

环境:
Zend Framework 1.8.4
Apache2 on 32bit,
Ubuntu操作系统
MySQL5.1
PHP5.2.4
MySQL适配器:mysqli

谢谢

解决方法:

这似乎是PHP的Mysqli适配器的OO实现中的错误. See this note on PHP’s website.

对于临时的权宜之计,请尝试使用PDO_Mysql Zend_Db适配器.

我当前正在创建一个问题,并正在研究一种解决方案,以查看是否可以在Zend_Db_Adapter_Mysqli中解决此问题.我将根据我的进度更新此答案.

您可以通过http://framework.zend.com/issues/browse/ZF-7590跟踪我的解决方法的进度

标签:zend-db,zend-framework,mysql
来源: https://codeday.me/bug/20191107/2003158.html