Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como usar o gatilho no MySql para fazer chave estrangeira


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`;