PHP Mssql存储过程中的多查询


PHP Mssql multi query in a store procedure

我有一个执行存储过程的PHP脚本。到目前为止一切顺利。现在我有了一个存储过程,它在存储过程中执行两个查询:

EXEC ('Delete From [DB].dbo.[Table]')
EXEC ('INSERT INTO [DB].dbo.[Table] ([Col])VALUES(1)')

如果我用php调用SP,它只删除表的内容,而不插入第一行。(似乎只有第一个Exec会被执行)我在PHP中调用SP如下:

$stmt = sqlsrv_query($connection, "EXEC my_sp" );
...
while( $row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC) ) {
...
}

目前回报对我来说不是那么重要。我只是想知道为什么只执行第一个查询。如果直接在数据库上调用SP,查询将按预期执行。没有错误信息或类似的东西。有人知道我如何执行两个"执行官"和SP只有一个php调用?

谢谢你的帮助!V

我认为你不需要在SP. ingore EXEC()中写EXEC('Delete From [DB].dbo.[Table]')。只需写:Delete From [DB].dbo.[Table].