2015-04-04 191 views
0

我在從C#連接到SQL Server數據庫時遇到問題。C#SQL Server連接問題

返回的異常是指定用戶的登錄失敗,這足夠清楚。但是,我不確定爲什麼它會失敗,因爲用戶名和密碼絕對正確。是否有我需要啓用在SQL Server上,以允許這種情況發生,因爲它是一個默認的快速安裝任何設置,

感謝,

下面是我的連接代碼,如果我失去了任何明顯。

static void Main(string[] args) { 
    try 
    { 
     SqlConnection con = new SqlConnection(@"Data Source = .\SQLEXPRESS;Initial Catalog=furniture_display;User ID=login;Password=login"); 
     con.Open(); 
     Console.WriteLine("all ok"); 
     con.Close(); 
    } 
    catch (SqlException err) 
    { 
     Console.WriteLine(err); 
    } 
} 
+1

連接到SQL Server使用您傳遞在連接字符串即SQL Server用戶ID和密碼的憑據。通過SSMS並執行「S​​ELECT @@ SERVERNAME」。這個查詢返回給我們在連接字符串的數據源屬性中的值。 – 2015-04-04 16:41:05

+0

如果該用戶確實使用這些憑據進行設置,則應該可以工作。你有沒有將數據庫登錄映射到'furniture_display'數據庫?你可以發佈確切的錯誤消息,返回? – Rhumborl 2015-04-04 16:45:13

+0

是Windows用戶還是SQL Server用戶的登錄名和密碼? – ErikEJ 2015-04-04 17:16:37

回答

0

根據您的代碼Data Source = .\SQLEXPRESS,您嘗試連接到本地服務器。如果是這樣,您不需要任何ID密碼。並且要注意使用Catalog,它有點棘手,我討厭它。要知道它是如何工作的,請檢查this

其實我使用這個代碼,它就像一個魅力:

SqlConnection con = new SqlConnection(@"Server = localhost; Database = furniture_display; Integrated Security=True;");