この記事では、例を使用して MySQL トリガーの構文とアプリケーションを説明します。ご参考までに、詳細は以下の通りです。 例: テーブルの追加、削除、変更操作を記録するトリガーを作成する // ユーザー テーブルを作成します。 `user` が存在する場合はテーブルを削除します。 テーブル `user` を作成します ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `account` varchar(255) デフォルト NULL, `name` varchar(255) デフォルト NULL, `address` varchar(255) デフォルト NULL, 主キー (`id`) )ENGINE=InnoDB デフォルト文字セット=utf8; // ユーザー テーブル操作の履歴テーブルを作成します。DROP TABLE IF EXISTS `user_history`; テーブル `user_history` を作成します ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `user_id` bigint(20) NULLではない、 `operatetype` varchar(200) NOT NULL, `operatetime` 日時 NOT NULL、 主キー (`id`) )ENGINE=InnoDB デフォルト文字セット=utf8; DELIMITER: 入力ターミネータを変更します。デフォルトでは、入力ターミネータはセミコロン; です。ここでは、2 つのセミコロン;; に変更します。この目的は、デフォルトのセミコロン ターミネータに遭遇したときに自動的に実行するのではなく、セミコロンを含む複数のステートメントをカプセル化し、すべて入力された後にまとめて実行することです。
入れる: `tri_insert_user` が存在する場合はトリガーを削除します。 区切り文字 ;; 行ごとに `user` の INSERT 後に `tri_insert_user` トリガーを作成します user_history(user_id, operatype, operatime) に INSERT INTO VALUES (new.id, 'ユーザーを追加', now()); 終わり ;; 区切り文字 ; アップデート: `tri_update_user` が存在する場合はトリガーを削除します。 区切り文字 ;; 各行の「user」の更新後に「tri_update_user」トリガーを作成します。 INSERT INTO user_history(user_id,operatetype,operatetime) VALUES (new.id, 'ユーザーを更新する', now()); 終わり ;; 区切り文字 ; 消去: `tri_delete_user` が存在する場合はトリガーを削除します。 区切り文字 ;; 各行の「user」の削除後に「tri_delete_user」トリガーを作成します。 INSERT INTO user_history(user_id, operatype, operatime) VALUES (old.id, 'ユーザーを削除', now()); 終わり ;; 区切り文字 ; MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」 この記事が皆様のMySQLデータベース設計に役立つことを願っています。 以下もご興味があるかもしれません:
|
<<: Alibaba Cloud Server にセキュリティ グループ ルールを追加する詳細な説明 (グラフィック チュートリアル)
1. 現在のホスト名を表示する [root@fangjian ~]# ホスト名ctl 静的ホスト名:...
圧縮アップロード画像、スクラッチカード、ポスター作成、チャートプラグインなど、フロントエンド開発にお...
エラーシナリオcmd の mysql コマンドを使用して、学生情報テーブルにデータを追加します。デー...
目次Vue でのモデルバインド表示の if の v-text の説明v-html: v-オンv-if...
1. テスト環境名前バージョンセント7.6ドッカー18.09.06 2. オンラインインストールここ...
Python バージョンを確認します (python -V)。2.7 未満の場合は、アップグレードす...
エフェクトのスクリーンショット:実装コード:コードをコピーコードは次のとおりです。 <!DOC...
アレイの重複排除は、通常、就職面接中に遭遇し、アレイの重複排除方法のコードを手動で記述することが求め...
理論的には、MySQL によって使用されるメモリ = グローバル共有メモリ + max_connec...
目次01. レンダリングが不要な場合はuseStateを使用する02. リンクの代わりにrouter...
MySQL データ型における DECIMAL の使用法の詳細な説明MySQL のデータ型には、INT...
1. 使用シナリオこのような要件があるため、システムが開発されました。ユーザーがデスクトップを離れ...
結合の種類1. 内部結合: 結合関係を持つ 2 つのテーブル内のフィールドは、結合関係を満たすレコー...
データ内に次のような特徴を持つ「 ' 」などの文字が含まれることがあります。 &# ...
最近私の記事を読んだ人なら誰でも、私が現在WeChatミニプログラムプロジェクトを担当しており、その...