0

我有一些 php 代码可以执行与数据库相关的不同操作,例如备份和恢复。如果我使用内置的备份数据库或恢复数据库查询,它工作正常。我们使用名为 Red Gate SQL Backup 的产品,它使用扩展存储过程来完成这项工作。

 EXECUTE master..sqlbackup '-SQL "RESTORE DATABASE test_database FROM DISK = 'C:\db_backups\FULL_(local)_test_databse.sqb'"'

该命令确实有效。问题是我有其他查询在此之后运行,并且查询不等待运行。例如,他们试图立即运行,但数据库还没有完全恢复,所以他们失败了。

有没有办法做到这一点,以便在查询实际完成之前它们不会运行?典型的 RESTORE DATABASE 不会发生这种情况,因为它会等到完成后再继续执行脚本中的下一个命令。

4

1 回答 1

0

这可能取决于您如何调用此命令。我不知道 PHP 具有对运行 MSSQL 查询的内置支持,但我敢打赌,您用来调用它的可能有某种选项可以立即将执行控制返回给 PHP,或者等待上一条命令完成。

于 2014-02-24T08:46:37.067 回答