Na aula, o professor descreveu o aluno_id e mais uma variável como sendo Primary Keys, mas isso é realmente necessário se posteriormente ele indica que ambos campos são FKS e na tabela mãe são PKS?
Na aula, o professor descreveu o aluno_id e mais uma variável como sendo Primary Keys, mas isso é realmente necessário se posteriormente ele indica que ambos campos são FKS e na tabela mãe são PKS?
Oi, Rodrigo, tudo bem?
Depende! No contexto da aula, estávamos trabalhando com dois campos (aluno_id
e curso_id
) que, ao serem unidos, representam uma chave primária composta na tabela aluno_curso
. Para deixar explícito que a união destes dois campos torna cada registro único, foi necessário escrever PRIMARY KEY (aluno_id, curso_id)
.
E como aluno_id
e curso_id
fazem referência a duas outras tabelas, também foi preciso caracterizá-los como chaves estrangeiras.
Em um cenário hipotético no qual, por exemplo, temos apenas uma chave estrangeira em nossa tabela, não precisamos utilizar a constraint de PRIMARY KEY
.
Espero ter ajudado, Rodrigo! Caso queira se aprofundar neste assunto, recomendo a leitura do material abaixo:
Caso surjam outras dúvidas, fico à disposição.
Um abraço!