Oracle dbms_output.put_line用法
夜猫程序猿 人气:1dbms_output.put_line的用法
涉及到的知识点如下:
1、enable:
在serveroutput on的情况下,用来使dbms_output生效(默认即打开)
set serveroutput on --将output 服务打开
2、disable:
在serveroutput on的情况下,用来使dbms_output失效
set serveroutput off --将output 服务关闭
3、put:
将内容写到内存,等到put_line时一起输出,new_line的时候也可以输出。
begin dbms_output.put_line('hello world1111111'); dbms_output.new_line(); dbms_output.put('Hello, Lao An '); dbms_output.put('Hello, Lao An '); dbms_output.new_line(); dbms_output.put_line('Hello, Lao An '); end; /
输出:
4、put_line:
不用多说了,输出字符,并刷新buffer,前提是set severoutput on;
exec dbms_output.put_line('hello world1111111');
5、new_line:
作为一行的结束,可以理解为写入buffer时的换行符
set serveroutput on begin dbms_output.put_line('hello world1111111'); dbms_output.put('Hello, Lao An'); dbms_output.new_line(); dbms_output.put_line('Hello, Lao An'); end; /
这里运用了begin+/来执行PL/SQL过程,我解释一下oracle中斜杠(/)的含义
斜杠就是让服务器执行前面所写的sql脚本。如果是普通的select语句,一个分号,就可以执行了。但是如果是存储过程,那么遇到分号,就不能马上执行了。这个时候,就需要通过斜杠(/)来执行。
6、get_line(value, index):
获取缓冲区的单行信息。
注:使用get_line时不能用put_line输出,因为put_line之后会将buffer清空。(当然在serveroutput off的情况下put_line是不影响buffer的)。
7、get_lines(array, index):
以数组形式来获取缓冲区的多行信息
declare v_data dbms_output.chararr; --先声明局部变量 v_numlines number; begin --enable the buffer first. dbms_output.enable(1000000); --设置缓冲区的大小 dbms_output.put_line('line one'); dbms_output.put_line('line two'); dbms_output.put_line('line three'); v_numlines := 3; dbms_output.get_lines(v_data, v_numlines); --array, index for v_counter in 1..v_numlines loop dbms_output.put_line(v_data(v_counter)); end loop; end; /
输出:
总结
加载全部内容