Отпускает ли hibernate «автоматическое обновление схемы» что-либо, что ему не принадлежит? - PullRequest
0 голосов
/ 12 июня 2018

У меня есть несколько проектов, каждый из которых имеет свои собственные сущности, индексы и т. Д. (С использованием данных Spring, но основным поставщиком JPA является Hibernate 5.0.12).Допустим, у проекта A есть сущности / таблицы T и U, а у проекта B есть сущности / таблицы V и W, и оба проекта подключаются к одной и той же базе данных MySQL.Если я установлю hibernate.ddl-auto: update для каждого из проектов, будут ли эти проекты мешать друг другу?Будет ли проект А когда-нибудь видеть таблицы V и W и думать: «Эй, эти таблицы не в моей схеме, я от них избавлюсь»?

Есть ли еще какие-то ошибки, о которых я должен знать при подключении?несколько схем гибернации с автоматическим обновлением до той же базы данных MySQL?В конце концов, когда мы сделаем наше производственное развертывание, мы создадим один большой унифицированный «модельный» проект, и все проекты будут иметь его как зависимость, но пока мы создаем прототипы, гораздо быстрее просто вставить нужные сущности в соответствующий проект - но неесли это вызовет проблемы!

1 Ответ

0 голосов
/ 12 июня 2018

Я настоятельно советую вам прочитать больше об этом здесь: https://docs.spring.io/spring-boot/docs/current/reference/html/howto-database-initialization.html

, но чтобы ответить на ваш вопрос: Нет, ничего не упадет. .

Процедура обновления будет искать все столбцы, которые она может создать , а затем создавать их.Даже изменение типа базы данных (например, от int до string) невозможно.

В таких случаях настоятельно рекомендуется использовать такой инструмент, как Flyway или Liquibase.https://flywaydb.org https://www.liquibase.org

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...