zoukankan      html  css  js  c++  java
  • PLSQL里面的 程序包,触发器 ,以及游标的后续

       1.  程序包  (类比于java中接口的实现)

          使用程序包的好处:
            1-1, 更容易的增强和维护代码
           1- 2, 最小化代码重新编译的需求

      

    CREATE OR REPLACE PACKAGE JIA IS    --程序包
    
      PROCEDURE PLUS(A IN NUMBER, B IN NUMBER);
      FUNCTION DIVIDE(A IN NUMBER, B IN NUMBER) RETURN NUMBER;
    
    END JIA;
    

        

    CREATE OR REPLACE PACKAGE BODY jia IS      --程序体
    
      PROCEDURE PLUS(A IN NUMBER, B IN NUMBER) AS
      BEGIN
        P(A + B);
      END;
    
      FUNCTION DIVIDE(A IN NUMBER, B IN NUMBER) RETURN NUMBER AS
        C NUMBER;
      BEGIN
        C := A / B;
        RETURN C;
      EXCEPTION
        WHEN ZERO_DIVIDE THEN
          P('除数不能为0');
      END;
    END jia;
    
    declare      --test-window
     
     i NUMBER;
    begin
       jia.PLUS(2,3);
       i:= jia.DIVIDE(5,3) ;
       p(i);
    end;
    

     2.触发器

      触发器是一种特殊的存储过程
        insert delete update
                2-1. 语法:
            CREATE OR REPLACE TRIGGER 触发器名
              AFTER[BEFORE] 执行的操作(用OR运算符可以并联多个操作) ON 表名[OF 列名]
              [FOR EACH ROW]--加上这行代码表示语句级, 只要有一行记录受到影响, 就会触动触发器
            BEGIN
              -- 需要执行的代码
            END;
       2-2. 触发器的类型:
            语句级触发器--不管一条sql语句操作了多少行, 触发器只触发一次
            行级触发器--操作的过程影响了多少行, 就触发多少次触发器    [FOR EACH ROW]   
                伪记录变量:
                    :OLD
                    :NEW

    3.游标

        游标的种类:
         3-1.   静态游标
                隐式游标

            在执行增删改查 select :(查询操作仅在返回单行记录时)的操作的时候,
                    可以用SQL关键字获取到一个隐式游标
                    在隐式游标中, 以上四个属性分别代表的意思是:
                        1, %FOUND-->执行的操作是否成功
                        2, %NOTFOUND-->与FOUND相反
                        3, %ROWCOUNT-->执行操作所影响的行数
                        4, %ISOPEN--判断游标当前的状态

      3-2.显式游标
                    使用时必须明确的声明游标的类型, 以及关联相关的查询语句
                    显式游标完全由程序员来控制

  • 相关阅读:
    78. Subsets
    93. Restore IP Addresses
    71. Simplify Path
    82. Remove Duplicates from Sorted List II
    95. Unique Binary Search Trees II
    96. Unique Binary Search Trees
    312. Burst Balloons
    程序员社交平台
    APP Store开发指南
    iOS框架搭建(MVC,自定义TabBar)--微博搭建为例
  • 原文地址:https://www.cnblogs.com/zuo72/p/8082516.html
Copyright © 2011-2022 走看看