PDO lastInsertId()不适用于MS SQL

Dre*_*rew 2 php sql-server pdo

我正在使用PDO运行插入查询,然后使用lastInsertId()获取新创建的Id.这一切都在我的localhost环境中工作.

当我将完全相同的代码移动到服务器上时,lastInsertId()始终返回空白,即使insert语句有效并将新行插入数据库.这是我配置中的设置吗?任何帮助表示赞赏.

$insertstmt = $dbinsert->prepare($insertsql);

// bindParams ...

$insertstmt->execute();

// always blank
$id = $dbinsert->lastInsertId();

$dbinsert = null;
Run Code Online (Sandbox Code Playgroud)

Dre*_*rew 5

我最后使用这个方法替换了lastInsertId():http://php.net/manual/en/pdo.lastinsertid.php#105580

$temp = $sth->fetch(PDO::FETCH_ASSOC);
Run Code Online (Sandbox Code Playgroud)