伟大的马克思主义者、伟大的无产阶级革命家、政治家、军事家、外交家江泽民同志永垂不朽。

Sqlsrv驱动Insert into数据返回新增自动编号

2022-11-22 20:57:01
黄豆 UsualTool.com
编程思维/PHP 255
loading

“在 Microsoft Drivers for PHP for SQL Server 中,SQLSRV 驱动程序的 API 名称为 sqlsrv。 所有 sqlsrv 函数都以 sqlsrv_ 开头,后跟谓词或名词。 后跟谓词的函数可执行特定操作,后跟名词的函数可返回特定形式的元数据。”

曾经,我一直认为sqlsrv无法返回新增ID,而采用PDO连接的方式。之前在一个项目中,不得已必须通过sqlsrv获取到新增ID,因此翻阅了大量资料,最后发现中文资料寥寥无几,有通过max(id)来获取的,也有通过@@IDENTITY来获取的,但这些并不是好办法。天不负有心人,终于在翻阅资料的过程中发现SCOPE_IDENTITY这个非常接近我想法的东西。

经过一些测试,SCOPE_IDENTITY更加稳定和靠谱,给出一个PHP示例:


$sql="insert into table (xxx) values (xxx);SELECT SCOPE_IDENTITY();";
$query=sqlsrv_query($db,$sql);
sqlsrv_next_result($query);
$result=sqlsrv_fetch_array($query);
echo$result[0];


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开微信扫一扫,即可进行扫码打赏哦!

+分享给朋友+
郑重提醒:部分素材来源于互联网,如果侵犯了您的权利,请及时联络我们更正,谢谢合作,电邮:help@usualtool.com
推荐阅读