0

nHibernate や Entity Framework などを使用して、テーブルにマップしたオブジェクトを INSERT または UPDATE するために必要な SQL を生成することはできますか? データベースに対して直接実行するのではなく、これらの POCO クラスから SQL スクリプトを生成することを考えています。

ここでのアイデアは、2000 行以上の SQL スクリプトを使用して、多くの作業を行う Python ベースの DSL を作成したことです。これで、IronPython をロードして Python スクリプトを「コンパイル」し、必要なすべてのオブジェクトを生成する C# アプリケーションができました。ここには、約 100 行のプロトタイプ スクリプトがあります。ここで、実際に SQL スクリプトを生成する必要があります。

nVelocity のようなものを使用することもできますが、このプロジェクトが成功した場合、データベースに対して実行するためのドアを長期的に開いたままにしたいと考えています。スクリプトを作成するテーブルごとに数十の列を持つ約 30 のテーブルがあります。

これを見つけましたが、挿入と更新を記述するのではなく、データベース テーブル スキーマを生成しているようです: https://forum.hibernate.org/viewtopic.php?f=25&t=1000334

SchemaExportのドキュメントには多くの情報がありません。

提案/アイデア?

4

1 に答える 1

0

不可能だと思います。スキーマを生成できますが、crudのSQLはその場で生成されます。

テーブルに対して CRUD を実行するための T-sql を生成するツールを使用できます。

于 2010-02-10T16:07:34.827 に答える