Buscar

Aula 4 -Abordagem Relacional

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Conversa Inicial 
 
Olá, caro aluno! 
Seja bem-vindo à quarta aula da disciplina Banco de Dados! 
HEUSER (2009, p. 29) define a etapa do projeto lógico como a que “objetiva transformar o modelo 
conceitual obtido na primeira fase em um modelo lógico.”. Segundo o autor, “o modelo lógico define 
como o banco de dados será implementado em um SGDB específico”. 
O SGDB que estamos trabalhando é do tipo relacional. Então, na aula de hoje, converteremos o 
DER em um modelo lógico, utilizando a abordagem relacional. 
 
 
A representação da abordagem relacional pode ser em linguagem textual ou gráfica. Considerando 
que a maioria dos profissionais utiliza a linguagem gráfica, demonstraremos desta forma. 
Neste encontro estudaremos os conceitos da abordagem relacional e veremos como representá-los 
graficamente. Na próxima unidade, demonstraremos como criar um modelo lógico, utilizando a 
abordagem relacional, a partir de um modelo conceitual. 
Preparado? Então, acompanhe a aula com o professor Martin Morães e bons estudos! 
 
 
 
 
 
 
Contextualizando 
 
Abordagem, como explica HEUSER (2009, p. 25), é o conjunto de conceitos usados para construir 
modelos. 
Os principais elementos utilizados na abordagem relacional são tabelas, campos e chaves. 
Os modelos em que são criados as tabelas, campos e chaves recebem nomes conforme o assunto 
que está sendo modelado. Os nomes dados para identificar cada elemento devem seguir as 
especificações do SGDB. Geralmente, não são aceitos os caracteres especiais. São válidos os caracteres 
de letras maiúsculas e minúsculas, os caracteres numéricos e o caractere underline ( _ ). 
 
 
 
 
Acompanhe a contextualização de nossa aula com o professor Martin Morães para conhecer os 
conteúdos que serão vistos na aula de hoje: 
 
http://ava.grupouninter.com.br/videos/video2.php?video=http://vod.grupouninter.com.br/2015/OUT/MT
180014-A04-S01.mp4 
 
 
 
 
 
 
 
Pesquise 
 Na instrumentalização de nossa aula, o professor Martin explica os conceitos da linguagem textual 
na representação de um modelo lógico, que ocorre por meio de diagramas e textos, além das 
exemplificações que vimos até aqui. Acompanhe: 
http://ava.grupouninter.com.br/videos/video2.php?video=http://vod.grupouninter.com.br/2015/OUT/MT
180014-A04-S02.mp4 
 
 
 
 
 
 
 
 
 
Tema 1 –Tabela 
Tema 2 – Campos 
Tema 3 – Registros, linhas ou tuplas 
Tema 4 – Chaves 
Tema 5 – Relacionamentos e Cardinalidades 
 
 
 
 
 
Tema 1 – Tabela 
Perceber os dados dispostos em linhas e colunas facilita a abstração e nos é mais familiar. HEUSER 
(2009, p. 120) define tabela como “um conjunto não ordenado de linhas (tuplas, na terminologia 
acadêmica)”. 
Na Tabela 1 é possível identificar duas colunas, uma linha com o nome da tabela, outra linha com 
a identificação das colunas e três linhas de dados. 
 
 
 
 
 
 
 Usuário 
id Nome 
1 Pedro 
2 Maria 
3 João 
Tabela 1 – Exemplo de Tabela de Usuário. 
As entidades do modelo conceitual são convertidas em tabelas. 
Tema 2 – Campos 
O encontro de uma coluna com uma linha é denominado campo. Considerando a Tabela 1, 
podemos identificar os nomes dos campos. Nela, observamos os nomes dos campos “id” e “Nome”. 
No cabeçalho da coluna tem-se o nome do campo e, no campo, o valor do campo. Faz-se menção 
a um campo indicando seu nome e valor. Quando o valor fala for si mesmo, não se faz menção ao nome 
do campo. Veja os seguintes exemplos: 
Pouco usual: 
 O usuário de nome Pedro. 
 
 
 
 
 
