我的VBA代码连接到Sqlite数据库
Sub LoadValues()
Dim conn As Object, rst As Object
Set conn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")
' OPEN CONNECTION
'Am getting Error at this line
conn.Open "DRIVER={Microsoft.ACE.OLEDB.12.0 (*.db, *.accdb)};DBQ=E:\VBA_Project_Demo\Demo\demo.db;"
strSQL = "SELECT * FROM test "
' OPEN RECORDSET
rst.Open strSQL, conn
' OUTPUT TO WORKSHEET
Worksheets("results").Range("A1").CopyFromRecordset rst
rst.Close
' FREE RESOURCES
Set rst = Nothing: Set conn = Nothing
End Sub
答案 0 :(得分:1)
为了连接SQLite,您可以从(或其他来源)下载ODBC驱动程序。 http://www.ch-werner.de/sqliteodbc/
然后修改连接。
希望有帮助。
Sub LoadValues()
Dim conn As Object, rst As Object
Set conn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")
' OPEN CONNECTION
conn.Open "DRIVER=SQLite3 ODBC Driver;Database=c:\mydb.db;LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;" 'Am getting Error at this line
strSQL = "SELECT * FROM test "
' OPEN RECORDSET
rst.Open strSQL, conn
' OUTPUT TO WORKSHEET
Worksheets("results").Range("A1").CopyFromRecordset rst
rst.Close
' FREE RESOURCES
Set rst = Nothing: Set conn = Nothing
End Sub
答案 1 :(得分:0)
使用 32 位 odbc 驱动程序。 64位不兼容