• 存储过程


    什么是存储过程(或者存储过程有什么作用)

      之前我们写的PLSQL可以进行表的操作,判断、循环,无法重复调用。现在将一个个PLSQL过程存储起来的PLSQL就被称之为存储过程。

    语法:

      create or replace procedure  过程名称(参数列表) is
      begin

      end  [过程名称];

    我们可以以通过PL/SQL Developer来自行创建

      1、第一个“Hello Word”

    CREATE OR REPLACE PROCEDURE P_HELLO IS
    BEGIN
        DBMS_OUTPUT.PUT_LINE('Hello word');
    END P_HELLO;

      注意:(其中的is 可以换成as)

      它的调用执行

    declare
     
    begin
     p_hello;
    end;

      如需在黑框中显示:exec   p_hello

      2、带输入参数的

    --查询你某个员工(例如:7839号员工)的姓名和工资
    CREATE OR REPLACE PROCEDURE P_QUERYNAMEANDSAL(IN_ID IN EMP.EMPNO%TYPE) IS
        --声明变量
        V_NAME EMP.ENAME%TYPE;
        V_SAL  EMP.SAL%TYPE;
    BEGIN
        -- 查询emp表中某个员工的姓名和工资
        SELECT EMP.ENAME, EMP.SAL INTO V_NAME, V_SAL FROM EMP WHERE EMP.EMPNO = IN_ID;
    
        DBMS_OUTPUT.PUT_LINE('姓名:' || V_NAME || '工资:' || V_SAL);
    
    END P_QUERYNAMEANDSAL;

      3、带输出输入参数的

    --查询你某个员工(例如:7839号员工)的信息,将薪水返回
    CREATE OR REPLACE PROCEDURE P_QUERYSAL(IN_ID IN EMP.EMPNO%TYPE, O_SAL OUT EMP.SAL%TYPE) IS
    
    BEGIN
    
        SELECT EMP.SAL INTO O_SAL FROM EMP WHERE EMP.EMPNO = IN_ID;
    
    END P_QUERYSAL;

      调用

    DECLARE
        V_SAL EMP.SAL%TYPE;
    BEGIN
        P_QUERYSAL(7839, V_SAL);
        DBMS_OUTPUT.PUT_LINE(V_SAL);
    END;
  • 相关阅读:
    PAT 1063 计算谱半径(20)(代码)
    PAT 1071 小赌怡情(15)(代码)
    PAT 1068 万绿丛中一点红(20)(测试点分析+思路分析)
    PAT 甲级 1011 World Cup Betting (20)(代码+思路)
    PAT 1041 考试座位号(15)(代码)
    PAT 1076 Wifi密码(15)(代码)
    Mvc全局过滤器与Action排除
    .NET Core WebApi使用Swagger
    .NET WebApi使用Swagger
    JQuery常见方法
  • 原文地址:https://www.cnblogs.com/karrya/p/11632762.html
Copyright © 2020-2023  润新知