php
  • sql-server
  • redgate
  • 2014-02-21 194 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,或者等待先前的命令完成。

    相關問題