DECLARE
vn_commit_count NUMBER (4);
vn_count NUMBER (4);
CURSOR cur_get_id
IS
SELECT id from table
BEGIN
vn_count := 0;
vn_commit_count := 5000;
FOR c_get_id IN cur_get_id
LOOP
BEGIN
UPDATE table set column = ''
where XX=c_get_id.id;
vn_count := vn_count + 1;
IF vn_count = vn_commit_count
THEN
COMMIT;
vn_count := 0;
END IF;
EXCEPTION
--如果循环内的错误可以忽略,则捕获异常;如果不允许忽略错误,则不需要捕获异常
WHEN OTHERS
THEN
NULL;
END;
END LOOP;
COMMIT;
END;