DBMS_OUTPUT 包

dbms_output系统包是为了在DM上兼容oracle的dbms_output系统包。提供将文本行写入内存、供以后提取和显示的功能。为用户从oracle移植应用提供方便,功能上与oracle基本一致。

12.1 相关方法

1.DBMS_OUTPUT. DISABLE

禁用DBMS_OUTPUT包。

语法如下:

DBMS_OUTPUT.DISABLE

举例说明

DBMS_OUTPUT. DISABLE(); --禁用DBMS_OUTPUT包

2.DBMS_OUTPUT. ENABLE

启用DBMS_OUTPUT包。

语法如下:

DBMS_OUTPUT.ENABLE (

buffer_size IN INT DEFAULT 20000

)

参数详解

  • buffer_size

参数被忽略,只为兼容oracle语法。

举例说明

DBMS_OUTPUT. ENABLE(); --启用DBMS_OUTPUT包

3.DBMS_OUTPUT . PUT_LINE

输出字符串到缓冲区。如果设置(SET SERVEROUTPUT ON;)语句,可以打印出消息到客户端。

语法如下:

DBMS_OUTPUT.PUT_LINE(

	STR IN VARCHAR

)

参数详解

  • STR

VARCHAR类型。

4.DBMS_OUTPUT.GET_LINE

从缓冲区中读取一行信息。

语法如下:

DBMS_OUTPUT.GET_LINE(

	LINE OUT VARCHAR,

	STATUS OUT INT

)

参数详解

  • LINE

缓冲区中的内容。

  • STATUS

0或1。读取成功返回0,反之为1。

5.DBMS_OUTPUT.PUT

向行缓冲区中写入部分数据。

语法如下:

DBMS_OUTPUT.PUT(

	ITEM IN VARCHAR2

)

参数详解

  • ITEM

向行缓冲区中写入的内容。

6.DBMS_OUTPUT.NEW_LINE

向行缓冲区中放置一个行结束标记。

语法如下:

DBMS_OUTPUT.NEw_LINE()

12.2 举例说明

使用包内的过程和函数之前,如果还未创建过系统包。请先调用系统过程创建系统包。

SP_CREATE_SYSTEM_PACKAGES (1,'DBMS_OUTPUT');

SET SERVEROUTPUT ON; --dbms_output.put_line需要设置这条语句,才能打印出消息

例 放入内容到缓冲区,并从缓冲区中读出

--启用DBMS_OUTPUT包

DBMS_OUTPUT.ENABLE();

--使用put_line和get_line

	declare

	buffer varchar;

	status int;

begin

dbms_output.put_line('达梦数据库有限公司');

dbms_output.get_line(buffer,status);

dbms_output.put_line('BUFFER:'||buffer||' status:'||status);

commit;

end;

--打印结果:BUFFER:达梦数据库有限公司 status:0
微信扫码
分享文档
扫一扫
联系客服