ホームページ データベース mysql チュートリアル MySQL触发器trigger之after与before区分_MySQL

MySQL触发器trigger之after与before区分_MySQL

Jun 01, 2016 pm 01:02 PM
引き金

after:是先完成数据的增删改,然后再触发,触发的语句晚于监视的增删改,无法影响前面的增删改动作;也就是说先插入订单记录,再更新商品数量。当商品数量少于订单数量时造成爆库。 before:先完成触发,在进行增删改,触发语句先于监视的增删改,我们就有机会判断,修改即将发生的操作。 案例操作: 触发器使用after: 当某个订单的数量超过库存的数量时会出现库存为负数。造成所谓的爆库问题。

#创建触发器test4
CREATE TRIGGER test4
AFTER
INSERT
ON `ord`
FOR EACH ROW
BEGIN
UPDATE goods SET num= num - new.much WHERE goods_id = new.gid;
END$$
ログイン後にコピー
\

触发器使用before: 先触发,在判断处理之后再进行增删改不会,根据库存修改了订单的最大数量。当然我这只是简单的固定了一个值,其实可以用语句获取到动态的库存值。
#创建触发器test5
CREATE TRIGGER test5
BEFORE
INSERT
ON `ord`
FOR EACH ROW
BEGIN
  IF new.much >26 THEN
     SET new.much = 26;
  END IF;
UPDATE goods SET num= num - new.much WHERE goods_id = new.gid;
END$$
ログイン後にコピー


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

パワーポイントでクリックするまでテキストを非表示にする方法 パワーポイントでクリックするまでテキストを非表示にする方法 Apr 14, 2023 pm 04:40 PM

PowerPoint でクリックする前にテキストを非表示にする方法 PowerPoint スライド上の任意の場所をクリックしたときにテキストを表示したい場合、設定はすばやく簡単です。 PowerPoint でボタンをクリックする前にテキストを非表示にするには: PowerPoint ドキュメントを開き、[挿入] メニューをクリックします。 「新しいスライド」をクリックします。 [空白] または他のプリセットのいずれかを選択します。 [挿入] メニューで [テキスト ボックス] をクリックします。テキスト ボックスをスライド上にドラッグします。テキストボックスをクリックして、あなたの名前を入力してください

PHP を使用して MySQL にトリガーを記述する方法 PHP を使用して MySQL にトリガーを記述する方法 Sep 21, 2023 am 08:16 AM

PHP を使用して MySQL にトリガーを記述する方法 MySQL は一般的に使用されるリレーショナル データベース管理システムであり、PHP は一般的なサーバーサイド スクリプト言語です。 PHP を使用して MySQL にトリガーを記述すると、データベース操作の自動化を実現できます。この記事では、PHP を使用して MySQL トリガーを作成する方法を紹介し、具体的なコード例を示します。開始する前に、MySQL と PHP がインストールされ、対応するデータベース テーブルが作成されていることを確認してください。 1. PHPファイルとデータを作成する

Oracleでトリガーを追加する方法 Oracleでトリガーを追加する方法 Dec 12, 2023 am 10:17 AM

Oracle データベースでは、CREATE TRIGGER ステートメントを使用してトリガーを追加できます。トリガーは、データベース テーブルに 1 つ以上のイベントを定義し、イベントの発生時に対応するアクションを自動的に実行できるデータベース オブジェクトです。

PHP を使用して MySQL でカスタム トリガーとストアド プロシージャを作成する方法 PHP を使用して MySQL でカスタム トリガーとストアド プロシージャを作成する方法 Sep 20, 2023 am 11:25 AM

PHP を使用して MySQL でカスタム トリガーとストアド プロシージャを作成する方法 はじめに: アプリケーションを開発するとき、多くの場合、データの挿入、更新、削除など、データベース レベルでいくつかの操作を実行する必要があります。 MySQL は広く使用されているリレーショナル データベース管理システムであり、PHP は一般的なサーバー側スクリプト言語です。この記事では、PHP を使用して MySQL でカスタム トリガーとストアド プロシージャを作成する方法を紹介し、具体的なコード例を示します。 1. トリガーおよびストアド プロシージャ トリガー (Trigg

mysqlトリガーはどのレベルですか? mysqlトリガーはどのレベルですか? Mar 30, 2023 pm 08:05 PM

MySQL トリガーは行レベルです。 SQL 標準によれば、トリガーは次の 2 つのタイプに分類できます: 1. 行レベルのトリガー、変更されたデータ行ごとに 1 回アクティブ化されます。ステートメントが 100 行のデータを挿入すると、トリガーは 100 回呼び出されます。 . ステートメントレベルのトリガー トリガーはステートメントごとに 1 回アクティブ化され、100 行のデータを挿入するステートメントはトリガーを 1 回だけ呼び出します。 MySQL は行レベルのトリガーのみをサポートし、プリペアドステートメントレベルのトリガーはサポートしません。

Python を使用して MySQL でカスタム トリガーを作成する方法 Python を使用して MySQL でカスタム トリガーを作成する方法 Sep 20, 2023 am 11:04 AM

Python を使用して MySQL でカスタム トリガーを作成する方法 トリガーは、データベース内のテーブルに対して自動的に実行される操作を定義できる MySQL の強力な機能です。 Python は、MySQL と簡単に対話できる、簡潔で強力なプログラミング言語です。この記事では、Python を使用してカスタム トリガーを作成する方法を紹介し、具体的なコード例を示します。まず、PyMySQL ライブラリをインストールしてインポートする必要があります。これは、Python が MySQL データベースを操作する方法です。

C# を使用して MySQL でカスタム ストアド プロシージャ、トリガー、関数を作成する方法 C# を使用して MySQL でカスタム ストアド プロシージャ、トリガー、関数を作成する方法 Sep 20, 2023 pm 12:04 PM

C# を使用して MySQL でカスタム ストアド プロシージャ、トリガー、関数を作成する方法 MySQL は広く使用されているオープン ソースのリレーショナル データベース管理システムであり、C# はデータベースとの対話を必要とする開発タスク用の強力なプログラミング言語です。選択肢。 MySQL では、C# を使用してカスタム ストアド プロシージャ、トリガー、関数を作成し、より柔軟で強力なデータベース操作を実現できます。この記事では、C# を使用して記述および実行する方法について説明します。

MySQL トリガーを使用してデータの自動アーカイブを実装する方法 MySQL トリガーを使用してデータの自動アーカイブを実装する方法 Aug 02, 2023 am 10:37 AM

MySQL トリガーを使用してデータの自動アーカイブを実装する方法 はじめに: 最新のデータ管理の分野では、データの自動アーカイブとクリーニングは重要かつ一般的な要件です。データ量が増加すると、完全な履歴データを保持するとストレージ リソースが過剰に占有され、クエリのパフォーマンスが低下します。 MySQL トリガーは、この要件を達成する効果的な方法を提供します。この記事では、MySQL トリガーを使用してデータの自動アーカイブを実現する方法を紹介します。 1. MySQL トリガーとは何ですか? MySQL トリガーは特別な種類のメモリです。

See all articles