NHibernate SchemaExportを使用してSQLiteデータベースを作成しています。私はデータベースに更新、削除、挿入トリガを追加する必要があります。これはNHibernateで可能ですか、手動でトリガを作成するためにSQLスクリプトを実行する必要がありますか?NHibernateを介したSQLiteトリガーの作成
1
A
答えて
0
いくつかの調査の後、セッション接続を取得することが可能であることを認識し、そこから任意のDDLコマンドを実行できます。私の場合、それは次のようになります。
var commandText = new StringBuilder();
var command = session.Connection.CreateCommand();
commandText.AppendLine("CREATE TRIGGER books_insert_trg AFTER INSERT ON books ");
commandText.AppendLine("BEGIN");
commandText.AppendLine("UPDATE books SET sort=title_sort(NEW.title),uuid=uuid4() WHERE id=NEW.id;");
commandText.AppendLine("END");
command.CommandText = commandText.ToString();
command.ExecuteNonQuery();
2
あなたはコードでマッピングのためにAuxiliary Database Objects
を使用する必要がある、あなたは、マッパーからコンパイルHbmMapping
に直接追加する必要があります。
mappingDocument.databaseobject =
new[]
{
new HbmDatabaseObject
{
Items = new object[]
{
new HbmCreate { Text = new[] { "CREATE TRIGGER ..." } },
new HbmDrop { Text = new[] { "DROP TRIGGER ..." } } }
}
};
関連する問題
- 1. ラケットを介したファイルの作成
- 2. NHibernateを使用したSQLiteデータベースを1回だけ作成する
- 3. 挿入を防ぐsqliteデータベースのトリガーを作成する
- 4. JSラッパーでsqliteのトリガーを作成する方法を
- 5. Pythonを介したSQLiteの速さ
- 6. SQLIteデータベースを介したオブジェクトへのアクセス
- 7. NHibernateを使用したテーブルの作成
- 8. nhibernate - 中間テーブルを介した条件
- 9. jQueryを使用したイベント作成/トリガー
- 10. sqliteのは:moveToFirstは標準SQLiteのカーソルを作成した後
- 11. SQLトリガーの紹介?
- 12. トリガー私はこのように動作し、トリガー作成した削除
- 13. なぜ私はSQLiteのVIEWでトリガーを作成しますか?実行時
- 14. SQLiteユニットのテストNHibernateで生成されたカスケード関係
- 15. jQuery mobileトリガー作成がDOMを介して追加された要素で完全に機能しない
- 16. NHibernate、SQLite、ATTACH DATABASE
- 17. Fluent NHibernate with SQLite
- 18. sqliteテーブルの作成
- 19. AndroidのSQLiteのトリガーのトラブル
- 20. データを分割し、私はトリガーを作成したい
- 21. iCloudを介したSQLiteの更新伝播の待ち時間
- 22. NHibernateスキーマのエクスポートでOracleトリガーを生成するには?
- 23. Oracle 11gでトリガーを作成
- 24. Oracleトリガー作成の問題
- 25. 数値変数を使用したSQLトリガーの作成
- 26. メモリ内SQLiteとNHibernate
- 27. Eclipse:Apache Axis2とTomcatサーバー7を介したWebサービスの作成
- 28. SQLiteテーブル作成エラー
- 29. sqlite、テーブルが最大レコード数に達したときのトリガー
- 30. ? Pythonを介したSQLiteクエリで見られない
はい、それはより良い解決策であると思われますが、トリガーの作成をマッピングと一緒に置くことです。しかし、私は問題があります。私はコード(NHibernateの流暢ではない)によるマッピングでNHibernate 3.2を使用しています。私はこのようにする方法を理解することができません。何らかのサンプルコードで、XMLマッピングなしでこれをどうやって行うのですか? – zszep