Mais usual: 
 O usuário Pedro. 
 O id 2 é do usuário Maria. 
 O id do Pedro é 1. 
 
No dia a dia é frequente a utilização do nome do campo referindo-se a uma coluna. Exemplo: 
 O campo id só deve conter números. 
 O campo id é um campo chave. 
 O campo id é do tipo inteiro. 
 
Os campos de uma tabela são definidos para o tipo de dados que vão receber, em banco de dados 
estes tipos de dados são chamados domínios. KROENKE (1999, p. 23) define domínio como “um 
conjunto de valores que uma coluna pode ter”. 
O termo domínio é mais encontrado na literatura e nas ferramentas clássicas. É usual a expressão 
“tipo” para expressar a mesma ideia. Cada SGDB tem suas regras e definições para os domínios que 
dispõe. Na próxima unidade, apresentaremos os principais domínios para o SGDB MySQL. 
 
Os atributos do modelo conceitual são convertidos em colunas (campos) na tabela. 
 
 
 
 
 
Tema 3 Registros, linhas ou tuplas 
Os termos registros, linhas e tuplas são análogos, ou seja, expressam a mesma ideia. Demonstram 
o conjunto de dados da mesma ocorrência. Veja o exemplo a seguir: 
 Usuário 
id Nome 
1 Pedro 
2 Maria 
3 João 
Tabela 2 – Tabela usuário. 
As ocorrências em uma entidade no modelo conceitual serão os registros em tabela. 
Tema 4 – Chaves 
Na abordagem relacional trabalha-se com chave primária e chave estrangeira. 
Chave primária ou primary key, é definida por HEUSER (2009, p. 122) como “uma coluna ou uma 
combinação de colunas cujos valores distinguem uma linha das demais dentro de uma tabela”. 
Os identificadores no modelo conceitual são convertidos para chaves primárias no modelo lógico. 
As chaves estrangeiras são conceituadas por HEUSER (2009, p. 123) como “uma coluna ou uma 
combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma tabela. A 
chave estrangeira é o mecanismo que permite a implementação de relacionamentos em um banco de 
dados relacional”. 
Vamos exemplificar e discutir as chaves estrangeiras quando estudarmos os relacionamentos e 
as cardinalidades. 
 
 
Neste contexto, é oportuno citarmos as chaves compostas. O termo indica a composição de dois 
ou mais campos para formar uma chave primária. Deve-se considerar muito antes de optar por utilizar 
uma chave composta. É preferível optar por chaves primárias formadas por um campo. 
 
 
 
 
 
Tema 5 – Relacionamentos e Cardinalidades 
Os relacionamentos e as cardinalidades máximas são utilizados para definir como os registros vão 
se relacionar através das chaves estrangeiras, processo extremamente necessário para formarmos nosso 
modelo lógico relacional. 
A cardinalidade máxima dos relacionamentos nos indicam como converter os relacionamentos do 
modelo conceitual em relacionamentos no modelo lógico. 
Os relacionamentos no modelo lógico, utilizando a abordagem relacional, são feitos por meio de 
chaves estrangeiras. Estas podem ser criadas nas tabelas que já existam ou podem requerer que seja 
criada uma nova tabela. 
 
 
 
Cardinalidade Máxima 1:n ou n:1 
Para exemplificar, considere a Figura 1 e a Figura 2, nas quais um usuário pode enviar várias 
mensagens. 
 
 
Figura 1 – Contexto para relacionamento e cardinalidade. 
 
 
 
 
 
Figura 2 – exemplificando usuários e mensagens. 
 
