首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从node-oracledb向oracleDBH传递BLOB

从node-oracledb向oracleDBH传递BLOB
EN

Stack Overflow用户
提问于 2017-06-20 16:40:54
回答 0查看 571关注 0票数 0

我有如下签名的db包方法

代码语言:javascript
复制
PROCEDURE p_add_rate_tables (p_in IN OUT BLOB, p_message IN OUT VARCHAR2);

现在,为了传递params,我从node-oracledb传递了以下代码

代码语言:javascript
复制
const mergedTrunks = trunks.map(t =>
                `["${t.xxx1}", "${t.xxx2}", "${t.xxx3}"]`
            ).join(', ');
            const buffer = Buffer.from(`[${mergedTrunks}]`);
            const bindvars = {

                p_in: {val: buffer, type: oracledb.BUFFER, dir: oracledb.BIND_INOUT},
                p_message: {type: oracledb.STRING, dir: oracledb.BIND_INOUT}
            };
            return new Promise((resolve, reject) => {
                connection.execute(
                    `
    begin
    ${config.database}.pkg_trunks.p_add_rate_tables (:p_in, :p_message);
    commit;
    end;`,
                    bindvars)

但是,无论我做什么以及我如何处理参数-在数据库端,它们不能被正确地解析回来-我不明白为什么在数据库上,或者至少我们的数据库人员不能。

这不是构造问题-因为如果我将实际的字符串放入oracle utl_raw.cast_to_raw中-那么一切都会完美地工作。

想法?

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44648004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档