После прочтения Hibernate: hbm2ddl.auto = обновление в работе? возникли некоторые вопросы.
Прежде всего, причина, по которой я использую Hibernate, заключается в том, чтобы быть независимым от поставщика базы данных (не нужно писать 10 версий «одного и того же» запроса sql, например, tsql против sql).
Моя проблема возникает, когда пришло время создавать схемы базы данных (производственная среда). Насколько я вижу, у меня есть две альтернативы.
- hbm2dll = update
- чистые сценарии sql (ddl).
Первая альтернатива широко обсуждается в ветке выше.
Второй вариант плох, потому что это означает, что я вернулся к своей первой проблеме: «Не хочу создавать SQL-операторы, зависящие от поставщика базы данных». (Это утверждение может быть ложным, если «все» (по крайней мере, поддержка Hibernate для баз данных) реализует DDL (Подмножество SQL, используемое для определения и изучения структуры базы данных.) Равно).