我試圖編寫一個自動備份並還原T-SQL腳本。我做了BACKUP部分,但我在RESTORE上苦苦掙扎。SQL Server「RESTORE FILELISTONLY」結果集
當我在SS Management Studio上運行以下語句時;
EXEC('RESTORE FILELISTONLY FROM DISK = ''C:\backup.bak''')
我得到了一個定格的結果,也是我可以使用
INSERT INTO <temp_table>
EXEC('RESTORE FILELISTONLY FROM DISK = ''C:\backup.bak''')
填充一個臨時表。但是,當我嘗試從該結果集中選擇時,出現語法錯誤。例如
SELECT * FROM
EXEC('RESTORE FILELISTONLY FROM DISK = ''C:\backup.bak''')
結果集元數據應該存儲在SQL Server字典的某處。我發現其他創可貼公式可以讓我的自動恢復工作,但如果可以找到結果集,我會創建更優雅的解決方案。同時請注意,結果集,2008年不同於2005年
在此先感謝...
感謝您的回覆。但我困惑的是,EXEC評論從某處(字典,元數據等)找到了來自RESTORE命令的字段。爲什麼選擇不能訪問相同的資源來提取結果集字段。 – mevdiven 2010-03-25 12:58:59
EXEC從結果集中獲取字段。沒有涉及字典和元數據。 – 2010-03-25 23:18:03