TL; DR
Com adicionar chave estrangeira em uma tabela nova:
CREATE TABLE child (ID INT PRIMARY KEY, parent_ID INT, FOREIGN KEY my_fk (parent_id) REFERENCES parent(ID) ON UPDATE NO ACTION ON DELETE NO ACTION);
Com adicionar chave estrangeira em uma tabela existente:
ALTER TABLE child ADD FOREIGN KEY my_fk (parent_id) REFERENCES parent(ID) ON UPDATE NO ACTION ON DELETE NO ACTION;
MySQL tem a habilidade the forçar um registro a existir em uma tabela pai quando você está adicionando / editando ou deletando um registro na tabela filho, isso é chamada de Chave Estrangeira ou Foreign Key.
Como podemos ver acima, você pode tanto criar uma tabela com FK desde o começo ou adicionar ela após a tabela já ter sido criada. Além da sintaxe que refere a coluna na tabela filho e o nome da tabela e coluna na tabela pai que vamos referenciar, é possível controlar o comportamento da tabela …
[Leia mais]