• DBMS_OUTPUT包学习


    DBMS_OUTPUT包中的其他方法和函数的用法,所以这次特地来研究一下。 先简单的讲解一下这个包的所有procedure的含义及作用: 
     
    ----------------------- 
        1、enable:在serveroutput on的情况下,用来使dbms_output生效(默认即打开) 
        2、disable:在serveroutput on的情况下,用来使dbms_output失效 
        3、put:将内容写到内存,等到put_line时一起输出 
        4、put_line:不用多说了,输出字符 
        5、new_line:作为一行的结束,可以理解为写入buffer时的换行符 
        6、get_line:获取没有输出的buffer中的信息 
        7、get_lines:以数组形式来获取所有buffer中的信息 

    需要注意以下几点: 
    ----------------------- 
        1、set serveroutput on:如果要在sqlplus中看到dbms_output的输出,则必须设置该参数值为on 
        2、每行能容纳的最大值是32767bytes 
        3、buffer的默认值是20000bytes,可设置的最小值为2000bytes,最大值为1000000bytes 

        下面举几个例子来说明一些不常用的方法的使用: 
     
        例子1:(put和new_line) 
    ----------------------- 
    SQL> set serveroutput on
    SQL> begin
      2    dbms_output.put_line('three names will be written.');
      3    dbms_output.put('j'); --增加至buffer
      4    dbms_output.new_line; --回车
      5    dbms_output.put('s'); --增加至buffer
      6    dbms_output.new_line; --回车
      7    dbms_output.put('t'); --增加至buffer
      8    dbms_output.new_line; --回车
      9    dbms_output.put_line('over.'); --与之前所有一起输出
    10  end;
    11  /
    three names will be written.
    j
    s
    t
    over.
     
    PL/SQL procedure successfully completed 


    以下附上本人一小练习,pl/sql输出左直角三角形

    set serveroutput on
    declare
    
     begin
       for i in 1 .. 5
       loop
            for j in 1 .. i
            loop
               dbms_output.put('*');
            end loop;
    
    dbms_output.new_line();
    end loop; end; /

    结果:

    *
    **
    ***
    ****
    *****
    
    PL/SQL 过程已成功完成。
  • 相关阅读:
    C++ 实现简单快速排序
    LEETCODE 198. House Robber
    leetcode 174
    GIT 版本的回退
    unorderd_map 自定义键值及哈希函数的重载
    互斥锁 形成死锁实例
    leetcode 300
    LeetCode 62
    LeetCode 122
    SVN提交,强制注释
  • 原文地址:https://www.cnblogs.com/xiaoliu66007/p/3503988.html
Copyright © 2020-2023  润新知