Även om det inte är klart exakt vad du avser med uttalandet "använd trigger för att skapa främmande nyckel", är ditt nuvarande problem att SELECT INTO
kan inte användas i frågor som returnerar mer än ett resultat.
SELECT 1 INTO has_row FROM teacher INNER JOIN content ON content.teacher_id=teacher.teacher_id;
returnerar VARJE matchning mellan de två tabellerna.
Om du försökte kontrollera om teacher
innehåller teacher_id
värde som används i det nya content
record, bör du bara kunna släppa JOIN-satsen helt och bara fråga så här:
SELECT 1 INTO has_row FROM `teacher` WHERE `teacher_id` = NEW.`teacher_id`;