欢迎来到天天文库
浏览记录
ID:32319985
大小:56.30 KB
页数:3页
时间:2019-02-03
《oracleplsql过程调试的输出方法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、1.最基本的DBMS_OUTPUT.PUT_LINE()方法。随便在什么地方,只要是BEGIN和END之间,就可以使用DBMS_OUTPUT.PUT_LINE(output);然而这会有一个问题,就是使用该函数一次最多只可以显示255个字符,否则缓冲区会溢出。此外,函数DBMS_OUTPUT.ENABLE(20000)这种函数,仅仅是设置整个过程的全部输出缓冲区大小,而非DBMS_OUTPUT.PUT_LINE()的缓冲区大小。对于超过255个字符的变量,使用DBMS_OUTPUT.PUT_LINE()方法是没有效的。据说在Oracle10中,解除了这个限制,可以输出任意大小的字符串。d
2、eclareoutputvarchar2(200);beginoutput:='...';//赋值DBMS_OUTPUT.PUT_LINE(output);end;2.使用表的方法。首先建立一张表,然后在PL/SQL中将要输出的内容插到表中。然后再从表中查看内容。对于这种方法一次可以输出几千个字符。(1)createtablemy_output{idnumber(4),txtvarchar2(4000) );(2)declareoutputvarchar2(4000);strSqlvarchar2(4500);countnumber(4):=0;beginstrSql:='delete*
3、frommy_output';EXECUTEIMMEDIATEstrSql;output:='...';//赋值count:=count+1;strSql:='Insertintomy_outputvalue(count,'''
4、
5、output
6、
7、''')';--''在单引号中相当于字符'EXECUTEIMMEDIATEstrSql;end;3.使用输出文件的方法。如果变量非常大,以致连使用表都没有办法插入时,只有使用文件方式了。(1)createorreplacedirectoryTMPas'd:testtmp';--建立一个文件夹路径(2)declarefile_handleUTL
8、_FILE.FILE_TYPE;outputvarchar2(30000);beginoutput:="....";file_handle:=UTL_FILE.FOPEN('TMP','output.txt','w',[1-32767]);--四个参数:目录,文件名,打开方式,最大行数(默认为2000)UTL_FILE.PUT_LINE(file_handle,output);UTL_FILE.FCLOSE(file_handle);exceptionWHENutl_file.invalid_pathTHENraise_application_error(-20000,'ERROR:In
9、validpathforfileorpathnotinINIT.ORA.');end;来源:网络编辑:联动北方技术论坛
此文档下载收益归作者所有