【问题标题】:how do i retrieve data from SQLite to VB6?如何从 SQLite 检索数据到 VB6?
【发布时间】:2010-09-15 07:12:33
【问题描述】:

我使用 SQLite3 ODBC 驱动程序作为我的连接字符串,

Dim conn As ADODB.Connection
 Set conn = New ADODB.Connection
Dim rs As New ADODB.Recordset

Set conn = New ADODB.Connection
conn.ConnectionString = "DRIVER=SQLite3 ODBC Driver;Database=test.db;LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;"

conn.Open

rs.Open "select * from Artists", conn, adOpenDynamic, adLockOptimistic
MsgBox rs.Fields(0)

【问题讨论】:

  • 我总是收到此错误:运行时错误'-2147217887 (800e21)':ODBC 驱动程序不支持请求的属性
  • 如果错误提示“ODBC 驱动程序不支持请求的属性”,我猜是 ODBC 驱动程序不支持请求的属性...

标签: sqlite vb6 odbc ado connect


【解决方案1】:

有关连接字符串属性,请参阅此处: http://www.connectionstrings.com/sqlite

您还应该指定版本(3 或 2)。

编辑:尝试删除:LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0 并添加版本:version=3 如果它有效,请尝试一次添加一个属性,直到它不再有效,以识别损坏的属性。

【讨论】:

  • 我已经浏览过那个网站,我的连接字符串不正确吗?请帮忙。感谢您的回复。
  • 是的,它有效!我还测试每个属性,直到它变为:“DRIVER=SQLite3 ODBC Driver;Database=test.db;LongNames=0;Timeout=1000;NoTXN=0;SyncPragma=NORMAL;StepAPI=0;version=3;”但我工作正常,我很困惑这个连接字符串会发生什么。
  • version=3 肯定会被忽略。您正在使用SQLite*3* ODBC Driver,因此版本是驱动程序名称的一部分。使用 Database 的完整路径名,否则会根据您当前的工作目录冒随机失败的风险。
【解决方案2】:

这些是SQLite3 ODBC Driver 的可用连接字符串选项

Description=
Database=<<file_name>
Timeout=
StepAPI=0
SyncPragma=
NoTXN=0
ShortNames=0
LongNames=0
NoCreat=0
NoWCHAR=0
FKSupport=0
LoadExt=

我刚刚创建了一个系统 DSN,并在注册表中查看了 HKLM\SOFTWARE\ODBC\ODBC.INI\&lt;&lt;my_dsn_here&gt;&gt;

【讨论】:

    猜你喜欢
    • 2019-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-20
    • 2020-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多