很多數據增量同步功能都是使用時間戳進行實現的,但是有時我們需要批量更新一批人的時間戳來觸發更新操作,但是如果這批人的時間戳都改成一樣的話在分頁同步時會出現問題,下面通過存儲過程實現修改時間戳並保證時間戳是遞增的。
CREATE OR REPLACE PROCEDURE PAMS.updatepersontime(orgId IN VARCHAR2) IS CURSOR person_id IS
SELECT
id
FROM
t_person p ;
personId t_person.id%TYPE;
BEGIN
OPEN person_id;
LOOP
<<loop_block>> FETCH person_id
INTO
personId;
EXIT
WHEN person_id%notfound;
UPDATE
t_person t
SET
t.n_last_update_time =
(SELECT MAX(a.n_last_update_time) + 1 as n_last_update_time FROM t_person a WHERE a.id <> '0' )
WHERE
t.id = personId;
GOTO loop_block;
END
LOOP;
END updatepersontime;