2014-01-06 35 views
0

我正在使用SQL Server Compact數據庫(3.5)。我已經瀏覽了本網站(和其他人)關於此問題的每篇文章,但似乎無法找到問題所在。我正在使用Visual Studio 2012,VB.Net。SSCE - 多步OLE DB操作生成錯誤

我的供應商字符串爲:

Dim sqlConn As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.SQLServer.CE.OLEDB.3.5;Data Source=" & My.Application.Info.DirectoryPath & "\pw.sdf" & ";Password=XXXyyy1234;Persist Security Info=True;") 

我的代碼在這一切發生故障的是:

'Create SQL Query 
    Dim SQLString As String = "SELECT * FROM EmailGroups" 

    'Create Dataset, Open Connection 
    Dim dsPWC As New DataSet() 
    Dim OleDbDataAdapter1 As System.Data.OleDb.OleDbDataAdapter = New System.Data.OleDb.OleDbDataAdapter(SQLString, sqlConn) 
    sqlConn.Open() 

和當然,它打破了上。開()。

我選擇從該數據表中選擇,因爲它是一個簡單的。

EmailGroup_UID [INT] [PK] EmailGroup_Name [爲nvarchar] [長度= 50]

我敢肯定,我在這過長時間盯着簡單,不能只見樹木不見森林了,所以我希望有人可以直接拍我:)

在此先感謝。

編輯:此代碼適用於原始MS Access 2007數據庫(accdb)時,所有工作。當然,不同的提供商。而且 - 我沒有導入表格,我手動重新創建。

2日編輯:即時窗口說System.Data.OleDb.OleDbException「類型的第一次機會異常‘’出現在system.data.dll」

+0

你可以嘗試刪除密碼,並堅持從連接字符串安全信息? – Steve

+0

我已經刪除了Persist。我還開始了這件事,忘記了輸入密碼,它'吠叫'我 - 告訴我我需要一個密碼:'指定的密碼與數據庫密碼不匹配' –

回答

1

您應該使用的SqlCeConnection而不是OldDbConnection。

如果你必須使用的OleDbConnection,使用「SSCE:數據庫密碼」,例如:

"Provider=Microsoft.SQLServer.CE.OLEDB.3.5;Data Source=" & My.Application.Info.DirectoryPath & "\pw.sdf" & ";SSCE:Database Password=XXXyyy1234;Persist Security Info=True;" 
相關問題