Oracle的存儲過程編程
2016-04-19 17:47
393 查看
--创建或者更新存储过程update_user_p create or replace procedure update_user_p(param1 in varchar2) is v_taskName VARCHAR2(20); --定义变量,Oracle类型。 v_i number(12); --将User_Advisor_Log表的结果集赋给cur CURSOR cur IS SELECT * FROM User_Advisor_Log; --sql开始标记,以上是定义变量,以下才写程序 begin DBMS_OUTPUT.PUT_LINE(param1); v_i := 0; DBMS_OUTPUT.PUT_LINE('start!'); --遍历结果集 for cur_result in cur LOOP begin v_taskName := cur_result.TASK_NAME; --将结果集赋给变量v_creator,一个语句结束需要分号结尾。 --if语句开始 if v_taskName > 0 then begin NULL; --NULL 语句表明什么事都不做,这句不能删去,因为PL/SQL体中至少需要有一句; end; end if; --while循环 while v_taskName > 0 LOOP begin NULL; end; end LOOP; --建议每循环一万次提交一下 v_i := v_i + 1; if mod(v_i, 10000) = 0 then commit; end if; --有异常输出,或者在这里回滚 exception when others then DBMS_OUTPUT.PUT_LINE('update_user_p has error!'); end; end LOOP; --循环结束 commit; DBMS_OUTPUT.PUT_LINE('end and commit!'); end update_user_p;执行存储过程:call update_user_p('this is param')。在output 里可以看见DBMS_OUTPUT.PUT_LINE的输出。
相关文章推荐
- Oracle Study之-AIX6.1构建Oracle 11gR2 RAC(2) 推荐
- Oracle中Hint深入理解
- Oracle Study之-AIX6.1构建Oracle 11gR2 RAC(2)
- Views Relevant to Oracle Data Guard
- ORACLE常用SQL优化hint语句
- oracle 10g和11g下 CDC机制(change data capture) 变化数据捕捉
- 单实例 oracle 自启动
- ORACLE 表空间查询及操作方法
- Oracle Study之-AIX6.1构建主机之间的信任关系(ssh)
- oracle删除数据的技巧
- Oracle Study之-AIX6.1构建主机之间的信任关系(ssh)
- 使用Oracle DBLink进行数据库之间对象的訪问操作
- MySQL实现类似Oracle的序列 - sequence
- 查看表空间占用情况
- Oracle创建各式的存储过程(簡單案例)
- Oracle VM + centos7.1+openstack kilo 多结点安装教程---keystone的安装(3)
- Oracle存储过程简介
- Oracle数据库备份脚本
- 安装oracle 11G-----( ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务)的解决方法
- oracle 删除大量数据的方法