oracle 中存储过程一些小应用
来源:互联网 发布:js 产生2 8随机数 编辑:程序博客网 时间:2024/05/19 20:41
1.for ,loop ,while 的应用
/*------------------------------for----------------------------------------------*/ procedure TEST_FOR is N_VALUE integer; N_VALUE_RESULT integer; begin ---- 1..10之和 N_VALUE_RESULT := 0; for N_VALUE in 1 .. 10 loop select N_VALUE + N_VALUE_RESULT into N_VALUE_RESULT from dual; end loop; pbidebug.UP_SQLSTATEMENT(N_VALUE_RESULT); --打印记录 end TEST_FOR;/*---------------------------------------LOOP---------------------------------------------*/ procedure TEST_LOOP is N_VALUE integer; N_VALUE_RESULT integer; begin N_VALUE_RESULT := 0; N_VALUE := 0; loop select N_VALUE + N_VALUE_RESULT into N_VALUE_RESULT from dual; N_VALUE := N_VALUE + 1; if N_VALUE > 10 then exit; end if; end loop; pbidebug.UP_SQLSTATEMENT(N_VALUE_RESULT); --打印记录 end TEST_LOOP;/*----------------------------while----------------------------------------------*/ procedure TEST_WHILE is N_VALUE integer; N_VALUE_RESULT integer; begin N_VALUE_RESULT := 0; N_VALUE := 0; while N_VALUE <= 10 loop select N_VALUE + N_VALUE_RESULT into N_VALUE_RESULT from dual; N_VALUE := N_VALUE + 1; end loop; pbidebug.UP_SQLSTATEMENT(N_VALUE_RESULT); --打印记录 end TEST_WHILE;/*--------------------------------for 逐行数据处理------------------------------------------*/ procedure TEST_FOR_1 is V_STRTEMP varchar2(30000); begin for www in (select varno from tam_unitinfo) loop V_STRTEMP := V_STRTEMP || www.varno ||';'; end loop; pbidebug.UP_SQLSTATEMENT(V_STRTEMP); --打印记录 end TEST_FOR_1;/*-------------------------------------------------------------------------------------------*/
2.insert into 使用
/*----------------------------------insert into----------------------------------------------*/ procedure TEST_INSETINTO_1 is V_STRSQL VARCHAR2(30000); STRSQLINSERT1 VARCHAR2(3000); STRSQLINSERT2 VARCHAR2(3000); STRSQLINSERT3 VARCHAR2(3000); STRSQLINSERT4 VARCHAR2(3000); STRSQLINSERT5 VARCHAR2(3000); STRSQLINSERT6 VARCHAR2(3000); STRSQLINSERT7 VARCHAR2(3000); STRSQLINSERT8 VARCHAR2(3000); STRSQLINSERT9 VARCHAR2(3000); STRSQLINSERT10 VARCHAR2(3000); STRSQLINSERT11 VARCHAR2(3000); begin ---select 为空报错 V_STRSQL := ' insert into TGL_4AVIEW_DETAILS_FOR4A ' || ' (VARNO, vardescription, PERIODNAME, dtaccountdate, costpoolvarno, costpooltvarname, bank, deptvarno, deptvarname, varabstract, money) ' || ' select ww.varno,ww.vardescription, ww.varname ,ww.dtaccountdate,acc4a.costpoolvarno,acc4a.costpooltvarname, ' || ' cost4a.deptvarno ,cost4a.deptvarname ,ww.varabstract,ww.money from XXXXX'; EXECUTE IMMEDIATE V_STRSQL; ---select 为空不报错 V_STRSQL := ' insert into TGL_4AVIEW_DETAILS_FOR4A ' || -- ' (VARNO, vardescription, PERIODNAME, dtaccountdate, costpoolvarno, costpooltvarname, bank, deptvarno, deptvarname, varabstract, money) '|| ' select ww.varno,ww.vardescription, ww.varname ,ww.dtaccountdate,acc4a.costpoolvarno,acc4a.costpooltvarname, ' || ' cost4a.deptvarno ,cost4a.deptvarname ,ww.varabstract,ww.money from XXXXX'; EXECUTE IMMEDIATE V_STRSQL; ----insert into表从外部传递变量 V_STRSQL := ' INSERT INTO TBI_DEBUG_SQL(SQL1,SQL2,SQL3,SQL4,SQL5,SQL6,SQL7,SQL8,SQL9,SQL10,SQL11,LOGDATE)' || ' VALUES(:V1,:V2,:V3,:V4,:V5,:V6,:V7,:V8,:V9,:V10,:V11,:V12)'; EXECUTE IMMEDIATE V_STRSQL USING STRSQLINSERT1, STRSQLINSERT2, STRSQLINSERT3, STRSQLINSERT4, STRSQLINSERT5, STRSQLINSERT6, STRSQLINSERT7, STRSQLINSERT8, STRSQLINSERT9, STRSQLINSERT10, STRSQLINSERT11, SYSDATE(); ----insert into表从外部传递变量 -----(1) V_STRSQL := ' insert into aaa_zw (varno1, varno2, varno3, varno4, varno5) ' || ' values (101, 1, 2, 3, 4);'; EXECUTE IMMEDIATE V_STRSQL; -----(2) V_STRSQL := ' insert into aaa_zw (varno1, varno2, varno3) ' || ' values (102, 1, 2);'; EXECUTE IMMEDIATE V_STRSQL; -----(3) V_STRSQL := ' insert into aaa_zw (varno1, varno2, varno4) ' || ' values (103, 1, 2);'; EXECUTE IMMEDIATE V_STRSQL; end TEST_INSETINTO_1;
- oracle 中存储过程一些小应用
- oracle存储过程的一些小实例
- oracle 存储过程的一些应用-02
- oracle中一些sql以及存储过程小积累(日积月累)
- oracle存储过程中应用动态sql
- oracle存储过程中rownum的应用
- oracle存储过程应用
- oracle 存储过程应用
- 存储过程的一些应用
- Oracle存储过程小疑惑
- oracle 存储过程小例子
- Oracle 存储过程小例子
- Oracle 存储过程 小例子
- oracle 存储过程 小例子
- Jsp中调用Oracle存储过程的小例子(一)
- Jsp中调用Oracle存储过程的小例子(二)
- Jsp中调用Oracle存储过程的小例子
- JSP中调用Oracle存储过程的小例子
- linux 下常使用到的命令
- Struts2上传文件提示上传文件过大(FileUploadBase$SizeLimitExceededException)
- TCP工作原理及参数设置
- 什么是架构——《一线架构师实践指南》笔记
- 选择图片
- oracle 中存储过程一些小应用
- JAVA读取XML文件并解析 以及 JAVA生成文本文件输出
- 逻辑架构——分、合的哲理《一线架构师实践指南》笔记之二
- 添加节点
- windbg !gle
- 创建相册
- 划分子系统、接口——《一线架构师实践指南》笔记之三
- 杂乱无章_c++ 定义接口 [out,retval] 什么意思?
- so 动态加载库 Hotpatch