1
0

merge_dtree_map.db2 838 B

1234567891011121314151617181920212223242526272829
  1. /**
  2. * @ Author: Marshall Telaumbanua
  3. * @ Create Time: 2023-06-07 19:52:33
  4. * @ Usage: CALL MWCONFIG.MERGE_DTREE_MAP(GROUP, PATH, NAME, VALUE)
  5. */
  6. CREATE OR REPLACE PROCEDURE MERGE_DTREE_MAP (
  7. IN GROUP VARCHAR(256),
  8. IN PATH VARCHAR(1024),
  9. IN NAME VARCHAR(256),
  10. IN VALUE VARCHAR(256)
  11. )
  12. BEGIN
  13. DECLARE SQL_STMT VARCHAR(4000);
  14. SET SQL_STMT = 'MERGE INTO MWCONFIG.DTREE_MAP AS T ' ||
  15. 'USING (VALUES (''' || GROUP || ''', ''' || PATH || ''', ''' || NAME || ''', ''' || VALUE || ''')) ' ||
  16. 'AS S (GROUP, PATH, NAME, VALUE) ' ||
  17. 'ON (T.GROUP = S.GROUP AND T.PATH = S.PATH AND T.NAME = S.NAME) ' ||
  18. 'WHEN MATCHED THEN ' ||
  19. 'UPDATE SET T.VALUE = S.VALUE ' ||
  20. 'WHEN NOT MATCHED THEN ' ||
  21. 'INSERT (GROUP, PATH, NAME, VALUE) ' ||
  22. 'VALUES (S.GROUP, S.PATH, S.NAME, S.VALUE)';
  23. PREPARE STMT FROM SQL_STMT;
  24. EXECUTE STMT;
  25. END
  26. @