【问题标题】:Oracle VBA connection stringOracle VBA 连接字符串
【发布时间】:2021-09-25 11:20:36
【问题描述】:

如何正确建立连接字符串以集成启用宏的 PowerPoint 以查询 Oracle 数据库?我看过很多关于此的旧 youtube 视频和在线教程(主要是在 excel 中),但连接字符串在每个视频中的显示都不同。我使用的是 64 位 Windows 机器和我通常通过 SQL Developer 访问的 Oracle 数据库。

看起来方向正确的参考链接:

http://learnexcelmacro.com/wp/2011/11/oracle-connection-string-in-vba/

我正在尝试使用与服务的连接,所以它应该看起来像这样:

我个人对连接字符串所做的唯一更改是: HOST 是 SQL Developer 实例属性中的 Hostname 创建者 端口是 SQL Developer 实例属性中的端口 Uid 是 SQL Developer 实例属性中的用户名 Pwd 是 SQL 开发者实例属性中的密码

我已将所有其他字段保持不变。需要注意的是,我确实有 Tools>References>Microsoft ActiveX Data Objects 2.8 Library

我了解在 SQL Developer 中,您可以查看数据库实例连接的属性。那里有所有信息来构建我的连接字符串吗?我无法使连接字符串正常工作,并且经常遇到错误。

谢谢!

【问题讨论】:

  • 您遇到什么错误?您是否真的安装了适用于 Oracle 的 Microsoft ODBC 驱动程序?在这个时代,我很难找到在 Oracle ODBC 驱动程序上使用它的理由。您是否安装了完整的 Oracle 客户端?即时客户端?您遇到了什么错误?
  • 请不要粘贴截图,使用格式化文本。见meta.stackoverflow.com/a/285557/3027266

标签: vba oracle oracle-sqldeveloper connection-string plsqldeveloper


【解决方案1】:

有几个驱动程序可用于从 VBA 连接到 Oracle 数据库。

常见的是来自 Microsoft 或 Oracle 或 OLE DB 提供程序的 ODBC 驱动程序。 OLE DB 提供程序也来自 Microsoft 或 Oracle。甚至还有一些来自第 3 方(请参阅 How to connect to Oracle 11 database from . net),但请保持简单。

根据你选择的驱动,连接字符串不同:

  • 来自 Microsoft 的 ODBC 驱动程序:Driver={Microsoft ODBC for Oracle};...
  • 来自 Oracle 的 ODBC 驱动程序:Driver={Oracle in OraClient11g_home1};...(或类似)
  • 来自 Microsoft 的 OLE DB 提供程序:Provider=MSDAORA;...
  • 来自 Oracle 的 OLE DB 提供程序:Provider=OraOLEDB.Oracle;...

详情请看Oracle Connection StringsConnection String Home Page

所有这些驱动程序/提供程序至少需要在您的计算机上安装一个 Oracle Instant 客户端。当您的 PowerPoint 是 32 位时,Oracle 客户端以及驱动程序/提供程序也必须是 32 位。如果您的 PowerPoint 是 64 位,那么所有其他组件也必须是 64 位 - 您不能混合使用 32 位和 64 位。

Microsoft 提供的 Oracle 驱动程序已被弃用多年,它们不适用于 64 位!所以,当你有一个 64 位的 Office 时,{Microsoft ODBC for Oracle}MSDAORA 就出局了。

【讨论】:

    猜你喜欢
    • 2018-07-02
    • 2013-12-14
    • 1970-01-01
    • 1970-01-01
    • 2011-12-06
    • 1970-01-01
    • 2018-03-06
    • 2021-05-02
    • 2016-10-16
    相关资源
    最近更新 更多