首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Groovy Oracle XMLTYPE

Groovy Oracle XMLTYPE
EN

Stack Overflow用户
提问于 2021-08-17 17:39:54
回答 1查看 68关注 0票数 0

我在甲骨文里有个程序看起来是这样的。

代码语言:javascript
复制
        PROCEDURE p_main_xml (p_term       IN     VARCHAR2
                         , p_crn        IN     VARCHAR2 DEFAULT NULL
                         , p_pin        IN     VARCHAR2 DEFAULT NULL
                         , p_hash       IN     VARCHAR2 DEFAULT NULL
                         , p_updated    IN     VARCHAR2 DEFAULT NULL
                         , p_xml_clob      OUT xmltype)

我试图从grails应用程序中调用它并获取XML。其结果约为8兆克。

我的电话看起来像这样。

代码语言:javascript
复制
            sql.call '{call cl_sectiondownload_pk.p_main_xml(?,?,?,?,?,?)}', [termCode, crn, pin, hash, updated, java.sql.Types.SQLXML], { p_xml_clob ->
                //println "this is my sql: " + p_json
                xmlOut = p_xml_clob
            }

我从Oracle那里得到了这个错误。

调用“P_MAIN_XML”中的参数数目或类型错误

详细信息:

  • Grails版本: 4.0.10
  • JVM版本:11.0.2
  • Oracle12.1.0.2.0
EN

回答 1

Stack Overflow用户

发布于 2021-08-18 02:54:49

oracle中的XML是非常特定的对象。

不幸的是,现在还没有甲骨文,但是像这样的东西应该能起作用

代码语言:javascript
复制
sql.call('''
    DECLARE
        x XMLTYPE;
    BEGIN
        cl_sectiondownload_pk.p_main_xml(?,?,?,?,?,x);
        ?:=x.getCLOBVal();
    END;
''', [.., sql.VARCHAR]){x-> ... }

也许用sql.VARCHAR代替sql.CLOB

假设sqlgroovy.sql.Sql的一个实例

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

https://stackoverflow.com/questions/68821818

复制
相关文章

相似问题

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