Activerecordの移行を使用してmysqlトリガを作成する方法はありますか?誰かがあなたの経験を共有してくれましたか?ありがとうRailsでの移行を使用してmysqlトリガを作成する方法は?
答えて
SQLを書き込まずにトリガーを作成できる魔法の方法はありません。
しかし、すべての移行でraw SQLを実行できます。
def self.up
execute <<-SQL
CREATE TRIGGER my_trigger ...
SQL
end
次に、適切なトリガーを作成するか、移行に応じて更新する必要があります。
を編集しました:私はちょうどrails_on_pgを見つけました。これは移行の助けになります。
PgSQL以外のデータベースサーバでは動作しません。しかし、いくつかのMySQLトリガーヘルパーを書くことができれば、それは良いリードになるかもしれません。
hairtriggerという名前の宝石があります。この宝石は、少し簡単で移植性の高いものです(mysql/sqlite/postgres)。 dbアグノスティックな方法でマイグレーションのトリガーを作成したり、モデルでそれらを宣言したり、rake db:generate_trigger_migrationを実行して実行することができます。
rake db:migrate
:我々はsqliteのに失敗しSQLite3のと私たちのmigrateコマンドを使用している場合、それは、開発環境では動作しない場合がありますカスタムSQLを置く場合
この宝石は古いです - Rails 3.0.x.しかし、アイデアは素晴らしいです。 –
最新のバージョンのレールをサポートするようにgemがアップデートされました –
Jonあなたの宝石は素晴らしいです。 pgインデックスを生成することを知っていますか? – zabumba
は
...それが誰かを助けるかもしれないと思いましたdb/scriptsの下の別のファイルにtrigger sqlを作成し、mysql cliでそれらを実行すると便利です。そうすれば、トリガーが変わるときに必要に応じて再実行することができます。
- 1. Railsは、私が使用してRailsの4移行ファイルを作成した移行ファイル
- 2. MSSQLのマージレプリケーションで 'not for replication'を使用してトリガを作成する方法
- 3. トリガを1つのオブザーバブルで使用して別のトリガをトリガする方法
- 4. Scaffoldingを使用しないでRuby on Railsでデータベース移行を作成する方法
- 5. Rails:ドロップテーブルカスケード移行の作成
- 6. 埋め込みmysqlを使用したトリガの作成
- 7. PHPとMySQLを使用してユーザープロファイルを作成する方法
- 8. Javaを使用してMySQLログを作成する方法
- 9. mysqlダンプファイルを作成し、WordPressサイトの移行を編集する方法
- 10. mysqlトリガで条件行をスキップする方法は?
- 11. カラムタイムスタンプのデフォルトのcurrent_dateを使用してmysqlテーブルを作成する方法は?
- 12. Rails 3での移行を使用して追加する項目の順序を指定する方法は?
- 13. Laravelでphp artisanを使用してデータベースビューの移行を作成する方法は?
- 14. ActiveScaffold Railsプラグイン(http://github.com/activescaffold)を使用してカスタムドロップダウンを作成する方法は?
- 15. mysqlを使ってsqlalchemyスクリプトを実行してデータベースを作成する方法
- 16. サーバに格納されたRスクリプトを実行するMySQL(Xampp Server)でトリガを作成する方法は?
- 17. webservicesとMySQLを使用してJavaバックエンドを作成する方法は?
- 18. DBFlowを使用して移行を行う方法は?
- 19. javascriptを使用してmdl-menuをトリガする方法は?
- 20. MySQLを使用してクエリ内で条件を作成する方法
- 21. SQLでC#を使用してトリガを使用して既存の行を更新する方法
- 22. MySQLトリガを使用してlast_modifiedデータでテーブルを更新する
- 23. トリガpl/sqlをトリガした行を描画する方法は?
- 24. MySQLのRails移行照合
- 25. Railsを使用してMYSQLデータベースに手動で接続する方法は?
- 26. Rails 3 longtextを使用した移行
- 27. PHPを使用してMySQLでテーブルを作成するには?
- 28. トリガされたテーブルへの参照を使用してTRIGGERを作成する方法はありますか?
- 29. C++:クラス内でmysql接続を作成して使用する方法
- 30. Rails 3 Routing - スコープを使用して管理者プレフィックスを作成する方法
ありがとう、あなたのリソースのために、私はそれが存在していたことを知らなかった:) –
今すぐ 'rails_on_pg'への参照を削除してください:)最後の更新は6年前でした:) – bbozo