php
  • sql-server
  • redgate
  • 2014-02-21 143 views 0 likes 
    0

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

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

    该命令行得通。问题是我在这之后运行了其他查询,并且查询不等待运行。例如,他们尝试立即运行,并且数据库没有完全恢复,因此失败。

    有没有办法做到这一点,所以他们不会运行,直到该查询实际完成?典型的RESTORE DATABASE不会发生这种情况,因为它在等待脚本中的下一个命令前完成。

    回答

    0

    这可能取决于你如何调用这个命令。我没有意识到PHP内置了对运行MSSQL查询的支持,但我敢打赌,你可能会用某种方式来调用这个选项,它会立即将执行控制权返回给PHP,或者等待先前的命令完成。

    相关问题