0

我正在做一个实验项目,并在尝试将 microsoft access 数据库连接到我的程序时遇到问题,visual basic 2008 express并在尝试建立连接时不断收到以下消息。

“'Microsoft.Jet.OLEDB.4.0C:\Users\lewis\Documents\programming\programs\cadet 存储 program\squadron 存储系统 V1.1\squadron 存储系统 V1.1\stores database\213 中队stores.mdb'提供程序未在本地计算机上注册。”

经过一些研究,我发现可能存在问题,因为我使用的是 64 位操作系统和 32 位软件。任何帮助或建议我将不胜感激

这是我目前正在尝试使用的方法:

Dim con As New OleDb.OleDbConnection
    Dim dbProvider As String
    Dim dbSource As String

    dbProvider = "Provider=Microsoft.Jet.OLEDB.4.0"
    dbSource = "C:\Users\lewis\Documents\programming\programs\cadet stores program\squadron stores system V1.1\squadron stores system V1.1\stores database\213 squadron stores.mdb"

    con.ConnectionString = dbProvider And dbSource
    con.Open()

我现在重新编写了如下所示的语法:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    Dim con As New OleDb.OleDbConnection
    Dim connString As String

    connString = "Provider = Microsoft.Jet.OLEDB.4.0;"
    connString &= "C:\Users\lewis\Documents\programming\programs\cadet stores program\squadron stores system V1.1\squadron stores system V1.1\stores database\213 squadron stores.mdb;"
    con.ConnectionString = connString

    con.Open()

    MessageBox.Show("Conection open")

End Sub

但是我现在收到以下错误消息:

“初始化字符串的格式不符合从索引 35 开始的规范。”

连接现在可以正常工作了,非常感谢您的帮助

非常感谢

刘易斯

4

1 回答 1

0

这是错误的:

' And does not concatenate strings
con.ConnectionString = dbProvider And dbSource

你的意思可能是:

con.ConnectionString = dbProvider & ";" & dbSource

或者

connString = "Provider=Microsoft.Jet.OLEDB.4.0; "   ' end with a ;
connString &= "Data Source = C:\Users\lewis..."

con.ConnectionString = connString   

I am using a 64 bit operating system with 32 bit software如果这意味着您的项目是 32 位的,那么您应该没有问题,但有关在 64 位模式下使用 OLEDb 4.0 的信息,请查看此处

于 2013-10-29T13:53:37.380 回答