Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

7. (FUNCAB / MDA- 2014) Existem diversas notações para o Modelo Entidade-Relacionamento. A notação original foi proposta por Peter Chen e é composta de entidades, relacionamentos, atributos, representados, respectivamente, por:

a) retângulos, losangos e círculos.

b) retângulos, círculos e losangos.

c) losangos, retângulos e círculos.

d) círculos, losangos e retângulos.

e) círculos, retângulos e losangos

23.(IFB / IFB- 2017) Segundo Elmasri (2011), na terminologia formal do modelo relacional, uma linha, um cabeçalho de coluna e a tabela, são chamados, respectivamente, de:
a) Registro, atributo, domínio
b) Tupla, atributo e relação
c) Registro, atributo e relação
d) Relação, domínio e registro
e) Relação, tupla e registro

1° Exemplo (Atributo identificador e atributo composto):

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

Seguindo as regras, o mapeamento do exemplo acima fica assim:

► Cliente (cpf, nome, rua, bairro, cidade, estado)

O atributo identificador cpf, virou a chave primária na relação; o atributo composto endereco foi mapeado de maneira que os seus componentes se tornaram campos na relação, mas o atributo mais abstrato endereço não foi mapeado.

2° Exemplo (Atributo multi-valorado):

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

1° opção:

► Pessoa (identidade, nome, peso)

► Telefone (identidade, numero)

Nessa primeira alternativa, o atributo multi-valorado telefone foi mapeado em uma nova relação, que recebe a chave primária de pessoa identidade e o numero que é o número de telefone. A chave primária dessa nova relação Telefone, é uma chave composta, formada pela junção de identidade e numero.

2° opção:

► Pessoa (identidade, nome, peso, tel1, tel2, tel3)

Nessa segunda alternativa foram criados três campos na relação pessoa para receber os valores correspondentes a três telefones. Essa alternativa é adequada quando se estabelece um número fixo da quantidade de números de atributos. No entanto, quando não se sabe esse número, a 1° opção se torna mais adequada.

Mapeamento de entidades Fracas:

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

No exemplo acima, linha mais grossa que liga Dependente representa que Dependente é uma entidade fraca, ou seja, não existe se Sócio não existir. O seu mapeamento para o modelo lógico relacional de dados fica assim:

► Socio (id, nome, idade)

► Dependente (idSocio, codigo, nome)

A chave primária da relação Dependente é composta da chave primária de Socio mais a chave primaria de Dependente, que nesse caso é o codigo. Portanto, a chave primaria de entidades fracas será sempre chave composta.

Mapeando relacionamentos

Para determinar o tipo de relacionamento em relação a cardinalidade, observa-se os máximos da mesma. Veja o link a seguir com mais detalhes para compreender o conceito de cardinalidade/multiplicidade.

Relacionamentos binários 1:1

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

► Moto (placa, cor, modelo)

► Motor (codigo, tipo, placaMoto)

Em um relacionamento 1:1, de acordo com os passos acima, escolhe-se uma das relações para receber a chave estrangeira, essa que é a chave primária da relação que ocorre o relacionamento. Obs: Não é regra, mas geralmente, nesses casos, escolhe-se a relação que possui participação total no relacionamento. Nesse exemplo é o motor, pois é (1,1), ou seja irá sempre existir, enquanto moto (0,1) pode ou não existir.

Relacionamentos binários 1:N

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

► Pessoa (cpf, nome, idade)

► Moto (placa, modelo, cpfPessoa, data, preco)

Em um relacionamento 1:N, escolhe-se a relação “N” (no caso Moto) e inclui como chave estrangeira a chave primária da outra relação. Inclui também os atributos do relacionamento.

Relacionamentos binários N:N

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

► Funcionario (id, remuneracao, nome)

► Projeto (codigo, nome)

► Trabalha (idFuncionario, codigoProjeto, cargaHoraria)

Em um relacionamento N:N, cria-se uma nova relação e inclui como chave estrangeira, as chaves primarias das relações em que ocorre o relacionamento. A chave primaria dessa nova relação (no caso Trabalha) será uma chave composta. Por fim, carrega também os atributos do relacionamento.

Relacionamento n-ário

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

► Fornecedor (codigo, nome)

► Produto (codigo, nome)

► Salao (endereco, nome)

► Fornecimento (codigoFornecedor, codigoProduto, enderecoSalao, data, quantidade)

Auto-relacionamento

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

► Pessoa (cpf, nome, idade, idConjuge)

Generalização / especialização

Como se estabelece o relacionamento entre duas tabelas no modelo lógico relacional?

► Atendente (id, nome, idioma)

► Tecnico (id, nome, curso)

► Analista (id, nome, tipo)

Neste post foram vistos os conceitos necessários para se fazer o correto mapeamento dos diagramas do modelo conceitual para as relações do modelo lógico relacional.

Se teve dúvida em alguns dos conceitos abordados veja o post anterior, que introduz os conceitos de chave primaria, estrangeira e outros: spaceprogrammer.com/bd/introducao-ao-modelo-logico-relacional

Como é feito o relacionamento entre duas tabelas?

Para criar uma relação entre uma tabela e ela mesma, adicione a tabela duas vezes. Arraste o campo que deseja relacionar de uma tabela para o campo relacionado na outra tabela. Para arrastar vários campos, pressione Ctrl, clique em cada campo e arraste-os.

O que é um relacionamento entre tabelas no contexto de um banco de dados relacional?

Os relacionamentos de banco de dados são associações entre tabelas que são criadas usando instruções de junção para recuperar dados. A tabela a seguir descreve os relacionamentos do banco de dados. Ambas tabelas podem ter somente um registro de cada lado do relacionamento.

Quem estabelece o relacionamento entre as tabelas de um banco de dados?

A chave estrangeira (foreign key) é o campo que estabelece o relacionamento entre duas tabelas de bancos distintos, sendo necessariamente chave primária na tabela de um dos bancos.