【问题标题】:How to Connect to the Oracle DB using VBscript如何使用 VBscript 连接到 Oracle DB
【发布时间】:2023-04-04 06:29:01
【问题描述】:

到目前为止,我有以下代码

Dim strConnect
Dim adoConnection
Dim adoRecordset
Dim strSQL
Dim strResults
strSQL = "SELECT COUNT(distinct party_id) FROM apps.per_all_people_f"
strConnect = "Provider=OraOLEDB.Oracle.1; Password=pwd; Persist Security Info=True; User      ID=user; Data Source=source; Extended Properties="""
Set adoConnection = CreateObject("ADODB.Connection")
adoConnection.Open strConnect
Set adoRecordset = CreateObject("ADODB.Recordset")
adoRecordset.ActiveConnection = adoConnection 
adoRecordset.Source = strSQL
adoRecordset.Open
Do Until adoRecordset.EOF
        strResults = adoRecordset.Fields(0).Value
        msgbox strResults
        adoRecordset.MoveNext
Loop

adoRecordset.Close
adoConnection.Close

帮助我更正上面需要连接到 Oracle DB 并根据输出数据处理一些步骤的代码。

我收到以下错误消息。

参数类型错误、超出可接受范围或与另一个参数冲突。第 9 行来源:ADODB.Connection

【问题讨论】:

  • 字符串strConnect 看起来引用错误。它的末尾有 2 个尾随双引号。这是故意的吗?您始终可以使用chr(43) 代替" 来帮助使代码可读。
  • 尝试删除扩展属性="" 我收到不同的消息。 “找不到提供程序。它可能没有正确安装。”代码:800A07A。但我已经安装了 ODAC 客户端并配置了 OraTNA 文件。在 Excel 中配置可刷新工作表时,相同的连接也有效。有什么想法吗?
  • 怎么样"Provider=OraOLEDB.Oracle.1; Password=pwd; Persist Security Info=True; User ID=user; Data Source=source; Extended Properties=" & chr(34) & chr(34)
  • 如果您安装了 ODAC,请注意架构。您安装的是 32 位还是 64 位 ODAC?而且,当你双击你的脚本时,它是在 32 位还是 64 位脚本主机上运行的?在 64 位主机上运行的脚本不会看到已注册的 32 位库。
  • strConnect这一行的User ID为什么有空格?是不是笔误?

标签: oracle vbscript


【解决方案1】:

仅供参考,如有错误请指正:

连接数据库的方式:

  1. 检查 ODBC 驱动程序是否可用。
  2. 如果是,请在控制面板的管理工具中创建 DSN(系统 DSN)。
  3. 使用代码: 设置 con=createobject("adodb.connection") con.open "DSN=''"
  4. 执行查询

  1. 检查 ODBC 驱动程序是否可用。
  2. 如果不能做 DSN 然后 转到环境变量,然后设置 Path=""
  3. 使用代码: 设置 con=createobject("adodb.connection") 或 设置 con=createobject("oledb.connection") con.open "Driver={Microsoft ODBC for Oracle};Server=;Uid=your_username;Pwd=your_password;"
  4. 执行查询

希望这会有所帮助。如果我在任何地方错了,请纠正我,因为我还在学习。

【讨论】:

    猜你喜欢
    • 2018-10-19
    • 2016-03-11
    • 1970-01-01
    • 2021-10-21
    • 1970-01-01
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多