Вы здесь

Activities calendar

18 декабря 2018

Динамический SQL и NDS команды PL/SQL на примерах

Пожалуй, написание динамических команд SQL и динамических программ PL/SQL было самым интересным делом из всего, что я когда-либо делал на языке PL/SQL. Конструирование и динамическое выполнение обеспечивает невероятную гибкость. У разработчика появляется возможность создавать обобщенный код с широким спек­тром применения.

MERGE в POstgreSql, эскиз

Oracle statement:
 
 
 
MERGE INTO acme_obj_value d
USING ( SELECT object_id
        FROM   acme_state_tmp
      ) s
ON (d.object_id = s.object_id)
  WHEN matched THEN
    UPDATE SET d.date_value = LEAST(l_dt, d.date_value)
  WHEN NOT matched THEN
    INSERT (d.id, d.object_id, d.date_value)
    VALUES (acme_param_sequence.NEXTVAL, s.object_id, l_dt)
 
 
PostgreSQL statement: