SQL Server Express をバックエンド データベースとして使用する Java EE アプリケーションがあります。新しいバージョンをデプロイするときは、データベースを変更する必要があります: テーブルの追加、列の追加、列の削除、テーブルの結合、列の結合など。
今日までオフライン SQL スクリプトを使用してデータベースを変更していましたが、このソリューションはスケーラブルではなく、非常にエラーが排除されています。
@PostConstruct で装飾されたメソッドを持つシングルトン スタートアップ Bean を使用して、展開中にシステムによって使用されるデータを追加および削除します。
DML ステートメントも発行して、デプロイ中にデータベースをアップグレードし、SQL スクリプトを完全に削除できるようにします。
- 誰かがそれをやろうとしましたか、それは良い方向ですか?
- entityManager.unwrap メソッドを使用するか、JDBC DataSource リソースをシングルトン スタートアップ Bean に単純に注入する必要がありますか?