DB2存储过程通过游标实现批量数据处理
2014-07-14 16:06
281 查看
CREATE procedure proc_change()
LANGUAGE SQL
BEGIN
DECLARE l_id INTEGER;
DECLARE l_detail_id INTEGER;
DECLARE l_gather_type VARCHAR(2);
DECLARE l_item_id VARCHAR(30);
DECLARE counts INTEGER;
SELECT count(*) INTO counts FROM ZM_GATHER_ITEM;
begin
DECLARE cur CURSOR FOR
SELECT ID, detail_id, gather_type, item_id FROM ZM_GATHER_ITEM;
OPEN CUR;
WHILE counts > 0 DO
FETCH CUR INTO l_id, l_detail_id, l_gather_type, l_item_id;
UPDATE ZM_GATHER_INFO SET GATHER_ITEM_ID = l_ID
WHERE DETAIL_ID = l_detail_id and index_type = l_gather_type AND ITEM_ID = l_item_id;
SET counts = counts - 1;
END WHILE;
END;
END;
SELECT * FROM ZM_GATHER_ITEM;
SELECT * FROM ZM_GATHER_INFO;
--DROP PROCEDURE proc_change;
CALL PROC_CHANGE();
LANGUAGE SQL
BEGIN
DECLARE l_id INTEGER;
DECLARE l_detail_id INTEGER;
DECLARE l_gather_type VARCHAR(2);
DECLARE l_item_id VARCHAR(30);
DECLARE counts INTEGER;
SELECT count(*) INTO counts FROM ZM_GATHER_ITEM;
begin
DECLARE cur CURSOR FOR
SELECT ID, detail_id, gather_type, item_id FROM ZM_GATHER_ITEM;
OPEN CUR;
WHILE counts > 0 DO
FETCH CUR INTO l_id, l_detail_id, l_gather_type, l_item_id;
UPDATE ZM_GATHER_INFO SET GATHER_ITEM_ID = l_ID
WHERE DETAIL_ID = l_detail_id and index_type = l_gather_type AND ITEM_ID = l_item_id;
SET counts = counts - 1;
END WHILE;
END;
END;
SELECT * FROM ZM_GATHER_ITEM;
SELECT * FROM ZM_GATHER_INFO;
--DROP PROCEDURE proc_change;
CALL PROC_CHANGE();
相关文章推荐
- 通过游标实现分页存储过程
- pl/sql存储过程中游标嵌套的实现方法
- pl/sql存储过程中游标嵌套的实现方法
- 在线编辑器的实现,与存储过程再续(select into ,游标,错误处理)
- 存储过程通过临时表来实现分页的功能
- 企业库EnterpriseLibrary学习笔记之--通过企业库Microsoft.Practices.EnterpriseLibrary,实现调用存储过程的封装
- 批量inset和update的存储过程实现
- DB2 中游标的使用以及 存储过程的写法
- 通过存储过程来实现删除所有表的数据(清库)
- DB2存储过程之游标AND UPDATE
- 使用mssql2008新特性(存储过程参数类型使用"用户自定义表"来实现批量DML更新多表)解决项目里遇到的性能问题
- 调用存储过程,java中通过bboss persistent实现数据库存储过程的调用(位置变量绑定)
- 通过游标在SQL存储过程中循环
- SQL Server中通过扩展存储过程实现数据库的远程备份与恢复
- 游标写存储过程 实现C#分类查询多个结果集
- 通过银行转账业务体会JAVA与存储过程不同实现方式
- 存储过程建立临时表,通过游标增加数据
- 通过Shell访问DB2中的存储过程
- SQL Server通过储存过程实现批量删除注意事项
- SQL Server中通过扩展存储过程实现数据库的远程备份与恢复