2011-11-28 118 views

回答

0

有多種選擇。只要啓用它,T-SQL就提供xp_cmdshell來執行dos命令。有了這個,只要有一個有效的Windows路徑到這兩個位置(當然,權限設置恰當)或者調用可編寫腳本的FTP客戶端,就可以複製文件。當然,我必須指出xp_cmdshell由於很好的原因被默認禁用,並且啓用可能會大大降低安全性。我已經多次使用它來完成您所描述的幾乎所有內容,但是您必須充分考慮安全後果。

如果你通過網絡移動它,你可能也想使用壓縮。你當然可以用WinZip或7-Zip之類的東西來做,但許多第三方SQL備份程序如Red Gate's SQL Backup都內置了壓縮。

最後,您可能會考慮從SQL以外的地方進行此操作,例如通過更優雅地處理文件操作的Powershell,並且可以通過SMO與SQL Server一起使用。

+0

其實我是新到SQL Server,有移動使用SQL腳本而不是使用DOS程序,所有這些文件的任何直接的方式。 – user922161

+1

不在TSQL中。 TSQL首先是一種查詢語言,儘管它有像xp_cmdshell這樣的東西來提供靈活性。 SSIS有選擇,但即使SSIS也會在幕後調用OS命令。當我開始時(在Powershell出現之前),我經常使用xp_cmdshell來完成您所描述的內容。現在,我建議使用Powershell和Task Scheduler,如果你需要它的話,除非在SQL裏面有一些非常有說服力的理由。 – TimothyAWiseman

相關問題