【问题标题】:Error while trying to retrieve text for error ORA-01019 in VB6尝试在 VB6 中检索错误 ORA-01019 的文本时出错
【发布时间】:2022-04-28 06:15:29
【问题描述】:

尝试连接到 oracle 数据库时,我在 vb6 上遇到此错误,调试将我置于这一行,oracon.Open,这是我的连接字符串。

Provider=MSDAORA.1;User ID=user;Password=pwd;Data Source=orcl;Persist Security Info=False

我在安装 Oracle DataAccess for .NET 时开始收到此错误,因为 .NET Framework 4 及更高版本不再支持 System.Data.OracleClient

我在 .NET 中开发的程序仍然可以正常工作,即使是在 Visual Studio 2008/.NET Framework 3.5 中使用 System.Data.OracleClient 开发的旧程序也是如此。但是当我打开一些用 vb6 开发的遗留系统时,我得到了这个错误。

编辑:oracle 服务器是 11gr2,我在 pc 上安装的第一个客户端是 11gr1。我安装的 Oracle DataAccess 版本是最新的,大约是 12...忘记了确切的版本

【问题讨论】:

  • 是的,正如 C-Pount Guru 所建议的,这是一个家庭问题。当您安装 ODP 来替换 System.Data.OracleClient 时,它可能会创建一个新的 ORACLE_HOME 环境变量。检查可能的重复项以获得最可能的解决方案。

标签: oracle oracle11g vb6


【解决方案1】:

这来自于在 32 位 Oracle 客户端之后安装 64 位客户端

当您为 .NET 安装 Oracle DataAccess 时,它更改了 PATH 环境变量,将新的 64 位 oracle 客户端放在旧的 32 位 oracle 客户端之前。

  1. 在开始栏中,搜索“Env”
  2. 打开“编辑系统环境变量”
  3. 点击“环境变量”按钮。
  4. 从“系统变量”列表中选择“PATH”并按编辑
  5. 重新排列路径变量,使 32 位 oracle 的原始路径位于新 64 位 oracle 的路径之前。
  6. 确保您的 tnsnames.ora 和 sqlnet.ora 在这两个位置。

这应该使 32 位和 64 位应用程序一起工作。

【讨论】:

    猜你喜欢
    • 2012-09-15
    • 1970-01-01
    • 2021-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多