2013-11-27 140 views
0

我正嘗試使用VB.NET連接到本地安裝的SQL Server 2012 Express實例。我已經能夠成功連接到使用拖和下降的連接工具,這給了我這個連接字符串的數據庫:從VB.NET連接到SQL Server Express 2012(Express)難度

Data Source=mycomputername\sqlexpress;Initial Catalog="my space containing database name";Integrated Security=True 

我能成功地測試此連接。現在,我想填充在這個數據庫表中的數據網格,所以在「根」(你到底叫這個地方?)項目,我有:

Imports System.Data 
Imports System.Data.SqlClient 

和表單定義(在任何事件處理程序之前)我有

Private cn As New SqlConnection("Data Source=mycomputername\sqlexpress;Initial Catalog=[my space containing database name];Integrated Security=True;") 
Private da As New SqlDataAdapter("select * from MyTable", cn) 
Private ds As New DataSet 
Private cmb As New SqlCommandBuilder(da) 

而這就是火車熄火的地方。我得到的錯誤:

Cannot open database "MyDatabase" requested by the login.
The login failed. Login failed for user 'MyLogin'.

我已經確保SQL Server Express有遠程登錄複選框選中,並試圖在連接字符串其他變化,但沒有運氣。想法非常讚賞。

回答

0

您使用的是ASP.NET嗎?有可能您的應用程序在不同於您的Visual Studio的用戶下運行(Integrated Security使用您的Windows身份驗證,基於您的應用程序正在模擬的用戶 - 在Web應用程序中,通常是像NETWORK SERVICE這樣的人)。您只需將該用戶添加爲SQL服務器和數據庫的用戶之一即可。

編輯:我現在看到它。 '\ s'是一個字符串中的特殊字符。 以此作爲您的連接字符串:

"Data Source=mycomputername\\sqlexpress;Initial Catalog=[my space containing database name];Integrated Security=True;" 

編輯:沒有,是我不好,你用VB,這種逃避的在C#中使用。

+0

我正在VB.NET中製作一個Windows窗體應用程序,所以我不知道這是否適用 - 錯誤消息給出了我的正確登錄,因爲無法連接,所以我認爲那部分是好的 – MrBill

+0

@MrBill:您可以使用Management Studio連接到數據庫嗎? – Luaan

+0

是的,沒有麻煩 – MrBill

相關問題