2009-12-16 99 views
0

我剛剛開始使用SQL Server 2005企業版的sqlcmd。在sqlcmd中使用connect命令時發生連接錯誤,但在執行命令行連接時沒有發生連接錯誤

我可以連接到我的服務器很好,在命令行:

SQLCMD -SSQLSERVERNAME -Q「選擇測試= 1」

然而,當我創建一個具有隻是這個junk.sql文件一條線:

:連接-SSQLSERVERNAME

...,並嘗試通過運行來運行它在命令行中執行以下操作:

SQLCMD -iç :\垃圾\ junk.sql

......我甚至無法連接 - 我得到這個錯誤:

命名管道提供商:無法打開到SQL Server的連接[2]。 Sqlcmd:錯誤:Microsoft SQL Native Client:建立到服務器的連接時發生錯誤。當連接到SQL Server 2005時,此故障可能由以下事實引起:在默認設置下,SQL Server不允許 允許遠程連接。 Sqlcmd:錯誤:Microsoft SQL Native Client:登錄超時已過期。

從我讀到的,我認爲使用連接命令應該工作。我只是不正確地使用它?我想要做的是使用connect命令連接sql文件(最終使用不同服務器的變量),然後使用:r命令運行不同的sql文件。

想法?

感謝, 西爾維亞

回答

1

:connect命令不需要-S開關,只需使用

:connect "SQLSERVERNAME" 
+0

+1:趕上! – RBarryYoung 2009-12-16 23:58:21

0

好了 - 我是做錯了兩兩件事:

**看來,當你運行sqlcmd時,你必須從一開始就連接到某個東西。我想我可能只是這樣做:

的sqlcmd -i C:\垃圾\ junk.sql

,但我不得不這樣做

的sqlcmd -i -Sservername C:\垃圾\ junk.sql

我沒有一個本地的默認實例正在運行 - 大概如果你有一個本地的默認實例運行,那就沒有問題了。

**然後在junk.sql,你可以做以下

:連接服務器名

注意,這不是

:連接-Sservername

希望這有助於!

相關問題