DBMS_OUTPUT包语法简介及使用小实验
来源:互联网 发布:手机的网络制式参数 编辑:程序博客网 时间:2024/05/22 04:57
DBMS_OUTPUT 包--语法
1、enable:在serveroutput on的情况下,用来使dbms_output生效(默认即打开)
说明:该过程用于激活本包,如果没有被激活,将无法调用本包的其它其余过程和函数。
当调用该过程,缓冲区最大尺寸为1000000字节,最小为2000字节,默认为20000字节。
注意:如果在SQL*PLUS中使用SERVEROUTPUT选项,则没有必要使用该过程。
语法:DBMS_OUTPUT.ENABLE(buffer_size in integer default 20000);
2、disable:在serveroutput on的情况下,用来使dbms_output失效
说明:该过程用于禁止本包,并清除缓冲区的内容。当本包被禁止,将无法调用本包的其它其余过程和函数。
注意:如果在SQL*PLUS中使用SERVEROUTPUT选项,则没有必要使用该过程。
语法:DBMS_OUTPUT.DISABLE;
3、put:put_line:
说明:过程put_line用于将一个完整行的信息写入到缓冲区中,会自动在行的尾部追加行结束符;
过程put则用地分块建立行信息,需要换行需要使用过程new_line追加行结束符。
语法:dbms_output.put(item in number\varchar2\date);dbms_output.put_line(item in number\varchar2\date);
4、new_line:作为一行的结束,可以理解为写入buffer时的换行符
说明:该过程用于在行的尾部追加行结束符。
语法:dbms_output.new_line;
5、get_line:get_lines:get_line之后会将buffer清空
说明:过程get_line用于取得缓冲区的单行信息,get_lins用于取得缓冲区的多行信息。
语法:dbms_output.get_line(line out varchar2,status out integer);
dbms_output.get_lines(lines out chararr,numlines in out integer);
其中line用于取得缓冲区的单行信息(最大255字节),status用于返回过程执行是否成功,0成功1表示没有行;
lines用于取得缓冲区的多行信息,numlines指定要检索的行数,并返回实际检索的行数。
需要注意以下几点:
-----------------------
1、set serveroutput on:如果要在sqlplus中看到dbms_output的输出,则必须设置该参数值为on
2、每行能容纳的最大值是32767bytes
3、buffer的默认值是20000bytes,可设置的最小值为2000bytes,最大值为1000000bytes
serveroutput OFF
BYS@ bys3> begin
2 dbms_output.put_line('hello world!');
3 dbms_output.put('bys');
4 dbms_output.new_line;
5 end;
6 /
PL/SQL procedure successfully completed.
#############################
BYS@ bys3>show serveroutput
BYS@ bys3> begin
2 dbms_output.put_line('hello world!'); --直接输出hello world!
3 dbms_output.put('bys');
4 dbms_output.put('good');
5 dbms_output.new_line; --输出buffer中的,bys good在同一行。
6 end;
7 /
hello world!
bysgood
PL/SQL procedure successfully completed.
BYS@ bys3> begin
2 dbms_output.put_line('hello world!');
3 dbms_output.put('bys');
4 dbms_output.new_line; --多增加一个new_line,相当于增加换行符--与上一语句相比,输入中bys和good在不同行。
5 dbms_output.put('good');
6 dbms_output.new_line;
7 end;
8 /
hello world!
bys
good
PL/SQL procedure successfully completed.
##################################################################################
var line varchar2(100);
var status number;
begin
dbms_output.put_line('hello world!');
dbms_output.put('bys');
dbms_output.new_line;
dbms_output.put('good');
dbms_output.new_line;
dbms_output.get_line(:line,:status);
end;
BYS@ bys3>var line varchar2(100);
BYS@ bys3>var status number;
BYS@ bys3> begin
2 dbms_output.put_line('hello world!');
3 dbms_output.put('bys');
4 dbms_output.new_line;
5 dbms_output.put('good');
6 dbms_output.new_line;
dbms_output.get_line(:line,:status);
end;
9 /
bys
good
PL/SQL procedure successfully completed.
1、enable:在serveroutput on的情况下,用来使dbms_output生效(默认即打开)
说明:该过程用于激活本包,如果没有被激活,将无法调用本包的其它其余过程和函数。
当调用该过程,缓冲区最大尺寸为1000000字节,最小为2000字节,默认为20000字节。
注意:如果在SQL*PLUS中使用SERVEROUTPUT选项,则没有必要使用该过程。
语法:DBMS_OUTPUT.ENABLE(buffer_size in integer default 20000);
2、disable:在serveroutput on的情况下,用来使dbms_output失效
说明:该过程用于禁止本包,并清除缓冲区的内容。当本包被禁止,将无法调用本包的其它其余过程和函数。
注意:如果在SQL*PLUS中使用SERVEROUTPUT选项,则没有必要使用该过程。
语法:DBMS_OUTPUT.DISABLE;
3、put:put_line:
说明:过程put_line用于将一个完整行的信息写入到缓冲区中,会自动在行的尾部追加行结束符;
过程put则用地分块建立行信息,需要换行需要使用过程new_line追加行结束符。
语法:dbms_output.put(item in number\varchar2\date);dbms_output.put_line(item in number\varchar2\date);
4、new_line:作为一行的结束,可以理解为写入buffer时的换行符
说明:该过程用于在行的尾部追加行结束符。
语法:dbms_output.new_line;
5、get_line:get_lines:get_line之后会将buffer清空
说明:过程get_line用于取得缓冲区的单行信息,get_lins用于取得缓冲区的多行信息。
语法:dbms_output.get_line(line out varchar2,status out integer);
dbms_output.get_lines(lines out chararr,numlines in out integer);
其中line用于取得缓冲区的单行信息(最大255字节),status用于返回过程执行是否成功,0成功1表示没有行;
lines用于取得缓冲区的多行信息,numlines指定要检索的行数,并返回实际检索的行数。
需要注意以下几点:
-----------------------
1、set serveroutput on:如果要在sqlplus中看到dbms_output的输出,则必须设置该参数值为on
2、每行能容纳的最大值是32767bytes
3、buffer的默认值是20000bytes,可设置的最小值为2000bytes,最大值为1000000bytes
1.set serveroutput为OFF时,dbms_output无输出
BYS@ bys3>show serveroutputserveroutput OFF
BYS@ bys3> begin
2 dbms_output.put_line('hello world!');
3 dbms_output.put('bys');
4 dbms_output.new_line;
5 end;
6 /
PL/SQL procedure successfully completed.
#############################
2.set serveroutput为ON时,测试put_line,put,new_line
BYS@ bys3>set serveroutput onBYS@ bys3>show serveroutput
BYS@ bys3> begin
2 dbms_output.put_line('hello world!'); --直接输出hello world!
3 dbms_output.put('bys');
4 dbms_output.put('good');
5 dbms_output.new_line; --输出buffer中的,bys good在同一行。
6 end;
7 /
hello world!
bysgood
PL/SQL procedure successfully completed.
BYS@ bys3> begin
2 dbms_output.put_line('hello world!');
3 dbms_output.put('bys');
4 dbms_output.new_line; --多增加一个new_line,相当于增加换行符--与上一语句相比,输入中bys和good在不同行。
5 dbms_output.put('good');
6 dbms_output.new_line;
7 end;
8 /
hello world!
bys
good
PL/SQL procedure successfully completed.
##################################################################################
3.测试get_line的使用--get_linesi不知道怎么实验。。
语句:var line varchar2(100);
var status number;
begin
dbms_output.put_line('hello world!');
dbms_output.put('bys');
dbms_output.new_line;
dbms_output.put('good');
dbms_output.new_line;
dbms_output.get_line(:line,:status);
end;
BYS@ bys3>var line varchar2(100);
BYS@ bys3>var status number;
BYS@ bys3> begin
2 dbms_output.put_line('hello world!');
3 dbms_output.put('bys');
4 dbms_output.new_line;
5 dbms_output.put('good');
6 dbms_output.new_line;
dbms_output.get_line(:line,:status);
end;
9 /
bys
good
PL/SQL procedure successfully completed.
0 0
- DBMS_OUTPUT包语法简介及使用小实验
- DBMS_OUTPUT包语法简介及使用小实验
- 【Oracle】Oracle中DBMS_OUTPUT包的使用
- jQuery 实验教程:jQuery 简介、语法及事件处理
- DBMS_OUTPUT包学习
- DBMS_OUTPUT包学习
- DBMS_OUTPUT包学习
- 了解DBMS_OUTPUT包
- dbms_output 系统包
- oracle系统包DBMS_OUTPUT
- 怎样使用DBMS_OUTPUT.PUT_LINE?
- 怎样使用DBMS_OUTPUT.PUT_LINE?
- Oracle DBMS_OUTPUT包完全参考手册
- 使用Maven assembly打多个自定义包及War包简介
- jQuery简介及语法
- Python简介的小语法
- DBMS_OUTPUT
- plsql中dbms_output.put_line使用
- Android Notification通知栏设计指南
- USACO 4.4 Shuttle Puzzle bfs
- iOS程序猿之linux的cp/scp命令+scp命令详解
- Android 仿美团网,大众点评购买框悬浮效果之修改版
- HDU 2041:超级楼梯
- DBMS_OUTPUT包语法简介及使用小实验
- 闲聊linux中的input设备(转)
- iOS开发 https请求网络web自定义证书不信任解决方案
- 图像处理之图像rgb取平均(java)
- 询问某区间内有多少满足某个要求的/某区间以某式子计算出的值(莫队算法,不修改只询问区间)
- C++ const常量成员函数
- js常用正则表达式
- Android放大镜实现的两种方式
- jquery mobiscroll 滑动、滚动