Embora não esteja claro o que exatamente você pretende com a instrução "use trigger to make Foreign Key", seu problema atual é que
SELECT INTO
não pode ser usado em consultas que retornam mais de um resultado. SELECT 1 INTO has_row FROM teacher INNER JOIN content ON content.teacher_id=teacher.teacher_id;
retorna TODAS as correspondências entre as duas tabelas. Se você estava tentando verificar se
teacher
contém o teacher_id
valor sendo usado no novo content
registro, você deve ser capaz de descartar a cláusula JOIN completamente e apenas consultar assim:SELECT 1 INTO has_row FROM `teacher` WHERE `teacher_id` = NEW.`teacher_id`;