MYSQL を使用する場合、トリガーがよく使用されますが、不適切な使用によって問題が発生する場合があります。トリガーの呼び出しを制御する方法はありますか? トリガーを無効にするにはどうすればいいですか? 1. 2 つの新しいテーブルを作成します。 テーブルdemo_1: テーブル「demo_1」を作成します( `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主キー', `STUNAME` varchar(32) デフォルト NULL コメント '名前', `AGE` tinyint(4) デフォルト NULL コメント '年齢', 主キー (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=14 デフォルト CHARSET=utf8; テーブル: demo_2 テーブル「demo_2」を作成します( `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主キー', `STU_ID` int(11) デフォルト NULL コメント '学生ID', `MATH` double デフォルト NULL コメント 'score', 主キー (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=11 デフォルト CHARSET=utf8; 2. 次にdemo_1のトリガーを作成します。 `insertTragger` が存在する場合はトリガーを削除します。 区切り文字 ;; 各行の「demo_1」にINSERTした後でトリガー「insertTragger」を作成します。 demo_1 から ID INTO @v1 を選択し、ID で並べ替え、desc limit 1 を指定します。 demo_2(STU_ID, MATH)に値(@v1, 98.5)を挿入します。 終わり ;; 区切り文字 ; 3. トリガーは、demo_1 にデータが追加されると、demo_2 にもデータが自動的に追加されるというものです。 4. しかし、データが入力または出力されるたびにトリガーをトリガーしたくはありません。トリガーしたいときにのみトリガーされるようにしたいのです。 トリガーを書き換えます: `insertTragger` が存在する場合はトリガーを削除します。 区切り文字 ;; 各行の「demo_1」にINSERTした後でトリガー「insertTragger」を作成します。 @enable_trigger = 1 の場合 demo_1 から ID INTO @v1 を選択し、ID で並べ替え、desc limit 1 を指定します。 demo_2(STU_ID, MATH)に値(@v1, 98.5)を挿入します。 終了の場合; 終わり ;; 区切り文字 ; 5. コールトリガー @enable_trigger を 1 に設定します。 demo_1(STUNAME、AGE)にVALUES('Xiao Qiang'、17)を挿入します。 実行後、データエントリ2 Xiaoqiang17がテーブルdemo_1に追加されます。 表demo_2にはデータ2 2 98.5も追加されます 6. トリガーを無効にする @enable_trigger を 0 に設定します。 demo_1(STUNAME、AGE)にVALUES('Xiao Qiang'、17)を挿入します。 実行後: 実行後、データエントリ2 Xiaoqiang17がテーブルdemo_1に追加されます。 テーブルdemo_2にデータが追加されていません 上記により、トリガーの柔軟な呼び出しの問題が解決されます。 要約する 上記は、私がご紹介した MySQL でのトリガーの無効化と起動に関するチュートリアルです。お役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: 関数の分類の詳細な説明とJavascriptでのこのポイントの例
>>: Linux ディスクのシーケンシャル書き込みとランダム書き込みの方法
目次序文インストールと使用方法モジュラー管理Vuex の状態永続性要約する序文Vue 開発では、ユー...
CentOS 8 に Jenkins をインストールするには、root アカウントまたは sudo ...
mysql コマンドを使用して、mysql のインストール パスを表示できます。 # 次の 2 つの...
apache: ポートに基づいて仮想ホストを作成する仮想ホスト(a、b、c)の作成を例に挙げます1)...
この記事では、二次リンクを実現するためのReactの具体的なコードを参考までに共有します。具体的な内...
目次最初2番目Native Js はギャラリー機能を実装します。画像をクリックすると、対応する拡大画...
1. rpm パッケージ経由でインストールされた MySQL サービスmysqldを再起動 /et...
まず、CSS3 の相対的な長さの単位を見てみましょう (詳細なチュートリアルを参照してください)。相...
React の経験がある人なら、コンポーネントインスタンスオブジェクトや DOM オブジェクトを取得...
1. 簡単な紹介Vue.js を使用すると、一般的なテキストの書式設定に使用できる独自のフィルターを...
1. 時間差関数(TIMESTAMPDIFF、DATEDIFF) MySQLを使用して時間差を計算...
この記事はmysqlデータベースです質問 1 表 1 のデータを表 2 にインポートします。表 1 ...
CentOS 8 ではソフトウェア パッケージのインストール プログラムが変更され、yum 構成方法...
この記事では、Vueを使用してショッピングカートの数量を変更する方法を紹介します。具体的な内容は次の...
コードと同様に、テーブルや列にコメントを追加して、他のユーザーがその機能を理解できるようにすることが...