zoukankan      html  css  js  c++  java
  • Oracle存储过程及函数

    1.在Oracle中,存储过程包括三部分组成:定义部分、执行部分、和异常处理部分(即例外)

    eg1:输入员工编号,查询员工的姓名和薪资

    create or repalce  procedure mypro2 is

    declare --定义部分,定义变量和常量等,变量定义一般以V_开头,常量定义一般以C_开头

    v_ename varchar2(20);

    v_sal number(7,2);

    begin--执行部分

    select ename,sal into v_ename,v_sal from emp where empno=&no;

    dbms_output.put_line('员工的姓名是:'||v_ename||'工资是'||v_sal);

    exception--异常处理部分

    when no_data_found then

    dbms_output.put_line('您输入的员工编号不存在');

    end;

    eg2:带参数的存储过程

    --输入员工的姓名和新的薪资,根据姓名改薪资

    create or replace procedure mypro2(pename varchar2,psal number) is

    begin

    update emp set sal=psal where ename=pename;

    end;

    存储过程的调用方法:

    a:exec mypro1()或者call mypro1();

    b:exec mypro1('SCOTT',1200)或者call mypro1('SCOTT',1200);

    2.函数

    函数必须有返回值的

    结构如下:根据雇员名称求年薪

    create or repalce function myfun1(fename varchar2) return number is yearsal nunber;

    begin

    select sal*12+nvl(comm,0) into yearsal from emp where ename=fename;

    return yearsal;

    end;

    函数的调用方法:

    SQL> var ys number;
    SQL> call myf1('SCOTT') into:ys;

  • 相关阅读:
    Codeforces Round #362 (Div. 2) C
    poj1655 树重心
    poj1985 树直径
    Codeforces Round #403 (based on Technocup 2017 Finals)
    uva 10054 The necklacr
    bfs codeforces 754B Ilya and tic-tac-toe game
    矩阵快速幂专题
    CodeForces 863E Turn Off The TV 思维,扫描线
    CodeForces 803F Coprime Subsequences 莫比乌斯,容斥
    CodeForces 803C Maximal GCD 思维
  • 原文地址:https://www.cnblogs.com/wangyinggang/p/4116198.html
Copyright © 2011-2022 走看看