【问题标题】:How to deploy Powerbuilder application with ODBC connection?如何使用 ODBC 连接部署 Powerbuilder 应用程序?
【发布时间】:2016-11-07 18:48:26
【问题描述】:

我的应用程序在我制作它的计算机上运行良好,但在另一台计算机上运行良好 机器显示错误:“事务未连接”。 我安装了由 Runtime Packager 创建的包并添加了几个 DLL 到目标机器上的应用程序路径。还是一样 问题。

我的问题是我是否应该使用 dnsless 连接来使其工作? 或者可能通知目标 PC 所需的 ODBC 配置? 如果是 - 怎么做?

我阅读了很多关于 odbc.ini、系统变量、注册表项等的信息。 但现在我把这一切搞混了,不知道该怎么办。

非常感谢您的帮助。

克里斯。

【问题讨论】:

  • 你有没有实例化一个事务对象(SQLCA),设置你的连接参数,然后与之连接?
  • 您连接到哪种类型的数据库?如果是Microsoft SQL Server,以前是需要安装SQL Server Native Runtime。更多信息:slapouttech.blogspot.com/2012/04/…
  • @MattBalent:是的,我做到了,它在我的电脑上运行良好。我正在从 Oracle 数据库(两个不同的服务器)中检索数据。目前,我正在尝试在客户端计算机上添加适当的注册表项,以告知其有关 ODBC 源的信息。问题是我在我的电脑上找不到正确的条目来导出它并在客户端上导入。我希望有一个带有 IP 号码和数据库名称的条目。我在注册表中的 ODBC.INI 中没有看到该信息。
  • 我只是想知道 - 我是否必须在客户端计算机上安装 Oracle ODBC 驱动程序才能启用 ODBC 连接?
  • 我希望您必须在客户端上安装驱动程序。

标签: connection odbc powerbuilder


【解决方案1】:

就个人而言,我使用 DSN。因此,PowerBuilder 唯一知道的就是 DSN 名称。在此基础上,我建立了连接。
在目标 PC 上,我使用相同的 DSN 名称和必要的驱动程序配置 ODBC。这样,您在部署中就有了一定的灵活性。例如,我可以使用 DSN 'db' 进行开发,在我的开发人员的机器上引用数据库 'dev' 或服务器 'server_dev' 并部署在目标机器上,其中 'db' 指的是服务器 'productionServ' 上的 'prod' 数据库。
除了兼容性问题,甚至可能第一个是 MySQL,另一个是 Oracle。
无论如何,安装允许您访问目标计算机上所需数据库的驱动程序至关重要,如果您使用 DSN,则对其进行配置。

【讨论】:

    【解决方案2】:

    既然你说你对 odbc.ini 和注册表感到困惑,那就从那里开始吧。

    假设您的计算机中配置了所需的 ODBC 连接(如您所说),

    • 在您的计算机中打开注册表编辑器(Win+R、regedit)。
    • 转到路径“HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI”。注意:“HKEY_LOCAL_MACHINE”可用于多用户计算机。
    • 右键单击“ODBC 连接”并导出。保存文件 (*.reg)。 (在记事本中打开这个文件会给你一些关于它是如何配置的想法。)
    • 也对“HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.INI\ODBC 数据源\”执行相同的操作。将两个文件合并为一个(在记事本中打开 *.reg 文件并合并文本)。

    现在您可以通过以下选项在目标机器中设置 ODBC:

    1. 此文件(*.reg) 可以在目标机器上执行(注意,目标机器中的驱动程序路径可能不同。)。
    2. 如果您有安装程序,请尝试包含用于从安装程序写入注册表值的代码。
    3. 如果不存在,请使用 PB 函数 RegistrySet() 创建您自己的 ODBC 连接。

    我们正在尝试的简要说明:从开发机器导出注册表项(作为 *.reg 文件)并使用上面列出的 3 种方法中的任何一种在目标机器上创建类似的注册表项。

    【讨论】:

      猜你喜欢
      • 2011-09-07
      • 1970-01-01
      • 1970-01-01
      • 2017-10-24
      • 2011-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多