zoukankan      html  css  js  c++  java
  • Oracle的dbms_output包的put()和put_line()的区别只是有没有回车换行吗?(转)

    答案是否

    除了自动添加回车换行外,还有就是缓冲区最大容量的问题!!

    无论如何设置serveroutput size,10g里

    put() 最多只能输出 32767 个byte

    put_line() 的最大容量为 1000000个byte

    以下的代码目的是生成一个oracle数据库的用户自定义的存储过程和函数!如果你的用户代码足够长(大于32767),就会发现

    使用put()会报错,而使用put_line()不会报错!

    不过问题是:使用put_line()获得的代码都会插入一个空行,十分不爽!我目前还没想到解决方法,若高手指点,不胜感谢!

    declare
        tablename varchar2(30) := '%';
    begin
        for objname in (select distinct TYPE, name
                        from   user_source
                        where  TYPE in ('PROCEDURE', 'FUNCTION')
                               and name like tablename
                        order  by TYPE, name)
        loop
            dbms_output.enable(10000000);
            dbms_output.put('CREATE OR REPLACE' || ' ');
            for output in (select text
                           from   user_source
                           where  name = objname.name
                                  and TYPE in ('PROCEDURE', 'FUNCTION')
                           order  by TYPE, name, line)
            loop

    /*         dbms_output.put(output.text); --如果使用put则会报错 */

                dbms_output.put_line(output.text);
            end loop;
            
            dbms_output.put_line('/');
        end loop;

    end;

    http://www.cnblogs.com/jinzhenshui/archive/2009/01/01/1366404.html

  • 相关阅读:
    SpringBoot入门
    VUE 监听局部滚动 设置ICON的位置跟随
    手机端页面调试工具-vconsole使用
    js获取字符串字节的位数
    判断数据为[] {} /空数组或空对象
    Vue axios 上传图片
    Vue触发input选取文件点击事件
    腾讯地图添加多个Marker
    VUE-CLI 设置页面title
    小程序wxml文件引用方式
  • 原文地址:https://www.cnblogs.com/softidea/p/5477121.html
Copyright © 2011-2022 走看看