Na Figura 2 podemos identificar que o usuário U1 enviou a mensagem M11. Também podemos 
verificar que o usuário U3 enviou as mensagens M12 e M20. 
 
 
Para mantermos esta relação em tabelas, utiliza-se uma chave estrangeira. Veja na Figura 3, onde 
temos uma tabela de usuários e uma tabela de mensagens. Para identificar o usuário que enviou a 
mensagem, foi acrescida a coluna “Id_usuario”. Este novo campo contém o valor do campo chave do 
referido usuário. 
As representações das Figura 2 e Figura 3 são similares: a primeira faz o relacionamento por setas 
e, na segunda, o relacionamento é indicadopor uma chave estrangeira, que faz referência à respectiva 
chave primária da outra tabela, que está no relacionamento. 
A mensagem de id 12 foi enviada pelo usuário de id 3. Identificamos tal fato observando o campo 
“Id_usuario” no mesmo registro em que encontramos o id 12 da mensagem. 
 
 
Para saber o nome do usuário cujo id é 3, vamos procurar o registro na tabela “usuário” cujo id 
seja 3. No campo “Nome” desse mesmo registro, encontramos o nome do usuário. 
Usuário Mensagem 
Id Nome Id Texto Id_usuario 
1 A 11 Xxx 1 
2 B 12 Yyyy 3 
3 C 13 Vvvvv 2 
 20 Kkkkkk 3 
Figura 3 – Tabelas exemplificando relacionamento. 
 
 
 
Para converter o modelo conceitual (Figura 1), para o modelo lógico (Figura 3), foi acrescida uma 
coluna na tabela mensagem. A cardinalidade máxima deste relacionamento era 1:n, ou seja, um para 
muitos. Para essa cardinalidade, a indicação é a criação de uma coluna na tabela que recebe a notação 
de muitos. 
 
 
 
 
 
Cardinalidade Máxima 1:1 
Vamos considerar o seguinte cenário: um trabalhador deve ter uma conta de FGTS e uma conta 
de FGTS pertence ao máximo a um trabalhador. Neste cenário, a cardinalidade máxima é 1:1. 
 
Figura Erro! Nenhum texto com o estilo especificado foi encontrado no documento. – Cardinalidade máxima 
1:1. 
 
 
 
 
 
Ao convertermos para o modelo lógico, seguindo a abordagem relacional, teremos duas tabelas, 
sendo elas “Trabalhador” e “Conta_FGTS”. Veja na Figura 5: 
Trabalhador Conta_FGTS 
Id Nome conta titular 
1 A 342 A 
2 B 547 B 
 
Figura 4 – Tabelas com 1:1. 
 
Ao considerarmos as cardinalidades para determinar os relacionamentos, encontraremos a 
cardinalidade máxima 1:1. Nesta situação, é recomendado considerar, primeiramente, a possibilidade de 
unificar as tabelas, ficando todos os atributos das duas tabelas em uma. Observe a Figura 5: 
 
Trabalhador 
Id Nome Conta_FGTS 
1 A 342 
2 B 547 
Figura 5 – Unificando tabelas 1:1. 
 
 
 
 
Na unificação das tabelas “Trabalhador” e “Conta_FGTS”, da Figura 4, na tabela 
“Trabalhador” da Figura 5, a coluna “Nome” da tabela “Trabalhador” e a coluna “titular” da tabela 
“Conta_FGTS” são os mesmos campos. Na tabela resultante, foi mantido um dos dois. 
Para a cardinalidade 1:1 é recomendado considerar a unificação das tabelas, mas também pode 
ocorrer a necessidade de manter as duas tabelas. Nestes casos é aplicável a adição de uma para chave 
estrangeira da outra tabela. 
 
 
 
Cardinalidade Máxima n:n 
A cardinalidade máxima n:n ocorre quando temos muitas ocorrências de ambas as entidades. 
Observe a Figura 6: 
 
Figura 6 – Cardinalidade n:n. 
 
 
Nesta situação, a indicação é a criação de uma tabela de relacionamento. 
 
 
 
Na 
Figura 7 vemos a transformação das entidades “Pessoas” e “Filmes”, da Figura 6, em tabelas. As 
relações entre os registros estão definidas em uma tabela adicional que contém chave estrangeira para 
pessoa e para filme, relacionando as múltiplas ocorrências. 
 
Figura 7 – Tabelas com n:n. 
Considerações 
HEUSER (2009, p. 134) apresenta, na Erro! Fonte de referência não encontrada., 
considerações na aplicação das cardinalidades na conversão entre os modelos. Para cada alternativa de 
“Tabela própria”, “Adição de coluna” ou “Fusão de tabela”, o autor indica se a alternativa é a preferida, 
se pode ser usada, ou se não deve se utilizar. 
 
 
 
 
 
 
 
 
 
 
 
