科技
oracle 存储过程(oracle-存储过程)
一、plsql编程    1、plsql是oralce对sql语言的一种拓展,增加了过程处理的能力(比如:分支、循环等);    2、主要有三个部分组成:声明、代码块、异常;DECLARE--声明变量:变量名 类型--声明方式一:直接定义变量类型:v_name varchar2(255);v_adds varchar2(255);v_numb varchar2(255);--声明方式二:引用变量类型(tmp为表名,name为改表的字段):v_name2  tmp.name%TYPE;--声明方式三:记录型变量,只有一条记录:v_tmp tmp%ROWTYPE;--赋值方式一:直接赋值:v_sal number := 1000;BEGIN--赋值方式一:直接赋值:v_name := '英语';--赋值方式二:使用语句赋值:select '北京','138999999' into v_adds,v_numb from dual; select name into v_name2 from tmp;select * into v_tmp from tmp;DBMS_OUTPUT.put_line('名称为:'||v_tmp.name||'薪水为:'v_sal);END;3、条件判断:BEGIN        IF 条件 THEN 执行1        ELSIF 条件2 THEN 执行2         ELSE 执行3        END IF;END;4、循环:DECLAREV_NUM NUMBER :=1;BEGIN        LOOP                 EXIT WHEN V_NUM > 10;                DBMS_OUTPUT.put_line(V_NUM);                V_NUM:=V_NUM+1;        END LOOP;END;5、游标:用于临时存储一个查询返回多行的数据,他的使用方式为:声明、打开、读取、关闭。DECLARE--声明一个游标:CURSOR C_TMP(V_NO) IS SELECt NAME,SAL FROM TMP WHERe NO=V_NO;--声明变量:V_NAME TMP.NAME%TYPE;V_SAL TMP.SAL%TYPE;BEGIN    --打开游标:    OPEN C_TMP(10);--10,是带参数游标的参数值,若是无参数游标,这个小括号可以省略        --遍历游标:        LOOP             --获取数据            FETCH C_TMP INTO V_NAME,V_SAL;            --退出条件:            EXIT WHEN C_TMP%NOTFOUND;            DBMS_OUTPUT.put_line(V_NAME||V_SAL);        END LOOP;    --关闭游标:    CLOSE C_TMP;END;二、存储过程-- 1.无参数存储过程:CREATE OR REPLACE PROCEDURE procedure_name IS | AS    -- 声明部分 (变量、游标等)BEGIN    -- 执行部分 (PL/SQL 代码块)    [EXCEPTION]        -- 异常处理部分END ;--使用存储过程:BEGINprocedure_name;END ;--2.有输入参数的存储过程:CREATE OR REPLACE PROCEDURE procedure_name(in_name IN tmp.name%TYPE) IS | AS    -- 声明部分 (变量、游标等)BEGIN    -- 执行部分 (PL/SQL 代码块)    [EXCEPTION]        -- 异常处理部分END ;--使用存储过程:BEGINprocedure_name('DAMEILI');END;

顶一下()     踩一下()

热门推荐

发表评论
0评