在 PowerShell 中通過 SQLCMD 連接到 LocalDB
我正在嘗試使用 SQLCMD 實用程序通過 PowerShell 訪問我電腦上的“localdb\MSSQLLocalDB”伺服器。我正在使用 PowerShell v5、.NET v5.0,伺服器名稱是
(localdb)\MSSQLLocalDB
我在 Microsoft SQL Server Management Studio 2014 中連接到它時的名稱。
PS C:\> sqlcmd -S localdb\MSSQLLocalDB
並PS C:\> sqlcmd -S .\localdb\MSSQLLocalDB
導致此錯誤:Sqlcmd:錯誤:Microsoft ODBC Driver 11 for SQL Server:SQL Server 網路介面:錯誤定位伺服器/指定的實例
$$ xFFFFFFFF $$.
我在 Management Studio 中查詢了伺服器名稱,並在上述命令
SELECT @@ServerName
之後使用了該名稱,並得到了相同的錯誤。-S
PS C:\> sqlcmd -S localdb
給出這個錯誤:Sqlcmd:錯誤:Microsoft ODBC Driver 11 for SQL Server:命名管道提供程序:無法打開與 SQL Server 的連接
$$ 53 $$
其他注意事項:我可以使用以下連接字元串連接到伺服器並在 C# 控制台應用程序中使用名為testdb01的數據庫:
System.Data.SqlClient
"Data Source=(localdb)\\mssqllocaldb;Initial Catalog=testdb01;Integrated Security=SSPI;"
實例名稱的大小寫無關緊要。
你需要嘗試:
sqlcmd -S "(localdb)\MSSQLLocalDB" -d testdb01
“localdb”部分需要括在括號中,因為這是一種特殊語法,它指向 SQL Server Express LocalDB 特定的 API,允許在連接字元串中引用時自動啟動實例。整個實例名稱需要用雙引號括起來。上面顯示的命令行對我有用,至少在 PowerShell 之外。