zoukankan      html  css  js  c++  java
  • 【原】备忘:Oracle 中创建存储过程及调用测试一例

     

    The procedure :

    CREATE OR REPLACE PROCEDURE createSequence
          (
          the_seq OUT NUMBER
          )
          IS
          vs_prevyear  CHAR(4);
          vs_curyear  CHAR(4);
          vs_curseq NUMBER;

          BEGIN
          -- get the year of the latest created changelog record
          select max(to_char(datecreated,'yyyy')) into vs_prevyear from rtchangelog;
          -- get the current year of the database
          SELECT TO_CHAR(SYSDATE,'YYYY') INTO vs_curyear FROM DUAL;
          -- get  the sequence count from the db
          SELECT COUNT(*) INTO vs_curseq  from seq where sequence_name='SQ_CHANGELOG';
         
          IF(vs_curseq =0) THEN
          execute immediate  'create sequence sq_changelog increment by 1 start with 1';
          ELSE
          IF(vs_prevyear<>vs_curyear) THEN
          execute immediate 'drop sequence sq_changelog';
          execute immediate 'create sequence sq_changelog increment by 1 start with 1';
          END IF;
          END IF;
            execute immediate  'select sq_changelog.nextval from dual' into the_seq;
            commit;
          END;


    Test sql for toad:

    declare
    v_num number;
    begin
    createSequence (v_num) ;
    DBMS_OUTPUT.PUT_LINE(v_num);
    END;
    /

    作者:Tony zhao 欢迎访问:找与淘网

  • 相关阅读:
    四则运算测试脚本运行情况
    AAA
    (2015秋) 软工作业成绩公布(12月26号更新)
    判断闰年的Java算法
    B
    A
    Where Amazing Happens
    安利一发资料站
    C
    B
  • 原文地址:https://www.cnblogs.com/ytaozhao/p/2844100.html
Copyright © 2011-2022 走看看