Oracle 游标示例,带异常处理
2014-09-28 10:32
435 查看
Oracle游标示例一则,带异常处理。
DECLARE CURSOR c_dl IS SELECT ID, NSRSBH, WSPZXH, ZXYY_DM, HZRQ, SWJG_DM, GXSJ FROM T_GUOS_ZXXX WHERE gxsj > begin_gxsj; c_row c_dl%ROWTYPE; BEGIN FOR c_row IN c_dl LOOP BEGIN IF (c_row.GXSJ > max_gxsj) THEN BEGIN max_gxsj := c_row.GXSJ; END; END IF; handled_count := handled_count + 1; -- MERGE INTO T_FR_GUOSZX T USING (SELECT c_row.NSRSBH NSRSBH, c_row.WSPZXH WSPZXH, c_row.ZXYY_DM ZXYY_DM, c_row.HZRQ HZRQ, c_row.SWJG_DM SWJG_DM, c_row.GXSJ GXSJ FROM dual) NT ON (T.NSRSBH = NT.NSRSBH) WHEN MATCHED THEN UPDATE SET ZXWSXH = NT.WSPZXH WHEN NOT MATCHED THEN INSERT (ID, NSRSBH, ZXWSXH, ZXYY, ZXRQ, ZXJG, GXSJ) VALUES ... COMMIT; --当出现异常时,将异常插入日志表,并继续下一次循环 EXCEPTION WHEN OTHERS THEN ROLLBACK; error_count := error_count + 1; errorcode := SQLCODE; errmsg := SQLERRM; BEGIN --执行出错时,将错误信息记录到日志表 COMMIT; END; END; END LOOP; END;
相关文章推荐
- 从概念到示例—Oracle显式游标
- Oracle 触发器实例(含Oracle游标的示例)
- oracle 游标示例
- oracle游标使用示例
- Oracle游标简单示例
- oracle 显式游标示例
- ORACLE游标、递归查询、子查询与批量更新示例
- oracle中游标的使用,示例
- 从概念到示例—Oracle引用(REF)游标
- oracle中游标的用法总结及示例
- oracle之存储过程,临时表,游标示例
- 从概念到示例—Oracle引用(REF)游标
- 从概念到示例—Oracle显式游标
- Oracle 游标记录使用示例
- oracle中游标的用法总结及示例
- oracle 游标示例
- Oracle_游标示例
- 从概念到示例—Oracle隐式游标
- oracle中带游标的存储过程示例
- 从概念到示例—Oracle隐式游标