問題タブ [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.

0 投票する
1 に答える
7922 参照

mysql - mysqlのトリガーで同じ行を更新する

テーブルがありSCHEDULES_CLASS、そのフィールドの 2 つはCLASS_ID(CLASS テーブルからの外部キー)、STATUSおよびNUMBER_OF_ENROLLED_STUDENTSです。CLASSMAX_SEATS として 1 つのフィールドを持つ他のテーブルがあります。

NUMBER_OF_ENROLLED_STUDENTS予定されたクラスの がそれぞれのクラスの利用可能と等しい場合、そのステータスを初期ステータスの「OPEN」から「FULL」MAX_SEATSに変更する必要があります。SCHEDULES_CLASS

この目的のために、次のようにトリガーを作成しました。

phpmyadmin を使用していますが、SCHEDULED_CLASS テーブルで更新が行われると、次のエラーが発生します。

このタスクを達成する方法はありますか? つまり、登録済みの学生数が利用可能な最大席数に達するたびに、スケジュールされたクラスのステータスを「FULL」に更新します。

ありがとう

0 投票する
2 に答える
4375 参照

mysql - このストアド関数/トリガーを呼び出したステートメントによって既に使用されているため、ストアド関数/トリガーのテーブル'tbl'を更新できません

私がやりたいのは、テスト目的でテーブルに手動でいくつかの行を追加することです。しかし、追加しようとすると、以下のエラーが発生します

#1442-ストアド関数/トリガーのテーブル'tbl'は、このストアド関数/トリガーを呼び出したステートメントによって既に使用されているため、更新できません。

テーブル構造

テーブル構造

引き金

データを追加するにはどうすればよいですか?

0 投票する
0 に答える
393 参照

mysql - エラー1442「テーブルを更新できません」

私はこのトリガーを持っています:

エラー:#1442-このストアド関数/トリガーを呼び出したステートメントによって既に使用されているため、ストアド関数/トリガーのテーブル'wyjscia'を更新できません。

この問題の解決策はありますか?:(

0 投票する
0 に答える
53 参照

mysql - トリガー - エラー #1442 更新できません [MYSQL]

重複の可能性:
MySQL トリガーは、トリガーが割り当てられている同じテーブル内の行を更新できません。推奨される回避策は?

このトリガーにはいくつか問題があります。

エラー:

1442 - このストアド関数/トリガーを呼び出したステートメントで既に使用されているため、ストアド関数/トリガーのテーブル payment_out を更新できません。

「new.o.how_much_to_pay」のようなものを作成すると、new.o.how_much_to_pay という名前の列が表示されないと表示されます。何か案は?

0 投票する
1 に答える
1480 参照

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 を介して事後にフィールドを合計することについて聞きたくありません)

助けてくれてありがとう