我正在使用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实现类,负责连接,断开连接等事项。
答案 0 :(得分:0)
您是否可能在查询和insert_id()之间断开连接并重新连接到mysql?
答案 1 :(得分:0)
试试这个:
$result = \PSU::db->Execute( $updateSQL, $values_array );
return \PSU::db->_connectionID->insert_id ;
_connectionID必须按原样修复。
希望它有所帮助!