NA PRÁTICA 
 
O modelo lógico pode ser gerado a partir da descrição dos usuários, de um diagrama de classes, 
ou de uma base de dados já existente. 
Agora que você acabou de conhecer a abordagem relacional, identifique representações de 
modelo lógico e identifique as tabelas, os campos e as chaves. Você pode conversar com profissionais da 
área para fazer essa análise. 
Na videoaula a seguir, o professor Martin explicará os aspectos que concernem as tabelas para a 
aplicação prática de nosso conteúdo. Confira: 
 
http://ava.grupouninter.com.br/videos/video2.php?video=http://vod.grupouninter.com.br/2015/OU
T/MT180014-A04-S03.mp4 
 
 
 
 
 
 
Na sequência, aproveite para testar os conhecimentos adquiridos na aula de hoje! Caso fique 
com dúvidas, retorne ao conteúdo e às videoaulas e realize o teste novamente. 
 
 
 
 
 
 
 
 
1. Considere o seguinte texto sobre as tabelas. 
 
As tabelas se assemelham a planilhas, pois na visão dos usuários as vemos como linhas e 
colunas. HEUSER (2009, p. 120) define tabela como “é um conjunto não ordenado de linhas 
(tuplas, na terminologia acadêmica)”. 
A referência a não ordenados, significa que os registros são inseridos sequencialmente e a 
ordenação é realizada na recuperação dos dados. 
 
Analise as seguintes afirmativas. 
I. Pode-se afirmar que as tabelas agrupam dados referente as mesmas entidades. 
II. As tabelas podem crescer verticalmente até a capacidade do SGDB. 
III. As entidades no modelo conceitual se tornam tabelas no modelo lógico. 
IV. Toda tabela tem de ser representada em um retângulo no modelo lógico. 
Considerando a solicitação do usuário assinale a sequência das afirmativas corretas. 
a) Somente as afirmativas I e II estão certas. 
b) Somente as afirmativas II e III estão certas. 
c) Somente as afirmativas I, II e III estão certas. 
d) Somente as afirmativas I e IV estão certas. 
e) Somente a afirmativa II está certa. 
 
 
2. Considere o seguinte texto sobre campos de uma tabela. 
Na abordagem relacional, os campos são os atributos identificados no modelo conceitual. Eles 
são vistos como dados de um registro que serão armazenados de forma estruturada. 
Os dados que os campos contêm, são acessados por sistemas para gerarem informações aos 
usuários. 
 
Analise as seguintes afirmativas. 
 
 
I. Os dados nunca podem ser repetidos em outros registros. 
II. Uma tabela sem campos, não tem utilidade na aplicação. 
III. Os campos de uma ocorrência na tabela formam um registro da tabela. 
IV. Os campos têm um domínio definido conforme sua aplicação. 
 
 
 
Considerando a solicitação do usuário assinale a sequência das afirmativas corretas. 
a) Estão corretas as afirmativas II, III e IV. 
b) Estão corretas somente as alternativas I, III e IV. 
c) Somente estão corretas as alternativas II e III. 
d) Estão corretas as afirmativas III e IV. 
e) Estão corretas as afirmativas II e IV. 
 
 
 
3. Considere a seguinte representação de uma tabela de usuário para responder o que se pede. 
Usuário 
id Nome 
1 Pedro 
2 Maria 
3 João 
 
 
 
 
 
 
Analise as seguintes sentenças e assinale V para as verdadeiras e F para as falsas considerando a 
tabela usuário. 
( ) A tabela usuário tem uma chave primária e estrangeira no campo id. 
( ) O id de valor 1 e o nome com valor Pedro formam uma tupla. 
( ) Os id 1, 2 e 3 formam um registro. 
( ) id e Nome também são referência para coluna. 
 
Considerando a solicitação do usuário assinale a sequência das afirmativas corretas. 
a) F, F, F, F. 
b) V, F, F, F. 
c) F, V, F, V. 
d) V, V, F, F. 
e) V, F, V, F. 
 
