с использованием средства моделирования данных, встроенного в sql Developer 19.4, против базы данных oracle 12 c.
Я добавил пару внешних ключей в диаграмму ERD моделирующего устройства данных, затем щелкнул "syncrhonize" модельер данных с моделью "; затем я заметил, что в сгенерированном DDL, отличном от моих законных изменений, DDL содержат также другие SQL относительно изменений, уже существующих в базе данных; В любом случае я изменил DDL, удалив нежелательные изменения, применил и зафиксировал свои изменения. затем я снова запускаю то же сравнение, и в окне «Сравнение моделей» правильно не отображаются никакие изменения, но ... в DDL уже применены те же изменения, что и в базе данных.
Я также отменил сравнение, сравнивая модель с erd и hit "merge", думая, что это проблема с какой-то ограниченной памятью и т. д. c .., но та же проблема здесь: представление "Compare Models" действительно показывает не chaages, но DDL содержит изменения ??
![enter image description here](https://i.stack.imgur.com/47D3g.png)
и ниже DDL со сценарием изменений, который уже существует в базе данных.
ALTER TABLE gasgendev.audit_errors
ADD CONSTRAINT audit_errors_look_audit_types_fk FOREIGN KEY ( audit_type )
REFERENCES gasgendev.look_audit_types ( audit_type_id )
ON DELETE CASCADE
NOT DEFERRABLE ENABLE VALIDATE;
ALTER TABLE gasgendev.audit_logs
ADD CONSTRAINT audit_logs_look_audit_types_fk FOREIGN KEY ( audit_type )
REFERENCES gasgendev.look_audit_types ( audit_type_id )
ON DELETE CASCADE
NOT DEFERRABLE ENABLE VALIDATE;
ALTER TABLE gasgendev.halo_inputs
ADD CONSTRAINT halo_inputs_look_assets_fk FOREIGN KEY ( look_assets_l_asset_id )
REFERENCES gasgendev.look_assets ( l_asset_id )
ON DELETE CASCADE
NOT DEFERRABLE ENABLE VALIDATE;
ALTER TABLE gasgendev.halo_inputs
ADD CONSTRAINT halo_inputs_look_datasets_fk FOREIGN KEY ( dataset_id )
REFERENCES gasgendev.look_datasets ( l_dataset_id )
ON DELETE CASCADE
NOT DEFERRABLE ENABLE VALIDATE;
ALTER TABLE gasgendev.manual_inputs
ADD CONSTRAINT manual_inputs_look_manual_inputs_fk FOREIGN KEY ( look_manual_inputs_look_manual_input_id )
REFERENCES gasgendev.look_manual_inputs ( look_manual_input_id )
ON DELETE CASCADE
NOT DEFERRABLE ENABLE VALIDATE;
ALTER TABLE gasgendev.manual_inputs
ADD CONSTRAINT manual_inputs_look_datasets_fk FOREIGN KEY ( dataset_id )
REFERENCES gasgendev.look_datasets ( l_dataset_id )
ON DELETE CASCADE
NOT DEFERRABLE ENABLE VALIDATE;
Конечно если я запускаю этот скрипт в SQL разработчику, я получаю сообщения об ошибках, которые уже существуют.
Может кто-нибудь сказать мне, что я делаю здесь неправильно?