Суррогатный ключ автоматического увеличения в Power Designer

У меня есть концептуальная модель данных в Power Designer, и мне нужен сценарий SQL, который добавляет и управляет суррогатным ключом в моих таблицах измерений, но я не знаю, хороший ли это способ сделать это.

Есть ли другой способ добавить суррогатный ключ и автоматически увеличить их?

Я знаю, что могу использовать опцию Transformations или Custom Check, но я не знаю, что является лучшим решением.


person LPK    schedule 29.05.2018    source источник
comment
Почему вы управляете такими деталями в Концептуальной DM, а не в Физической модели данных?   -  person pascal    schedule 29.05.2018
comment
Я думаю, что для Oracle вы можете создать последовательность и обновить столбец суррогатного ключа этой последовательностью в триггере «Перед вставкой».   -  person pascal    schedule 29.05.2018
comment
Вы правы, я обновил свой CDM и сгенерировал PDM. Спасибо за Ваш ответ !   -  person LPK    schedule 29.05.2018


Ответы (1)


Чтобы наконец дать ответ, согласно комментарию Паскаля

Я создал последовательность:

create sequence SK_SEQUENCES
increment by 1
start with 1
  nomaxvalue
  minvalue 1
nocycle
order
keep;

и добавьте триггер в суррогатный ключ

create or replace trigger incrsk
before insert on schema.table
for each row
   begin
      :new.SKTEST := SK_SEQUENCES.NEXTVAL;
   end;
/

Поэтому каждый раз, когда я добавляю строку в таблицу, SK увеличивается на 1.

person LPK    schedule 26.06.2018