「トリガーを使用して外部キーを作成する」というステートメントで何を意図しているのかは明確ではありませんが、現在の問題はSELECT INTO
です。 複数の結果を返すクエリでは使用できません。
SELECT 1 INTO has_row FROM teacher INNER JOIN content ON content.teacher_id=teacher.teacher_id;
2つのテーブル間のすべての一致を返します。
teacher
かどうかを確認しようとした場合 teacher_id
が含まれています 新しいcontent
で使用されている値 記録すると、JOIN句を完全に削除して、次のようにクエリできるようになります。
SELECT 1 INTO has_row FROM `teacher` WHERE `teacher_id` = NEW.`teacher_id`;