ホームページ > よくある問題 > mysqlトリガーにはパラメータを設定できますか?

mysqlトリガーにはパラメータを設定できますか?

尊渡假赌尊渡假赌尊渡假赌
リリース: 2023-07-25 15:52:13
オリジナル
1756 人が閲覧しました

MySQL トリガーは現在、パラメーターの直接宣言をサポートしていません。トリガーは、テーブルに関連付けられたデータベース オブジェクトです。テーブル内のデータに対する操作に応じて、特定のテーブルに対する一連の操作を定義できます。挿入、更新、または削除操作の場合、MySQL トリガーには明示的なパラメーター宣言がありませんが、トリガーが属するテーブルにカスタム変数を設定することでパラメーターを渡すことができます。

mysqlトリガーにはパラメータを設定できますか?

このチュートリアルのオペレーティング システム: Windows 10 システム、MySQL 8 バージョン、Dell G3 コンピューター。

MySQL では、トリガー (Trigger) はテーブルに関連付けられたデータベース オブジェクトです。テーブルへのデータの挿入に応じて、特定のテーブルに対する一連の操作を定義できます。または削除操作。現在、MySQL トリガーはパラメーターの直接宣言をサポートしていません。

トリガーの定義構文は次のとおりです。

CREATE TRIGGER trigger_name
{BEFORE | AFTER} {INSERT | UPDATE | DELETE}
ON table_name
FOR EACH ROW
trigger_body
ログイン後にコピー

trigger_body では、NEW キーワードを使用して新しく挿入または更新された行を参照でき、キーワードを使用して削除または更新された行を参照できます。 OLD キーワード。OK。これらのキーワードを通じて、トリガー内の操作に関連する行データにアクセスできます。

MySQL トリガーには明示的なパラメーター宣言がありませんが、トリガーが属するテーブルにカスタム変数を設定することでパラメーターを渡すことができます。このように、これらの変数をトリガーの定義で使用して、特定の論理操作を完了できます。

たとえば、テーブルでカスタム変数を定義し、トリガーで使用できます。

SET @my_param = 'some_value';
CREATE TRIGGER my_trigger
AFTER INSERT ON my_table
FOR EACH ROW
BEGIN
    -- 使用 @my_param 来进行逻辑操作
    -- ...
END;
ログイン後にコピー

MySQL トリガーにはパラメーターを直接宣言する機能はありませんが、テーブル レベルのカスタム変数を使用します。同様の機能を実現して、トリガーでパラメーターを渡す効果を実現できます。

以上がmysqlトリガーにはパラメータを設定できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート