Liquibase столбец типов данных беспорядок - PullRequest
0 голосов
/ 09 февраля 2012

У меня есть существующая база данных в производстве.Я экспортировал схему с помощью liquibase и создал базовый скрипт, который будет использоваться при установке для нового клиента.Liquibase экспортировал все мои столбцы идентификаторов в mssql как BIGINT, но на самом деле они были ЦИФРОВЫМИ в базе данных.

Теперь, когда я добавляю скрипт обновления, который создает новую таблицу и ключ foreight к старой таблице, яполучаю сообщение об ошибке: Столбец не совпадает с типом данных, на который ссылается столбец во внешнем ключе.

Что происходит, если у клиента, который будет только обновлять (и не будет чистой установки), будет столбец NUMERIC в базе данных, и онбудет конфликтовать с новым столбцом BIGINT.

Вопрос в том, что мне делать, потому что для каждого типа базы данных это также разные типы.Я потерян

1 Ответ

0 голосов
/ 06 марта 2012

Работа экспорта схемы состоит в том, чтобы получить начальную точку для changeLog.Следующая версия liquibase ориентирована на улучшение поддержки экспорта, но даже при этом будут существовать различия между типом экспортируемой базы данных и тем, что вы «имеете в виду», особенно в смысле перекрестной базы данных.

Обычно используется вызов метода generateChangeLog, а затем чтение того, что создано, и изменение его по мере необходимости для исправления типов данных и т. Д. На основе вашего понимания базы данных.С этого момента вы выполняете нормальный поток ликвидазы, добавляя вручную ваш changeLog, когда вам нужны изменения базы данных, а затем запускаете измененный журнал изменений для базы данных.

...