问题描述
我想从oracle存储过程返回CLOB数据类型 (XML数据) 的输出参数。
我的程序看起来像这样
创建或替换过程myProcedure
(
myParam1的数量
,myParam2的数量
,我的param3 OUT CLOB
) 作为xml_bits CLOB;
开始
选择xml_bits中的xmldataColumn
从myTable中,其中id = myParam1和SESSION_ID = myParam2;
IMPCPM_XML := xml_bits;
结束myProcedure;
我编译了这个,当我尝试执行时,它给了我以下错误。
精确获取返回的行数超过请求的行数
如何将大XML数据作为out param返回?
提前谢谢。
我的程序看起来像这样
创建或替换过程myProcedure
(
myParam1的数量
,myParam2的数量
,我的param3 OUT CLOB
) 作为xml_bits CLOB;
开始
选择xml_bits中的xmldataColumn
从myTable中,其中id = myParam1和SESSION_ID = myParam2;
IMPCPM_XML := xml_bits;
结束myProcedure;
我编译了这个,当我尝试执行时,它给了我以下错误。
精确获取返回的行数超过请求的行数
如何将大XML数据作为out param返回?
提前谢谢。
专家解答
您的过程没有任何问题-导致问题的是数据 (和参数)
PLSQL中的任何select-into都必须从数据库中获取 * single *,否则将出现错误。
SQL> create table mytable 2 (id int, session_id int, xmldataColumn clob ); Table created. SQL> SQL> insert into mytable values (1,1,'blahblah '); 1 row created. SQL> SQL> create or replace PROCEDURE myProcedure 2 ( 3 myParam1 IN NUMBER 4 ,myParam2 IN NUMBER 5 ,myParam3 OUT CLOB 6 ) AS 7 xml_bits CLOB; 8 BEGIN 9 select xmldataColumn into xml_bits 10 from myTable WHERE id = myParam1 AND SESSION_ID = myParam2; 11 12 myParam3 := xml_bits; 13 14 END; 15 / Procedure created. SQL> SQL> variable c clob SQL> exec myProcedure(1,1,:c); PL/SQL procedure successfully completed. SQL> print c C --------------------------------------------------------------------------------blahblah SQL> SQL> insert into mytable values (1,1,'blahblah '); 1 row created. SQL> exec myProcedure(1,1,:c); BEGIN myProcedure(1,1,:c); END; * ERROR at line 1: ORA-01422: exact fetch returns more than requested number of rows ORA-06512: at "MCDONAC.MYPROCEDURE", line 9 ORA-06512: at line 1复制
PLSQL中的任何select-into都必须从数据库中获取 * single *,否则将出现错误。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
710次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
639次阅读
2025-04-15 17:24:06
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
555次阅读
2025-04-20 10:07:02
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
502次阅读
2025-04-22 00:13:51
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
497次阅读
2025-04-17 17:02:24
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
492次阅读
2025-04-22 00:20:37
一页概览:Oracle GoldenGate
甲骨文云技术
473次阅读
2025-04-30 12:17:56
火焰图--分析复杂SQL执行计划的利器
听见风的声音
424次阅读
2025-04-17 09:30:30
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
374次阅读
2025-04-15 14:48:05
OR+DBLINK的关联SQL优化思路
布衣
364次阅读
2025-05-05 19:28:36