Advertisement
Guest User

Untitled

a guest
Jan 24th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. DECLARE
  2. increase NUMBER := 0;
  3. mainUser NUMBER := 0;
  4. sqlRun varchar2 (4000) := 'dual';
  5.  
  6. CURSOR CS IS SELECT MD.HIS_SERVICE_MEDICALTEST_ID AS MD_ID, CG.AD_CHANGELOG_UU AS CG_UU
  7. FROM AD_CHANGELOG CG INNER JOIN HIS_SERVICE_MEDICALTEST MD
  8. ON CG.RECORD_ID = MD.HIS_SERVICE_MEDICALTEST_ID
  9. WHERE AD_Table_ID=1000039
  10. AND AD_COLUMN_ID = 1102194
  11. AND OLDVALUE <> 'NULL'
  12. AND NEWVALUE = 'NULL'
  13. AND MD.MAINUSER1_ID IS NULL
  14. ORDER BY CG.CREATED;
  15.  
  16. BEGIN
  17. DBMS_OUTPUT.ENABLE(NULL);
  18. FOR RES IN CS LOOP
  19. BEGIN
  20. increase := increase + 1;
  21. SELECT AD_CHANGELOG.OLDVALUE INTO mainUser FROM AD_CHANGELOG WHERE AD_CHANGELOG_UU = RES.CG_UU;
  22. sqlRun := 'UPDATE HIS_SERVICE_MEDICALTEST SET MAINUSER1_ID = (SELECT EM.AD_USER_ID FROM HIS_EMPLOYEE EM WHERE EM.HIS_EMPLOYEE_ID = TO_NUMBER(''' || mainUser || '''))
  23. WHERE HIS_SERVICE_MEDICALTEST.HIS_SERVICE_MEDICALTEST_ID = ' || RES.MD_ID || ' ;';
  24. DBMS_OUTPUT.PUT_LINE (sqlRun);
  25. if (MOD( increase, 100) = 0) then
  26. DBMS_OUTPUT.PUT_LINE ('commit;');
  27. end if;
  28. rollback;
  29. EXCEPTION WHEN OTHERS THEN
  30. DBMS_OUTPUT.PUT_LINE ('err:' || SQLCODE || SUBSTR(SQLERRM, 1, 100) || ' - HIS_SERVICE_MEDICALTEST_ID:' || RES.MD_ID);
  31. END;
  32. END LOOP;
  33. END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement