1
resposta

[Dúvida] Relacionamentos

Não consegui entender porque em momentos você utiliza o relacionamento identificador e em outros não

1 resposta

Oi, Bruno! Tudo certo por aí?

Desde já, peço desculpas pela demora em te responder.

O tipo de relacionamento utilizado (identificador ou não identificador) varia conforme as chaves das tabelas relacionadas.

O relacionamento identificador é utilizado nos casos em que há uma tabela que não possui uma chave que a identifique por completo (como a chave primária), consequentemente, precisa herdá-la de outra tabela para ser efetivamente identificada. Quando isso acontece, dizemos que determinada tabela possui uma chave primária estrangeira. Ao analisar o modelo físico do Clube do Livro (empresa hipotética em que estamos trabalhando), percebemos que o relacionamento identificador conecta, por exemplo, PEDIDO e ITEM_PEDIDO, fazendo com que ITEM_PEDIDO (tabela sem chave primária própria) receba a chave primária da tabela PEDIDO (cod_pedido), tornando-a uma chave primária estrangeira.

Para um melhor entendimento, abaixo há uma imagem indicando a chave primária estrangeira cod_pedido e o relacionamento entre as tabelas PEDIDO e ITEM_PEDIDO:

Início da transcrição. Recorte de captura de tela de um diagrama físico do SQL Power Architect. A imagem contém dos retângulos: o primeiro retângulo, localizado no lado esquerdo, contém o título “Pedido” e quatro linhas referentes à “cod_pedido”, “data”, “valor_pedido” e “cod_cliente”. Deste retângulo, parte uma reta para o outro retângulo, localizado na porção direita da tela. Ele contém o título “Item_pedido” e quatro linhas referentes à “cod_pedido”, “cod_livro”, “qtd_pedido” e “valor_item”; a primeira linha, com o texto “cod_pedido”, está destacada por uma borda vermelha; seu texto contém a identificação “PFK”. Fim da transcrição.

Note que cod_pedido, na tabela ITEM_PEDIDO, contém a descrição "PFK", a qual indica que ela é uma chave primária estrangeira e foI criada a partir de um relacionamento identificador.

Por outro lado, quando ambas tabelas possuem suas próprias chaves primárias, fazemos uso do relacionamento não identificador, visto que ambas já foram identificadas efetivamente (através de suas chaves).

Logo, para escolher qual relacionamento utilizar durante a construção do modelo físico, precisamos observar como estão organizadas as chaves das nossas tabelas.

Espero ter ajudado, Bruno! Caso surja alguma dúvida após minha explicação ou ao decorrer dos seus estudos, fico à disposição para ajudá-lo.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.