問題タブ [mysql-error-1442]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - mysqlのトリガーで同じ行を更新する
テーブルがありSCHEDULES_CLASS
、そのフィールドの 2 つはCLASS_ID
(CLASS テーブルからの外部キー)、STATUS
およびNUMBER_OF_ENROLLED_STUDENTS
です。CLASS
MAX_SEATS として 1 つのフィールドを持つ他のテーブルがあります。
NUMBER_OF_ENROLLED_STUDENTS
予定されたクラスの がそれぞれのクラスの利用可能と等しい場合、そのステータスを初期ステータスの「OPEN」から「FULL」MAX_SEATS
に変更する必要があります。SCHEDULES_CLASS
この目的のために、次のようにトリガーを作成しました。
phpmyadmin を使用していますが、SCHEDULED_CLASS テーブルで更新が行われると、次のエラーが発生します。
このタスクを達成する方法はありますか? つまり、登録済みの学生数が利用可能な最大席数に達するたびに、スケジュールされたクラスのステータスを「FULL」に更新します。
ありがとう
mysql - このストアド関数/トリガーを呼び出したステートメントによって既に使用されているため、ストアド関数/トリガーのテーブル'tbl'を更新できません
私がやりたいのは、テスト目的でテーブルに手動でいくつかの行を追加することです。しかし、追加しようとすると、以下のエラーが発生します
#1442-ストアド関数/トリガーのテーブル'tbl'は、このストアド関数/トリガーを呼び出したステートメントによって既に使用されているため、更新できません。
テーブル構造
引き金
データを追加するにはどうすればよいですか?
mysql - エラー1442「テーブルを更新できません」
私はこのトリガーを持っています:
エラー:#1442-このストアド関数/トリガーを呼び出したステートメントによって既に使用されているため、ストアド関数/トリガーのテーブル'wyjscia'を更新できません。
この問題の解決策はありますか?:(
mysql - トリガー - エラー #1442 更新できません [MYSQL]
重複の可能性:
MySQL トリガーは、トリガーが割り当てられている同じテーブル内の行を更新できません。推奨される回避策は?
このトリガーにはいくつか問題があります。
エラー:
1442 - このストアド関数/トリガーを呼び出したステートメントで既に使用されているため、ストアド関数/トリガーのテーブル payment_out を更新できません。
「new.o.how_much_to_pay」のようなものを作成すると、new.o.how_much_to_pay という名前の列が表示されないと表示されます。何か案は?
mysql - 2 つのフィールドを合計し、その結果を MySQL テーブルの 3 番目のフィールドに自律的に格納するにはどうすればよいですか?
2 つのフィールドを合計し、合計値で3 番目のフィールドを更新する単純なUPDATE AFTER INSERT
トリガーを作成しました。DECIMAL(10,2)
DECIMAL(10,2)
トリガーコードは次のとおりです。
phpMyAdmin を使用して SQL コマンドを実行しているので、トリガーが正常に作成されていることがわかります。さらに、UPDATE buybox_rec SET total_cost = (price+shipping_cost);
SQL ステートメントを単独で実行すると、期待どおりに動作します。(フィールド名の前後にバックティックを使用して同じコードも試しましたが、それが機能する場合、これをすべて書くことはありません)
問題は、新しい行を挿入すると、トリガーが機能せず、次のエラーがスローされることです。
このエラーは、ある種の再帰参照または循環参照の問題のように見えますが、問題の場所/内容がわかりません。
また、ストアド プロシージャを作成し、トリガー内から呼び出して同じ結果を取得しようとしましたが、同じエラーが発生しました。
MySQL UPDATEトリガーに関連する他のSOの質問をたくさんチェックし、グーグルで調べましたが、ここにあります.
これは MySQL の範囲外ですか? 許可するのは、非常に一般的で簡単なタスクのようです。
このタスクを自律的に達成する方法を知っている人はいますか? (別名、たとえば、PHP を介して事後にフィールドを合計することについて聞きたくありません)
助けてくれてありがとう