我是 PHP 的新手,但我正试图解决它。假设我有一个插入预处理语句(sqlsrv_prepare()
),我将通过替换变量值重新使用多次,然后重新执行它。
foo
表使用IDENTITY(1,1)
。
我的陈述是:
insert into foo (bar, baz)
values (?, ?);
Select SCOPE_IDENTITY() as LAST_ID;
我的参数数组由array( &$bar, &$baz)
组成。这样,对于一千个插入,我只能替换$bar
和$baz
值并重新运行该语句。
但问题是:由于sqlsrv_execute()
返回bool值,我如何检索最后一个“语句插入”ID以将其推送到数组?
我知道我可以使用sqlsrv_query()
来做到这一点......我不知道,但我认为它会更慢(因为sqlsrv_query()
prepares and executes a query,所以我认为在内部,它会在每次运行时运行“准备函数”,而不是仅通过替换参数值多次执行相同的语句。
我知道如何获取最后插入的ID,使用sqlsrv_query()
from here和here插入了哪一行。
我怎样才能为sqlsrv_execute()
做到这一点?我做错了吗?
提前谢谢!