• 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.显式游标
                    使用时必须明确的声明游标的类型, 以及关联相关的查询语句
                    显式游标完全由程序员来控制

  • 相关阅读:
    字在线中
    关于页面显示层叠问题
    左边竖条
    jquery 动态添加元素事件绑定问题
    工作总结
    多文本输入,内容过多时输入框会自动撑开
    lunix常用命令
    springboot整合es availableProcessors is already set to [2], rejecting [2]
    mysql 主从复制架构
    elastic search 第一次安装 报错记录
  • 原文地址:https://www.cnblogs.com/zuo72/p/8082516.html
Copyright © 2020-2023  润新知