我正在尝试连接到Excel中的SQL ce数据库。它一直给我:
Method Open of object _connection failed
到达Conn.Open
时出现错误消息。
我之前从未使用过ADO,所以我不确定会出现什么问题。
以下是我的连接脚本。
Sub SQLCeConnect()
Dim Conn As New ADODB.Connection
Dim Query As New ADODB.Command
Dim ConnStr As String
Dim RecordSet As New ADODB.RecordSet
Dim i As Integer
'the connection string
ConnStr = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=X:\ADOTEST\MYDB.sdf;"
'Open ADO Connection
Conn.ConnectionString = ConnStr
Conn.Open
Query.ActiveConnection = Conn
Query.CommandText = "SELECT * From DoorLayers"
Set RecordSet = Query.Execute
RecordSet.Close
Conn.Close
Conn.ConnectionString = ""
Do While Not RecordSet.EOF
For i = 0 To RecordSet.Fields.Count - 1
Debug.Print RecordSet.Fields(i).Name, RecordSet.Fields(i).Value
Next
RecordSet.MoveNext
Loop
RecordSet.Close
End Sub
答案 0 :(得分:1)
通常是一个糟糕的连接字符串,但你的看起来很好。下一个最常见的原因是您的桌面上没有OLEDB提供程序驱动程序。你可以在这里下载
http://www.microsoft.com/en-us/download/details.aspx?id=5821
答案 1 :(得分:0)
您是否在 WHILE 上使用之前关闭了连接。 在使用while指令后,您必须将其关闭。