将参数值返回给VBScript

时间:2019-05-08 09:11:21

标签: oracle plsql vbscript

下面是尝试将PL / SQL输出参数的值返回到VBScript的示例。

我的实际需求要复杂得多,但是为了简化并让我能够学习,我只是在尝试返回hello world Proc的值。

请参阅以下示例。

我在本地笔记本电脑数据库上创建的

CREATE OR REPLACE PROCEDURE procOneOUTParameter(outParam1 OUT VARCHAR2)
IS
BEGIN
    outParam1 := 'Hello World OUT parameter';
END;
/

我正在尝试使用VBScript-但收到“错误类型”错误:

Set cn = CreateObject("ADODB.Connection")
cn.Open "Driver={Oracle in XE};Dbq=localhost:1521/xe;User Id=xxx;Password=xxx;"
Set cmd = CreateObject("ADODB.Command")
Set cmd.ActiveConnection = cn
cmd.CommandType = 4
cmd.CommandText = "procOneOUTParameter"
cmd.Parameters.Append cmd.CreateParameter("outParam1", adVarChar, adParamOutput, , outParam1)
cmd.Execute

1 个答案:

答案 0 :(得分:0)

Const adVarChar = 200
Const adParamOutput= 2
Const adCmdStoredProc= 4

Set cn = CreateObject("ADODB.Connection")
cn.Open "Driver={Oracle in XE};Dbq=localhost:1521/xe;User Id=XXX;Password=XXX;"
Set cmd = CreateObject("ADODB.Command")
Set cmd.ActiveConnection = cn
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "procOneOUTParameter"
cmd.Parameters.Append cmd.CreateParameter("@outParam1",adVarChar,adParamOutput,200)
cmd.Execute
getParam = cmd.Parameters("@outParam1").Value
WScript.Echo getParam