На даний момент логіка працює таким чином, що коли обновляється персона, і якщо в неї міняється personTypeId, то створюється новий рядок, і пересетуються всі йдішки зі всіх таблиць, де є person_id.
Прийшов до висновку, що така логіка погана, оскільки нова персона - нові звязки.
Тому всі оці речі
update q_dt_ordernewemployee set person_id=n_person_id where person_id=old.id;
update q_dt_ordernewstudentitem set person_id=n_person_id where person_id=old.id;
update q_ob_degree set person_id=n_person_id where person_id=old.id;
update q_ob_employee set person_id=n_person_id where person_id=old.id;
update q_od_absence set person_id=n_person_id where person_id=old.id;
update q_od_employeeprofession set person_id=n_person_id where person_id=old.id;
update q_od_personaddress set person_id=n_person_id where person_id=old.id;
update q_od_personaward set person_id=n_person_id where person_id=old.id;
update q_od_personcontact set person_id=n_person_id where person_id=old.id;
update q_od_personeducation set person_id=n_person_id where person_id=old.id;
update q_od_personenrolsubject set person_id=n_person_id where person_id=old.id;
update q_od_personfamily set person_id=n_person_id where person_id=old.id;
update q_od_personlanguage set person_id=n_person_id where person_id=old.id;
update q_od_personname set person_id=n_person_id where person_id=old.id;
update q_od_personpaper set person_id=n_person_id where person_id=old.id;
update q_od_personpension set person_id=n_person_id where person_id=old.id;
update q_od_personwork set person_id=n_person_id where person_id=old.id;
потрібно видалити.
Як це зробити?
Написати нову міграцію для liquibase
в цьому файлі
../ums-backend/is-lnu-migrations/src/main/resources/migrations/v-0.9.0.1/2015-02-16--03-triggers.xml
Хто буде робити - потрібно буде розібратись як писати міграції.
На даний момент логіка працює таким чином, що коли обновляється персона, і якщо в неї міняється personTypeId, то створюється новий рядок, і пересетуються всі йдішки зі всіх таблиць, де є person_id.
Прийшов до висновку, що така логіка погана, оскільки нова персона - нові звязки.
Тому всі оці речі
update q_dt_ordernewemployee set person_id=n_person_id where person_id=old.id;
update q_dt_ordernewstudentitem set person_id=n_person_id where person_id=old.id;
update q_ob_degree set person_id=n_person_id where person_id=old.id;
update q_ob_employee set person_id=n_person_id where person_id=old.id;
update q_od_absence set person_id=n_person_id where person_id=old.id;
update q_od_employeeprofession set person_id=n_person_id where person_id=old.id;
update q_od_personaddress set person_id=n_person_id where person_id=old.id;
update q_od_personaward set person_id=n_person_id where person_id=old.id;
update q_od_personcontact set person_id=n_person_id where person_id=old.id;
update q_od_personeducation set person_id=n_person_id where person_id=old.id;
update q_od_personenrolsubject set person_id=n_person_id where person_id=old.id;
update q_od_personfamily set person_id=n_person_id where person_id=old.id;
update q_od_personlanguage set person_id=n_person_id where person_id=old.id;
update q_od_personname set person_id=n_person_id where person_id=old.id;
update q_od_personpaper set person_id=n_person_id where person_id=old.id;
update q_od_personpension set person_id=n_person_id where person_id=old.id;
update q_od_personwork set person_id=n_person_id where person_id=old.id;
потрібно видалити.
Як це зробити?
Написати нову міграцію для liquibase
в цьому файлі
../ums-backend/is-lnu-migrations/src/main/resources/migrations/v-0.9.0.1/2015-02-16--03-triggers.xml
Хто буде робити - потрібно буде розібратись як писати міграції.