zoukankan      html  css  js  c++  java
  • DBMS_OUTPUT(用于输入和输出信息)

    1、概述

    作用:用于输入和输出信息,使用过程PUT和PUT_LINES可以将信息发送到缓冲区,使用过程GET_LINE和GET_LINES可以显示缓冲区信息。
    该包用来输出plsql变量的值,属于系统用户sys。下面讲述包的组成:


    2、包的组成


    1)、ENABLE
    说明:该过程用于激活本包,如果没有被激活,将无法调用本包的其它其余过程和函数。当调用该过程,缓冲区最大尺寸为1000000字节,最小为2000字节,默认为20000字节。
    注意:如果在SQL*PLUS中使用SERVEROUTPUT选项,则没有必要使用该过程。
    语法:DBMS_OUTPUT.ENABLE(buffer_size in integer default 20000);

    2)、DISABLE
    说明:该过程用于禁止本包,并清除缓冲区的内容。当本包被禁止,将无法调用本包的其它其余过程和函数。
    注意:如果在SQL*PLUS中使用SERVEROUTPUT选项,则没有必要使用该过程。
    语法:DBMS_OUTPUT.DISABLE;

    3)、put和put_line
    说明:过程put_line用于将一个完整行的信息写入到缓冲区中,会自动在行的尾部追加行结束符;
    过程put则用地分块建立行信息,需要换行需要使用过程new_line追加行结束符。
    语法:dbms_output.put(item in numbervarchar2date);dbms_output.put_line(item in numbervarchar2date);

    当在sql*plus中使用包过程put、put_line时,需要设置serveroutput选项。
    例子:
    set serveroutput on
    begin
    dbms_output.put_line('伟大的中华民族');
    dbms_output.put('中国');
    dbms_output.put(',伟大的祖国');
    dbms_output.new_line;
    end;

    4)、new_line
    说明:该过程用于在行的尾部追加行结束符。
    语法:dbms_output.new_line;

    5)、get_line和get_lines
    说明:过程get_lin用于取得缓冲区的单行信息,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指定要检索的行数,并返回实际检索的行数。


    3、包的应用实例


    1)、例子一
    var line varchar2(100);
    var status number
    begin
    dbms_output.enable;
    dbms_output.put_line('伟大的中华民族');
    dbms_output.put('中国');
    dbms_output.put(',伟大的祖国');
    dbms_output.put.new_line;
    dbms_output.get_line(:line,:status);
    end;

    2)、例子二
    declare
    type line_table_type is table of varchar2(255) index by binary integer;
    line_table line_table_type;
    lines number(38):=3;
    begin
    dbms_output.enable;
    dbms_output.put_line('伟大的中华民族');
    dbms_output.put('中国');
    dbms_output.put(',伟大的祖国');
    dbms_output.put.new_lines;
    dbms_output.get_line(line_table,lines);
    end;

  • 相关阅读:
    2021-06-10 Summary: 阶段总结
    java中有符号和无符号数据类型发生转换
    关于数组和集合的冒泡排序中容易出现的IndexOutOfBoundsException
    Intellij IDEA打开多项目窗口
    使用Idea从github上获取项目
    用Intellij Idea从Github上获取代码
    Python-列表常用操作方法
    Python-字符串常用操作方法
    Python-不可变对象和可变对象的理解
    Python-内置数据类型
  • 原文地址:https://www.cnblogs.com/champaign/p/9468342.html
Copyright © 2011-2022 走看看