【发布时间】:2018-03-31 21:54:06
【问题描述】:
我正在按照question 的答案使用 ADO 从 VBA 连接到 .db 文件。我的代码连接正确,但它没有从表中检索正确的数据。在我的表中,我有几列,第一列是 INT,第二列是 TEXT,其余的都是 INT。
Dim conn As Object, rst As Object
Dim strSQL As String
Set conn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")
conn.Open "DRIVER=SQLite3 ODBC Driver;Database=C:\Path\To\SQLite\Database.db;"
strSQL = "SELECT * from paston"
rst.Open strSQL, conn
Sheets("sheet2").Range("A1").CopyFromRecordset rst
rst.Close
Set rst = Nothing: Set conn = Nothing
问题是当我在工作表上全选时,我只得到第一列idx,如果我只选择 TEXT 列,它不会输出任何内容,如果我选择任何其他列,它将检索数字为整数,但它们是长整数,
【问题讨论】:
-
在 SQL 语句中实际命名列或仅使用表名是否有帮助?
-
@MP24 不,如果我选择单列也无济于事