将对象作为输入参数传递给节点 js 中使用 node-oracledb 的存储过程



我有一个存储过程,它接受两个输入参数并给出一个输出参数。
输入参数一个是甲骨文自定义类型,第二个是 CHAR 类型 输出参数为数字类型

PROCEDURE SOMEPROCEDURE(
P_REC IN RV_SEARCH_CRITERIA_REC,
V_ITEM_BATCH_ID_FLAG IN CHAR,
V_RV_BATCH_ID OUT NUMBER)
here RV_SEARCH_CRITERIA_REC is 
TYPE RV_SEARCH_CRITERIA_REC IS OBJECT(
CUSTOMER_NAME   VARCHAR2(3000)
)

有人可以帮助我访问节点-预言机节点模块的过程吗?

给定此过程:

CREATE OR REPLACE PROCEDURE myproc (id IN NUMBER, name OUT VARCHAR2) AS
BEGIN
SELECT last_name INTO name FROM employees WHERE employee_id = id;
END;

您可以使用以下代码执行它:

. . .
connection.execute(
"BEGIN myproc(:id, :name); END;",
{  // bind variables
id:   159,
name: { dir: oracledb.BIND_OUT, type: oracledb.STRING, maxSize: 40 },
},
function (err, result) {
if (err) { console.error(err.message); return; }
console.log(result.outBinds);
});

尝试通过替换过程名称、参数和绑定以相同的方式执行您的

。在此处查看文档:https://oracle.github.io/node-oracledb/doc/api.html

最新更新