-
Title:
Foreign Keys - Intro to Relational Databases
-
Description:
-
Na terminologia dos bancos de dados, uma coluna
com um limite de referências
-
também é chamada de chave estrangeira.
-
Isso sempre soou um
pouco estranho para mim,
-
como se fosse a chave de um cadeado
do outro lado do oceano, mas
-
uma chave estrangeira é apenas uma coluna ou
um conjunto de colunas em uma tabela,
-
que identifica exclusivamente
uma linha em outra tabela.
-
É possível que
-
uma tabela tenha duas ou mais chaves
estrangeiras, na verdade, isso é bem comum.
-
Por exemplo, considere um banco de dados de
notas de alunos em vários cursos.
-
Aqui temos uma tabela de nomes de alunos
e seus números de ID.
-
E a ID é uma chave primária
porque os nomes não são únicos.
-
E temos uma tabela de cursos, com
nomes de curso e IDs de curso também.
-
E temos a tabela de notas,
-
que tem chaves estrangeiras
em ambas as tabelas.
-
Aqui estão as mesmas tabelas,
mas dessa vez detalhadas.
-
Geralmente, uma chave estrangeira apontará para
a chave primária da tabela referenciada.
-
Isso porque o sentido de
uma chave estrangeira é identificar exclusivamente
-
uma linha na tabela referenciada, e
a chave primária da tabela faz isso.
-
Agora temos aqui um teste.
-
Essas tabelas são para
-
um aplicativo de fórum mais complexo
do que o que trabalhamos na lição passada.
-
Este aplicativo permite que os usuários façam logon e
postem comentários e
-
também votem nas postagens de outras pessoas.
-
Observe essas tabelas, e veja se
você pode descobrir quais colunas devem
-
ser chaves primárias, e quais colunas
devem ser chaves estrangeiras fazendo referência a elas.
-
Na tabela de usuários,
temos um nome de usuário ou identificador ou
-
alias e o nome completo do usuário.
-
Nesta tabela de postagens,
-
temos o conteúdo da postagem, o nome de usuário do
autor e um número de ID da postagem.
-
E na tabela de votos,
temos o número de id de uma postagem,
-
o nome de usuário de alguém que
votou nessa postagem, e um 1 ou
-
menos 1 para indicar se ele curtiu ou
não curtiu a postagem.
-
Portanto, para cada uma dessas colunas, se ela
deve ser uma chave primária dessa tabela,
-
coloque um P nessa caixa.
-
Se ela deve ser uma chave estrangeira, coloque um F.
-
Se ela não deve ser nenhuma delas,
deixe a caixa vazia.
-
Além disso, embora não haja caixas de seleção
para elas, pense se alguma
-
dessas tabelas deve ter chaves
primárias com mais de uma coluna.