日期:2014-05-17  浏览次数:21333 次

pl/sqlorcle过程调试CLOB参数输入问题
写了一个存储过程,其中有1个clob类型传入参数,PLSQL Developer 的调试窗口,无法编辑该2参数值,大数据编辑器也不管用。
 
单步调试,发现过程里传入为null,应该怎么做? 

跪求!!!!
orcle? 调试 存储过程

------解决方案--------------------


在clob字段的最右边有一个三个点的 ... 的按钮
你点一下,会弹出一个编辑的对话框,然后在里面就可以输入了
------解决方案--------------------
引用:
贝壳哥,参数 必须是clob,string类型是不行的,这个参数是要传入一个xml的,兄弟我技穷了,无法调试,只能跪求各位大神!!拜托 拜托!给个法子吧!!

CLOB的存储过程别这么TEST,
自己再另写一个TEST的存储过程,并构造好CLOB输入变量,再TEST就可以了。
------解决方案--------------------
引用:
引用:
贝壳哥,参数 必须是clob,string类型是不行的,这个参数是要传入一个xml的,兄弟我技穷了,无法调试,只能跪求各位大神!!拜托 拜托!给个法子吧!!

谢谢 Cryking 兄,你的方法很有效,我已经把数据传入clob 参数,可以调试了!!

另外,我如果想把文件D:\test.xls 传入到clob参数,这要怎么操作?

使用DBMS_LOB.LOADCLOBFROMFILE这个包
------解决方案--------------------
引用:
贝壳哥,参数 必须是clob,string类型是不行的,这个参数是要传入一个xml的,兄弟我技穷了,无法调试,只能跪求各位大神!!拜托 拜托!给个法子吧!!

这个参数是要传入一个xml的?
建议用XML类型字段存储XML数据, Oracle有专用的XML数据类型
------解决方案--------------------
--创建文件所在目录
SQL> create or replace directory PIC_FILE_DIR as '/home1/oracle/pic_file';
SQL> grant read, write on directory PIC_FILE_DIR to piccmsuser;
Directory created.

declare
    fhandle   utl_file.file_type;
    fp_buffer varchar2(4000);
    inp_clob CLOB;
  begin
    fhandle := utl_file.fopen ('PIC_FILE_DIR','example.txt', 'R');
    --这里只读1行供参考,若需读多行,需要做修改
    utl_file.get_line (fhandle , fp_buffer );

    inp_clob := fp_buffer;
    --调用所测试的存储过程
    TResourceImport(Pni_OperatorId => : v_Pni_OperatorId,
                    Psi_LangOId => : v_Psi_LangOId,
                    Pli_DataValueList => :inp_clob)
  end;
/

我的异常网推荐解决方案:oracle存储过程,http://www.aiyiweb.com/oracle-develop/177537.html