【问题标题】:VB6 connectivity with oracle on windows 10VB6 在 Windows 10 上与 oracle 的连接
【发布时间】:2018-12-17 08:09:35
【问题描述】:

我在 windows 10 上安装了 vb6 和 oracle 11 g 客户端(instantclient_11_2)。 我创建了一个 odbc 连接,现在尝试连接 oracle 数据库,但在使用 vb6 表单连接数据库时出现错误。

错误:“尝试检索错误 ORA-01019 的文本时出错”

我正在使用如下连接字符串:

sconnstring = "DRIVER={Microsoft ODBC for Oracle};SERVER = servername;uid = user id;pwd= password}"

【问题讨论】:

  • 您尝试在当前的 Windows 上使用 20 年前的语言和 25 年前的 ODBC 驱动程序(两者都已弃用多年)?更改为当前技术,然后它将起作用。至少您应该使用 Oracle 的 ODBC 驱动程序而不是 Microsoft 驱动程序。
  • 你设置ORACLE_HOME环境变量了吗?
  • Oracle 数据库服务器的版本是多少?
  • @Wernfried Domscheit 环境变量已经设置,oracle 数据库服务器是 Oracle 11 g,我安装了 oracle 客户端 (instantclient_v11)

标签: oracle vb6 odbc


【解决方案1】:

创建 ODBC 连接时使用 ODBC 32 ...在 windows\sysWow 下

【讨论】:

  • 驱动程序“Microsoft ODBC for Oracle”仅适用于 32 位。甚至不可能意外使用 64 位。
  • 我用的是 32 但只有
【解决方案2】:

Microsoft ODBC 驱动程序“Microsoft ODBC for Oracle”是 deprecated 很长时间了,你不应该再使用它了。

Instant Client Downloads for Microsoft Windows 32-bit 下载并安装“ODBC 包”,然后它应该可以工作了。

【讨论】:

  • 目前我使用的是即时客户端版本 11,它应该也可以工作,实际上我们在 windows 7 上尝试了这个版本 11,它在那里工作,但现在在 windows 10 上,它给出了上述错误。
  • 你混合了一些观点。 Microsoft(!) ODBC 驱动程序不适用于 Windows 10 中的 Oracle Client 11。但是,Oracle ODBC 驱动程序 11 也适用于 Windows 10。请注意,默认情况下,Oracle InstandClient 不包含 ODBC 驱动程序。前段时间我们进行了许多测试,但我不记得每一个结果。最后,我们在新的 Windows 10 机器上安装了 12.1 版,以获得对我们所有数据库和应用程序的最大兼容性。
  • 我已经安装了 12.1 版 oracle 即时客户端并解决了 odbc 连接问题,现在我需要再次检查 vb 代码
  • @VimalSingh 连接字符串是什么样的,尤其是驱动程序部分?
【解决方案3】:

Microsoft odbc 的即时客户端不适用于 Windows-10 操作系统。 然后在这种情况下,对于 windows-10,我们需要使用 Oracle ODBC 客户端 12 版本进行 odbc 连接。它对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-15
    • 2019-01-30
    相关资源
    最近更新 更多