2013-01-07 138 views
26

我剛安裝了SQL Server 2008,我想用命令編輯器來執行查詢。如何將Sqlcmd連接到服務器?

爲了做到這一點,我打開命令提示符下,我輸入

Sqlcmd -S Serverinstance 

但我得到了一個錯誤說:

命名管道提供商:無法打開到SQL Server [連接53。
錯誤:錯誤:Microsoft SQL Server Native Client 10.0:建立到SQL Server的連接時發生網絡相關或實例特定的錯誤。服務器未找到或無法訪問。檢查實例名稱是否正確以及SQL Server是否配置爲允許遠程連接。欲瞭解更多信息,請參閱SQL Server聯機叢書..
SQLCMD:ERREUR:Microsoft SQL Server本機客戶端10.0:登錄超時過期

我應該怎麼做才能得到它連接到服務器,所以我可以繼續嗎?

謝謝:D。

+0

你說你在做'SqlCmd -S Serverinstance'。對於本地機器上的命名實例,應該是'SqlCmd -S。\ <實例名稱>'。那是你正在使用的?如果你只是給出一個實例名稱,它會認爲你正在指定一個服務器名稱。 –

回答

0

您指定的服務器無法找到或無法訪問。所以無論服務器是否錯誤(是否拼寫正確)或者沒有正確指定,或者無法從您的機器訪問。

確實如此,您需要爲可信連接指定用戶名/密碼或-E命令限定符。您可能還需要使用-d限定符指定數據庫。

您可以通過鍵入

Sqlcmd -? 
+0

謝謝你的答案,服務器配置正確,我知道,因爲我正在與SQL服務器管理工​​作室,它的工作很好,但對於我來獲取SQL Server查詢我想在命令提示符下編寫查詢所以我可以清楚地瞭解它:D 你可以給我關於如何連接到服務器的命令語法嗎?請 –

+0

你的服務器名稱是什麼?你有可靠的訪問權限,還是使用用戶名/密碼連接數據庫?你的數據庫名稱是什麼? –

+0

實例名稱是'ZAKINSTANCE'?,並且訪問數據庫我使用用戶名:'我的帳戶名',密碼是'我帳戶的密碼'

8

得到幫助你需要要麼使用使用Windows憑據集成安全方法通過指定-E作爲一個選項,以連接到SQL Server:

C:\> SQLCMD -S Serverinstance -E 

或然後你需要定義一個用戶/密碼集來實現SQL Server登錄:

C:\> SQLCMD -S Serverinstance -U (login in) -P (password) 

所有許多SQLCMD參數上MSDN SQL Server Books Online!

+0

根據[MSDN](https://msdn.microsoft.com/en-us/library/ms180944(v = sql.120).aspx),-E選項是默認。沒有必要鍵入它。 –

+0

謝謝,在我的情況下,我需要設置登錄名和密碼。 –

47

充分證明(此人會聽起來很愚蠢)我的問題是,我沒有使用資金「S」

如:

C:\> SQLCMD -S localhost\sqlexpress 
+0

Jebus ....謝謝! – Vedran

+2

對我很好用 –

+0

Jebus是正確的表達! G! –