私は、HibernateとMySQLを使用するレガシーアプリケーションを開発中です。私のDBテーブルの1つでは、重複する外部キーの制約があります。名前は次のようなものです:データベースから外部キー名を変更すると、hibernateにどのような影響がありますか?
- FK3EBE45E8C4027E24
- FK3EBE45E8F5ADD75E
今、私は1つのインデックスを削除し、唯一のデータベースから別の名前を変更したいです。休止状態の機能に影響はありますか?
私は、HibernateとMySQLを使用するレガシーアプリケーションを開発中です。私のDBテーブルの1つでは、重複する外部キーの制約があります。名前は次のようなものです:データベースから外部キー名を変更すると、hibernateにどのような影響がありますか?
今、私は1つのインデックスを削除し、唯一のデータベースから別の名前を変更したいです。休止状態の機能に影響はありますか?
ん
Hibernateのコードに影響があってはなりません。列の追加/削除/名前の変更、データ型の変更など、テーブルの構造を変更した場合にのみ、DTOを変更する必要があるため、影響があります。 MySQLインデックスはHibernateの抽象です。 Hibernateはインデックスがあるかどうか気にしません。クエリが作成され、データベースに送信されます。
制約の名前を変更すると、自動スキーマの更新(作成)にのみ影響します。 Hibernateは名前で制約を削除しようとし、例外を生成しようとします。これは問題ではありません(Hibernate 5では、他のバージョンについて知らないので)、スキーマの更新は停止しません。
自動スキーマ更新を使用しない場合、問題は発生しません。