2013-11-24 132 views
1

jdbc:sqlserver:// localhost:1433; Data Source =(local);初始 Catalog = MarketDataDB;用戶ID =安德魯; Password = mypassword;(JDBC)SQL Server連接字符串:用戶登錄失敗''

以上是我用來連接到使用JDBC一個SQL Server 2008 R2 Express數據庫連接字符串,但產生這個錯誤:

用戶登錄失敗「」

任何想法?

我可以使用指定的用戶名和密碼從SQL Server Management Studio內成功連接到數據庫。我使用SQL Server身份驗證

回答

0
jdbc:sqlserver://localhost\[InstanceName???]:1433;Data Source=(local); InitialCatalog=MarketDataDB; 
User Id=andrew; Password=mypassword; 

你在你的字符串缺少實例名稱試試這個

jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]] 
+0

這是一個本地數據庫,實例名稱是什麼? – user3029269

+0

LocalHost是服務器所在的位置名稱,實例名稱是連接服務器時使用的名稱,如果只安裝了一個實例,則一臺服務器可以有多個Sql Server實例,而不是默認實例名稱LocalHost \ MSSQLSERVER –

+0

當您使用SSMS連接到此sql服務器時,必須使用類似Localhost \ MSSQLSERVER或。\ MSSQLSERVER的東西,無論您在連接到此實例的反斜槓後輸入的是您的實例名稱。 –

0

1433是SQL Server,不是的SQLExpress的默認端口。默認情況下,SQLExpress使用動態分配的端口號。您可以使用配置管理器小程序進行檢查或更改。

我相信你已經意識到SQLExpress的默認安裝完全不能啓用TCP/IP。應用程序可以使用共享內存協議連接到SQLExpress(當然,只能從同一臺機器上)。要使用TCP/IP,您必須在配置管理器中啓用它。啓用TCP/IP後,您必須停止並重新啓動SQLExpress以使新設置生效。

相關問題