4. Leia e analise. 
Os relacionamentos e as cardinalidades máximas são utilizados para definir como os registros 
vão se relacionar através das chaves estrangeiras. As seguintes representações para a tabela 
cliente e dependente estão relacionadas pela chave estrangeira “Id_ cliente” da tabela 
dependente que faz referência ao “Id” do cliente, que é uma chave primária para cliente. 
Cliente Dependente 
Id Nome Id Nome Id_cliente1 A 11 Xxxx 1 
2 B 12 Yyyy 3 
3 C 13 Vvvv 2 
 20 Kkkk 3 
 
 
 
Analise as seguintes afirmativas e a relação entre elas. 
I. Os dependentes “Yyyy” e “Kkkk” são dependentes do cliente “C”. 
 
Porque 
 
II. O campo “Id” da tabela cliente é uma chave primária. 
A respeito dessas assertivas e das representações das tabelas cliente e dependente, assinale a 
opção correta. 
a) Ambas as assertivas estão corretas, mas não se complementam. 
b) As assertivas estão certas e se complementam. 
c) A assertiva I é uma proposição falsa e a II é verdadeira. 
d) A assertiva I está certa e a assertiva II está errada. 
e) Ambas as assertivas estão erradas. 
 
5. Leia e analise. 
Os relacionamentos e as cardinalidades máximas são utilizados para definir como os registros vão 
se relacionar através das chaves estrangeiras. As seguintes representações para a tabela cliente e 
dependente estão relacionadas pela chave estrangeira “Id_ cliente” da tabela dependente que faz 
referência ao “Id” do cliente, que é uma chave primária para cliente. 
Cliente Dependente 
Id Nome Id Nome Id_cliente 
1 A 11 Xxxx 1 
2 B 12 Yyyy 3 
3 C 13 Vvvv 2 
 20 Kkkk 3 
 
 
 
 
Analise as seguintes afirmativas, referentes as representações das tabelas cliente e dependente. 
I. A cardinalidade máxima é 1:n indicando que dependente sempre está relacionado a um 
cliente. 
II. A cardinalidade mínima é 1:1 indicando que todo cliente está relacionado a um 
dependente. 
III. A cardinalidade mínima é 1:0 indicando que todo dependente está relacionado somente 
a um cliente. 
IV. A cardinalidade mínima é 1:0 indicando que todo cliente pode estar relacionado a um 
dependente. 
 
Considerando a solicitação do usuário assinale a sequência das afirmativas corretas. 
a) Estão corretas somente as alternativas I, III e IV. 
b) Somente estão corretas as alternativas II e III. 
c) Estão corretas as afirmativas III e IV. 
d) Estão corretas as afirmativas II e IV. 
e) Estão corretas as afirmativas II, III e IV. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
TROCANDO IDEIAS 
Compartilhe com os colegas, através do fórum desta disciplina, representações de modelo lógico 
que encontrou durante sua pesquisa. 
Participe acessando o Ambiente Virtual de Aprendizagem (AVA)! 
 
 
 
 
 
 
 
 
 
SÍNTESE 
A elaboração de um modelo lógico para um SGDB relacional é feita utilizando os conceitos e 
técnicas (abordagem) relacional, na qual utiliza tabelas, campos e chaves. 
A relação da abordagem ER com a abordagem relacional são as entidades com as tabelas, os 
atributos com os campos os identificadores com as chaves primárias e os relacionamentos com as chaves 
estrangeiras. 
Muitos profissionais experientes, ao projetarem uma base de dados, elaboram diretamente o 
modelo lógico, abstraindo o modelo conceitual. 
 
 
 
 
 
 
Vamos ver um resumo preparado pelo professor Martin dos conteúdos que vimos na aula de hoje? 
Confira: 
http://ava.grupouninter.com.br/videos/video2.php?video=http://vod.grupouninter.com.br/2015/O
UT/MT180014-A04-S04.mp4 
 
 
Bons estudos e até a próxima aula! 
 
 
 
 
 
REFERÊNCIAS 
 
HEUSER, C. A. (Org.). Projeto de Banco de Dados. 6. ed. Porto Alegre: Bookman, 2009. p. 282. 
KROENKE, D. M. (Org.). Banco de Dados: fundamentos, projeto e implementação. 6. ed. Rio de 
Janeiro: LCT, 1999.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes