`
itsnack
  • 浏览: 39529 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

Oracle PL/SQL过程调试的输出方法

阅读更多

 

 

 

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中,解除了这个限制,可以输出任意大小的字符串。

 

 

 

declare
output varchar2(200);
begin
output:='...'; //赋值
DBMS_OUTPUT.PUT_LINE(output);
end;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.使用表的方法。

首先建立一张表,然后在PL/SQL中将要输出的内容插到表中。然后再从表中查看内容。对于这种方法一次可以输出几千个字符。

 

(1) create table my_output{
id number(4),
txt varchar2(4000)  
);
(2) declare
output varchar2(4000);
strSql varchar2(4500);
count number(4):=0;
begin
strSql:='delete * from my_output';
EXECUTE IMMEDIATE strSql;

output:='...'; //赋值
count:=count+1;
strSql:='Insert into my_output value (count,'''||output||''')';
--''在单引号中相当于字符'
EXECUTE IMMEDIATE strSql;
end;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.使用输出文件的方法。

如果变量非常大,以致连使用表都没有办法插入时,只有使用文件方式了。

 

(1) create or replace directory TMP as 'd:\testtmp';
--建立一个文件夹路径
(2) declare
file_handle UTL_FILE.FILE_TYPE;
output varchar2(30000);
begin
output:="....";
file_handle := UTL_FILE.FOPEN('TMP', 'output.txt', 'w',[1-32767]);
--四个参数:目录,文件名,打开方式,最大行数(默认为2000)
UTL_FILE.PUT_LINE(file_handle, output);
UTL_FILE.FCLOSE(file_handle);
exception
WHEN utl_file.invalid_path THEN
raise_application_error(-20000, 'ERROR: Invalid path for file or path not in INIT.ORA.');
end;

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    Oracle PL/SQL程序设计(第5版)(上下册)

    - **调试与故障排除**:介绍调试PL/SQL代码的方法,包括使用调试器和日志记录等。 - **存储过程的最佳实践**:分享编写高质量、可维护的存储过程的最佳实践,如使用注释、遵循命名约定等。 - **与Java和其他编程语言...

    oracle10g_pl/sql

    Oracle 10g PL/SQL 是Oracle数据库系统中用于创建和管理存储过程、函数、触发器等数据库对象的编程语言。本教程旨在为初学者提供一个全面的学习平台,同时也为经验丰富的开发者提供参考资料。PL/SQL是Oracle特有的...

    Oracle PL/SQL by Example(4th Edition)

    《Oracle PL/SQL by Example(4th Edition)》是一本专为Oracle数据库用户设计的PL/SQL编程指南,尤其适合那些希望通过实践学习这一强大的过程式语言的开发者。本书的第四版详细介绍了Oracle PL/SQL的各种核心概念和...

    《精通Oracle PL/SQL》源码

    Oracle PL/SQL是一种强大的编程语言,它结合了SQL(结构化查询语言)的数据库操作能力和PL(过程化语言)的程序设计特性,是Oracle数据库系统中的核心组件之一。《精通Oracle PL/SQL》这本书深入探讨了这个语言的...

    Oracle PL/SQL编程及最佳实践

    Oracle PL/SQL 是一种高级编程语言,用于开发 Oracle 数据库中的存储过程、函数和触发器。PL/SQL language 提供了强大的编程能力,可以实现复杂的业务逻辑,并且与 Oracle 数据库紧密集成。 一、Oracle 简介 ...

    oracle pl/sql最佳实践

    利用PL/SQL调试器或第三方工具进行调试,找出程序错误。 通过遵循这些Oracle PL/SQL的最佳实践,您可以构建高效、稳定且易于维护的数据库应用程序。持续学习和实践,不断提升自己的技能,是成为优秀Oracle PL/SQL...

    oracle pl/sql fundamentals

    通过这个Oracle PL/SQL Fundamentals教程,学员将具备编写和调试高效、可靠PL/SQL代码的能力,从而更好地管理和维护Oracle数据库系统。这个培训不仅适合初学者,也对有经验的数据库管理员和开发者具有很高的参考价值...

    Oracle PL/SQL程序设计(第5版)示例代码

    通过仔细研究这些示例代码,读者可以加深对Oracle PL/SQL的理解,学习如何有效地编写和调试PL/SQL代码,以满足实际项目需求。此外,理解这些示例也将有助于准备Oracle相关的认证考试,如OCP(Oracle Certified ...

    ORACLE PL/SQL804+中文补丁

    "plsqldev804.exe"可能是Oracle PL/SQL Developer的安装程序,这是一个用于编写、调试和管理PL/SQL代码的集成开发环境(IDE)。而"plsqldev-8-chinese.exe"则是该工具的中文版,方便中国用户使用,提供中文界面和...

    Oracle PL/SQL常用47个工具包

    Oracle PL/SQL是一种强大的编程语言,它将SQL与过程编程语言的功能结合起来,为数据库管理和开发提供了丰富的工具。在Oracle环境中,PL/SQL是构建高效、可靠应用程序的关键组件。以下是对"Oracle PL/SQL常用47个工具...

    PL/SQL Developer 远程连接Oracle数据库

    PL/SQL Developer是一款专为Oracle数据库设计的集成开发环境,它极大地简化了PL/SQL语言的编写、调试和管理任务。远程连接Oracle数据库是PL/SQL Developer的一项关键功能,允许用户在本地计算机上操作和管理远程...

    精通Oracle_PL/SQL

    全书涵盖了 PL/SQL提供的大量功能,包括高效数据处理、安全、触发器、DBA包以及高效的调试技术等。此外,书中含有丰富的示例,并提供了大量提示和技巧。《精通Oracle PL/SQL》结构清晰,示例丰富,实践性强,适用于 ...

    Oracle PL/SQL程序设计(第5版)

    Oracle PL/SQL是一种过程化语言扩展,用于Oracle数据库中的SQL。它允许开发者编写出结构化和模块化的代码,以解决数据库开发中遇到的问题。《Oracle PL/SQL程序设计(第5版)》是基于Oracle数据库11g版本,该书的...

    pl/sql最新中文手册

    PL/SQL是Oracle数据库系统中的一个关键组成部分,它是一种过程化语言,专为数据库操作设计。这个"PL/SQL最新中文手册"显然是一份详细解释PL/SQL 7.0版本的指南,对于学习和精通Oracle数据库编程至关重要。以下是手册...

    PL/SQL下载

    PL/SQL是Oracle数据库系统中的一个关键组成部分,它是一种结合了SQL语言与过程编程的语言,专为数据库管理和应用程序开发设计。PL/SQL全称为“Procedural Language/Structured Query Language”,它提供了丰富的控制...

    ORACLE8 PLSQL程序设计_sql_code.zip_oracle pl/sql_pl sql code_pl/sql_

    Oracle PL/SQL是一种强大的编程语言,它将关系数据库的强大功能与高级编程语法相结合,用于在Oracle数据库环境中构建复杂的业务逻辑和应用程序。Oracle8是PL/SQL的一个早期版本,尽管现在可能已经更新到了更高版本,...

    一个对数据库的操作工具PL/SQLpl/sqL工具

    PL/SQL是Oracle公司开发的一种过程化语言,全称为Procedural Language/Structured Query Language,它是SQL的一个扩展,专门用于处理Oracle数据库系统。这个“PL/SQL工具”显然是一个用于辅助管理和操作Oracle数据库...

    Oracle PL/SQL Training

    Oracle PL/SQL是Oracle数据库系统中的过程式编程语言,它扩展了SQL的语法,使得开发者能够编写复杂的数据库应用程序。在本培训资料中,我们将深入学习PL/SQL的基础知识及其应用,帮助你掌握如何利用PL/SQL解决问题并...

    Learning Oracle PL_SQL

    对于初学者来说,如何入门Oracle的过程语言并不总是显而易见的,特别是考虑到其庞大的功能集和官方文档的规模(更不用说Oracle不断增长的预构建PL/SQL程序数量)。但《学习Oracle PL/SQL》一书提供了必要的指引和...

    Oracle PL/SQL 帮助文档

    这个"Oracle PL/SQL 帮助文档"是Oracle官方提供的重要参考资料,用于帮助用户理解和掌握PL/SQL的各种概念、语法、函数以及过程。 在PL/SQL开发环境中,当遇到不熟悉的概念或者需要查询特定函数用法时,通常可以通过...

Global site tag (gtag.js) - Google Analytics