我正在尝试使用代码将vb.net(Visual Studio 2013)连接到MS Access Database 2007(.accdb)。但是我的代码出了点问题,我无法理解。
数据库名称为“localDatabase.accdb”
我没有在我的数据库上输入任何密码
我正在使用64位
提前致谢!
这是我的代码:
Module Module1
Dim conn As New System.Data.Odbc.OdbcConnection
Public Sub ConnectToOdbc()
conn.ConnectionString = Provider=Microsoft.ACE.OLEDB.12.0;Data Source="C:\Users\MyPc\Documents\Visual Studio 2013\Projects\database\localDatabase.accdb"
Try
conn.Open()
Catch ex As Exception
MessageBox.Show("Failed to connect to data source")
Finally
conn.Close()
End Try
End Sub
End Module
答案 0 :(得分:1)
这只是一个假设..
我现在在我的应用程序上使用ACE 12.0,它工作正常。不同的是代码尝试使用这个..
Imports System.Data.OleDb
'instead of obdc
con = New OleDbConnection
con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source = " & Path.Combine(Application.StartupPath, "YourDatabase.accdb")
'put your .accdb in your app folder
可能是错误是找不到你的.accdb文件。
答案 1 :(得分:0)
更改此行:
conn.ConnectionString = Provider=Microsoft.ACE.OLEDB.12.0;Data Source="C:\Users\MyPc\Documents\Visual Studio 2013\Projects\database\localDatabase.accdb"
到此:
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\MyPc\Documents\Visual Studio 2013\Projects\database\localDatabase.accdb"
ConnectionString作为名称tell是一个字符串,因此您需要用双引号将其包装起来,以便VB编译器将其识别为字符串。
更新:
您还需要将连接对象从Odbc更改为OleDb:
Dim conn As New System.Data.OleDb.OleDbConnection