• oracle管道输出


    通常我们会在oracle中用dbms_output输出调试信息,但dbms_output只能在调用过程完成才返回结果,不能实时输出的。这意味着通常我们经常要等几分钟或更长的时间才能看到调试信息,那怎么才能实现实时输出呢?

    如果想实时输出可以通过写表或者写日志的方式进行,和pipe row管道输出的方法。
    下面为大家介绍管道输出
    管道输出可以通过复杂的处理最终得到一个结果集,然后通过pipelined返回

    --CREATE OR REPLACE TYPE myObjectFormat AS OBJECT  ( A INT, B DATE, C VARCHAR2(25));

    -- --声明一个列类型myObjectFormat 

    --CREATE OR REPLACE TYPE myTableType  AS TABLE OF myObjectFormat;
     --声明一个表类型 myTableType


    create or replace FUNCTION prodFunc 
    RETURN myTableType
    PIPELINED 
    IS
    BEGIN
      FOR i in 1 .. 5
        LOOP
          PIPE ROW (myObjectFormat(i,SYSDATE+i,'Row '||i));
        END LOOP;
        RETURN;
      END;


    --SELECT * FROM TABLE(prodFunc);

    --执行函数,结果如下:


  • 相关阅读:
    css动画特效
    http标码集合
    vue的搭建项目
    多功能
    react官方脚手架搭建项目
    深入挖掘分析Go代码
    GoLang AST简介
    GoLang中的逃逸分析简介
    使用Golang实现状态机
    GoLang中的Context
  • 原文地址:https://www.cnblogs.com/fuhaots2009/p/3471349.html
Copyright © 2020-2023  润新知