У нас был smiliar подход. У нас был один XML-файл в таблице, чтобы иметь хороший обзор по каждой таблице и ее столбцам. Было обнаружено, что, когда нам нужно было реорганизовать (например, добавить новые столбцы, перенести некоторые данные, добавить новые FK), наш дБ, некоторые проблемы. Возможность увидеть то, что принадлежит одной таблице, и порядок выполнения находятся в конфликте друг с другом. Мое лучшее (но все еще грязное) решение состояло в том, чтобы запустить один новый xml-файл с именем migration_X.xml со всеми changeSets для добавления столбцов, копирования некоторых данных, добавления новых ограничений или FK. Если я хочу увидеть определение одной таблицы, я создаю DDL.
Почему вы не просто переупорядочиваете их в XML-файле? –
мы не переупорядочиваем их в xml, потому что мы обновляем наш журнал изменений в отдельных XML-файлах для каждой таблицы, которые включают в себя таблицы изменения таблицы create, create index, create foreighn key и т. Д. , и поскольку у нас есть некоторые таблицы круговой зависимости, мы хотите, чтобы набор изменений запускался в другом порядке, чем они написаны. Возможно ли это? – Nava
Затем измените порядок их включения: сначала создайте все XML-таблицы 'create table' (при условии, что они включают определение PK), затем все XML-шаблоны' create index' и, наконец, все внешние XML-ключи (поскольку в это время будут созданы все таблицы). Это единственный способ разбить скрипты, которые касаются ссылок на круговые внешние ключи –