2008-11-14 50 views
2

我試圖完全自動化我的構建,部分是將SQL腳本應用到SQL Server。
我創建了一個調用SQL Server實用程序(OSQL.EXE)來應用腳本的批處理文件,如果我直接在SQL服務器上調用它,它將起作用。
但我不能在我的生成機器上使用它,因爲它沒有安裝SQL Server。如何在遠程SQL Server上應用SQL腳本?

有沒有辦法從我的生成機器啓動遠程機器上的批處理?
有沒有解決這個問題的另一種方法?

回答

2

只安裝Sql Server Client

  • 的Microsoft SQL Server 2005管理對象集合: ,然後你可以用它來運行任何腳本或任何東西從C#別的。 所以你可以創建一個項目,用SMO做這些工作,並在你的構建設置中使用它。

  • Microsoft SQL Server 2005命令行查詢實用程序:只安裝SQLCMD並執行相關操作。

0

要使用osql,需要安裝SQL Server,但可以使用其他數據訪問方法從遠程計算機與SQL Server計算機進行通信。例如,您可以使用.VBS腳本使用ADO。

0

兩個想法:

  1. 您是否嘗試過複製OSQL.EXE和安裝構建機器上的客戶端的SQL Server庫?我沒有,但我認爲這是值得一試。

  2. 編寫一個連接並提供數據的程序,不應該太難。從文件讀取SQL並將其提供給指定的SQL Server。

+0

如果我OSQL.EXE到我的構建機器複製,那不是侵犯版權? – 2008-11-14 18:48:41

+0

呵呵,我不知道那個,好點 – 2008-11-14 19:12:47

2

你可以你的客戶端機器上安裝的SQLExpress自由和使用sqlcmd.exe,這是對OSQL的MSSQLServer和isql工具等效。