3

我正在使用 ADODB 连接到我的数据库。提交查询后,我想获取最后插入行的 ID(来自刚刚插入的查询)。

ADODB 有一个 Insert_ID() 函数,该函数应该检索它,但它不是...
db->Insert_ID()
不工作,也不是
db->Insert_ID($table, $key)

它们都只返回空值。我仔细检查了我的表,插入语句确实在工作,正在放入一个新行,关键是 auto_increment。我使用 Insert_ID 错误还是有更好的方法来检索插入的最后一行的键?

谢谢

编辑:添加代码

    $result = \PSU::db->Execute( $updateSQL, $values_array );
    $id = \PSU::db->Insert_ID();
    // $id = \PSU::db->Insert_ID( $table, $key );

\PSU::db 是我们的 ADODB 实现类,负责连接、断开连接等。

4

2 回答 2

0

您是否有可能在查询和 insert_id() 之间断开并重新连接到 mysql?

于 2012-02-03T17:53:12.740 回答
0

尝试这个:

$result = \PSU::db->Execute( $updateSQL, $values_array );

return \PSU::db->_connectionID->insert_id ;

_connectionID 必须按原样固定。

希望能帮助到你!

于 2014-08-19T22:01:40.593 回答