MySQLトリガーの簡単な例 文法 CREATE TRIGGER <トリガー名> -- トリガーには、最大 64 文字の名前を付ける必要があります。名前の後に区切り文字を続けることもできます。名前は、MySQL の他のオブジェクトとほぼ同じように付けられます。 { BEFORE | AFTER } -- トリガーには実行時間設定があり、イベント発生前または発生後に設定できます。 { INSERT | UPDATE | DELETE } -- トリガーするイベントを設定することもできます。挿入、更新、または削除の実行中にトリガーできます。 ON <テーブル名> -- トリガーは特定のテーブルに属します。このテーブルで挿入、更新、または削除操作が実行されると、トリガーがアクティブになります。同じテーブルの同じイベントに 2 つのトリガーを割り当てることはできません。 FOR EACH ROW -- トリガー実行間隔: FOR EACH ROW 句は、トリガーに対して、テーブル全体に対して 1 回ではなく、1 行おきにアクションを実行するように指示します。 <トリガー SQL ステートメント> -- トリガーには、トリガーされる SQL ステートメントが含まれます。ここでのステートメントは、複合ステートメントを含む任意の有効なステートメントにすることができますが、ここでのステートメントの制限は関数の場合と同じです。 --トリガー (CREATE TRIGGER) を作成するには相当の権限が必要ですが、すでに root ユーザーである場合はそれで十分です。これは SQL 標準とは異なります。 例 例1: テーブル tab1 を作成 tab1が存在する場合はテーブルを削除します。 テーブルを作成 tab1( tab1_id varchar(11) ); テーブル tab2 を作成 tab2が存在する場合はテーブルを削除します。 テーブル tab2 を作成します ( tab2_id varchar(11) ); トリガーを作成する: t_afterinsert_on_tab1 機能: tab1テーブルにレコードを追加すると、レコードは自動的にtab2テーブルに追加されます。 t_afterinsert_on_tab1 が存在する場合はトリガーを削除します。 トリガー t_afterinsert_on_tab1 を作成する タブ1に挿入後 各行ごとに 始める tab2(tab2_id) に値(new.tab1_id) を挿入します。 終わり; 試してみる tab1(tab1_id) に値('0001') を挿入します。 結果を見る tab1から*を選択します。 tab2から*を選択します。 例2: トリガーの作成: t_afterdelete_on_tab1 機能: tab1 テーブルのレコードを削除すると、tab2 テーブルの対応するレコードも自動的に削除されます。 t_afterdelete_on_tab1 が存在する場合はトリガーを削除します。 トリガー t_afterdelete_on_tab1 を作成する タブ1の削除後 各行ごとに 始める tab2_id=old.tab1_id の tab2 から削除します。 終わり; 試してみる tab1_id='0001' の場合、tab1 から削除します。 結果を見る tab1から*を選択します。 tab2から*を選択します。 読んでいただきありがとうございます。お役に立てれば幸いです。このサイトをサポートしていただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: Nginx を使用して DoNetCore を Alibaba Cloud にデプロイする方法
>>: Nodejs 配列キューと forEach アプリケーションの詳細な説明
Portainer は、ステータス表示パネル、アプリケーション テンプレートの迅速な展開、コンテナ ...
div を使用してマスクを作成したり、ポップアップ ウィンドウをシミュレートしたりします。ただし、I...
grubの起動時間を変更するためのオンライン検索は基本的に/etc/default/grubを変更す...
この記事では、天気予報機能を実現するためのVueの具体的なコードを参考までに共有します。具体的な内容...
この記事では主に、ElementUI テーブルのヘッダー アイコンにフローティング プロンプトを追加...
監視ホストの追加ホスト 192.168.179.104 が zabbix 監視項目に追加されます (...
目次マウスジョイント マウスジョイント距離ジョイント距離ジョイントモータージョイント直動ジョイント変...
目次前提条件テストページの設定書き換えルールの作成命名規則モードの定義アクションの定義設定ファイル内...
目次JSBridgeの起源JSBridgeの双方向通信原理JSはネイティブを呼び出すネイティブコール...
最適化のアイデア最適化には主に 2 つの方向があります。再レンダリングの回数を減らします。 Reac...
この記事では、参考までに簡単なタイマーを実装するためのJavaScriptの具体的なコードを紹介しま...
sudo コマンドを使用すると、信頼できるユーザーは別のユーザー (デフォルトでは root ユーザ...
目次初期化初期化状態()初期化プロパティ()初期化データ()観察する()オブザーバーリアクティブを定...
目次font-faceでフォントを正しく宣言するフォントをプリロードするフォントをホストするにはli...
MySQL の explain コマンドは SQL のパフォーマンスを分析できます。その 1 つが ...