Sei sulla pagina 1di 33

TECNOLOGIAS E LINGUAGEM PARA BANCO DE

DADOS I
TLBD I - Tecnologias e Linguagens para Banco de Dados I 2

SUMÁRIO

INTRODUÇÃO ....................................................................................................................................... 4

1 INDEPENDÊNCIA DE DADOS ........................................................................................................ 4

2 SISTEMA GERENCIADOR DE BANCO DE DADOS (SGBD) .................................................... 5

2.1 CARACTERÍSTICAS DE UM SGBD ................................................................................................................... 5

3 DEFINIÇÕES ....................................................................................................................................... 6

4 O MODELO ENTIDADE-RELACIONAMENTO............................................................................ 7

4.1 ENTIDADES ................................................................................................................................................... 7

4.2 ATRIBUTOS................................................................................................................................................... 7

4.3 CHAVE PRIMÁRIA ......................................................................................................................................... 8

4.4 ATRIBUTOS MULTIVALORADOS.................................................................................................................... 9

4.5 ATRIBUTOS COMPOSTOS ............................................................................................................................. 9

4.6 ATRIBUTO DERIVADO ................................................................................................................................... 10


EXERCÍCIOS ........................................................................................................................................... 10

4.7 ENTIDADES FRACAS ...................................................................................................................................... 10

5 RELACIONAMENTOS....................................................................................................................... 11

5.1 CARDINALIDADE DOS RELACIONAMENTOS .................................................................................................. 12

EXERCÍCIOS ........................................................................................................................................... 12

5.2 ATRIBUTOS DE RELACIONAMENTO .............................................................................................................. 13

5.3 GRAU DOS RELACIONAMENTOS ................................................................................................................... 13

Relacionamento Unário ou Auto Relacionamentos ............................................................................................ 13

Relacionamentos Binários .................................................................................................................................. 14

Relacionamentos Ternários................................................................................................................................ 14

Como Determinar as Cardinalidades de um Relacionamento Ternário .............................................................. 14

EXERCÍCIOS ........................................................................................................................................... 15

6 MAPEAMENTO DO MODELO ER PARA MODELO RELACIONAL ........................................ 15

MAPEANDO ENTIDADES .................................................................................................................................... 16

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 3
ENTIDADES FRACAS ........................................................................................................................................... 16

RELACIONAMENTO BINÁRIO COM CARDINALIDADE 1:1 .................................................................................... 16

RELACIONAMENTO BINÁRIO COM CARDINALIDADE 1:N .................................................................................... 17

RELACIONAMENTO BINÁRIO COM CARDINALIDADE M:N .................................................................................. 17

RELACIONAMENTOS TERNÁRIOS ....................................................................................................................... 17

ATRIBUTOS COMPOSTOS E MULTIVALORADOS ................................................................................................. 18

RELACIONAMENTO UNÁRIO (1:1) ...................................................................................................................... 18

RELACIONAMENTO UNÁRIO (1:N) ...................................................................................................................... 18

RELACIONAMENTO UNÁRIO (N:M) .................................................................................................................... 19

EXERCÍCIOS ........................................................................................................................................... 19

GENERALIZAÇÃO E ESPECIALIZAÇÃO .......................................................................................... 21

RELACIONAMENTOS ENTRE ENTIDADES ESPECIALIZADAS .................................................................................. 22

MAPEAMENTO DE GENERALIZAÇÃO E ESPECIALIZAÇÃO .................................................................................... 22

Outras Formas de Mapeamento ........................................................................................................................ 23

Outras Formas de Mapeamento ........................................................................................................................ 24

Outras Formas de Mapeamento ........................................................................................................................ 25

AGREGAÇÃO .......................................................................................................................................... 25

DIAGRAMA E-R COM RELACIONAMENTOS REDUNDANTES ................................................................................ 26

MAPEANDO AGREGAÇÃO .................................................................................................................................. 27

OUTRO EXEMPLO DE AGREGAÇÃO..................................................................................................................... 27

EXERCÍCIOS ........................................................................................................................................... 28

MAPEAMENTO................................................................................................................................................... 28

MODELAGEM CONCEITUAL ................................................................................................................................ 29

Construa o DER e depois faça o mapeamento .................................................................................................... 29

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 4

INTRODUÇÃO
Com o surgimento de aplicações computacionais sentiu-se a necessidade de armazenar
informações de maneira que elas pudessem ser usadas posteriormente, para essas informações dá-se o
nome de Dados. Pode-se entender por Banco de Dados qualquer sistema que reúna e mantenha
organizada uma série (conjunto) de informações relacionadas a um determinado assunto em uma
determinada ordem.
A lista telefônica é um exemplo, nela percebemos que todos os dados (informações) referentes a
uma pessoa estão na mesma linha.

Resumindo:
Banco/Base de Dados: Coleção, conjunto de dados relacionados;
Dados: Valor de um campo armazenado, matéria-prima para obtenção de
informação;
Informação: Dados compilados e processados de acordo com solicitação de
consultas e análises.

Com isso surgiu o conceito de Sistema Gerenciador de Banco de Dados (SGBD). Um Sistema
Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um
conjunto de programas para acesso a esses dados. Esse conjunto de dados é comumente chamado de
Banco de Dados. O principal objetivo de um SGBD é proporcionar um ambiente tanto conveniente
quanto eficiente para a recuperação e armazenamento das informações do banco de dados.
SGBDs são projetados para gerir grandes volumes de informações. Devem possuir mecanismos
para definição e manipulação de dados, além de prover compartilhamento e segurança dos mesmos.

1 INDEPENDÊNCIA DE DADOS
O desenho a seguir representa um sistema de processamento de arquivo típico:

Arquivo
Cliente
Figura 1 - Sistema de Processamento de Arquivo

De acordo com a figura 1, nota-se que os programas gravam seus dados em disco, seguindo
estruturas próprias.

Para acessá-los é necessário conhecer sua estrutura.

Se vários programas compartilham seus dados, todos devem conhecer e manipular as mesmas
estruturas.

Se algum programa precisar de alguma mudança de dados, todos os programas terão que ser
alterados, mesmo que a alteração ocorra em dados que ele não utiliza.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 5
Se entre os programas e os dados for colocado um sistema que converte o formato em que os dados
estão gravados para o formato específico que cada programa precisa dos dados, então cada programa:
 Vê apenas os dados que lhe interessa;
 Não precisa entrar em detalhes de como seus dados estão fisicamente gravados;
 Não precisa ser modificado se a estrutura de dados que ele não utiliza for mudada.

É feita uma conversão específica dos dados gravados para a forma usada em cada programa. Alterar
os dados obriga a alterar a forma de conversão para cada programa, mas não cada programa em si. As
alterações ficam concentradas nesse sistema intermediário.

Esse sistema intermediário é chamado de Sistema Gerenciador de Banco de Dados (Figura 2).

SGBD

BD

Figura 2- Independência de Dados provida pelo SGBD

2 SISTEMA GERENCIADOR DE BANCO DE DADOS (SGBD)


Como já foi dito, um SGBD é um conjunto de programas com a finalidade de manipular um
conjunto de dados.
A introdução de um SGBD em uma organização demanda o surgimento de um novo profissional,
o Administrador de Banco de Dados (DBA). O DBA é responsável pela manutenção do SGBD e da
Base de Dados em si, centralizando todo o gerenciamento sobre a estrutura dos dados da empresa.

2.1 CARACTERÍSTICAS DE UM SGBD


Seguem as características que um SGBD deve ter:

CONTROLE DE REDUNDÂNCIA: A redundância, ou seja, a repetição de dados deve ser


evitada para se minimizar possibilidade de inconsistências.

COMPARTILHAMENTO DE DADOS: Em um ambiente multiusuários deve-se possibilitar a


manipulação simultânea de dados distintos ou dos mesmos dados conforme regras abaixo.

CONTROLE DE ACESSO: Verificação automática do tipo de acesso pedido por cada usuário.
Os níveis de segurança são estabelecidos para cada usuário independentemente, de acordo com

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 6
suas necessidades. A identificação de cada usuário, por parte do SGBD, é feita pelo nome e
senha cadastrados.

CONTROLE DE TRANSAÇÃO: Transação é o conjunto de operações que devem ser


executadas completamente. São normalmente usadas em situações críticas (atualizações ou
inclusões) de longa duração que podem afetar a consistência do BD (Banco de Dados). O SGBD
deve utilizar mecanismos internos para que nenhuma falha ocorra durante a execução da
transação.

ACESSO EM MÚLTIPLAS INTERFACES: Possibilidade usar diversas interfaces mesmo se o


SGBD estiver sendo utilizado. Por exemplo: Se existe uma aplicação em JAVA com o SGBD
MySQL, se trocar a linguagem para PHP, não é necessário fazer alterações no SGBD.

RESTRIÇÕES DE INTEGRIDADE: Estabelecimento de um formato para os dados inseridos de


modo a garantir integridade e facilitar o armazenamento. Ex. tamanho dos nomes sempre igual a
30 e em maiúsculo, armazenamento dos salários em dólar, etc. Algumas regras de integridade
são estabelecidas pelo próprio SGBD para manter o BD consistente e outras são definidas pelo
DBA por meio de sentenças condicionais que são verificadas toda vez que um dado é
armazenado no BD.

BACKUP E RECUPERAÇÃO: Estabelecer o backup automático do BD total ou parcial em


momentos estabelecidos pelo DBA. Proporcionar proteção contra a perda de informações devido
a falhas no dispositivo de armazenamento (discos).

INDEPENDÊNCIA DE DADOS: A descrição física dos arquivos é mantida internamente pelo


SGBD e é de sua inteira responsabilidade e exclusividade. Programas aplicativos não dispõem da
descrição física e sim de uma descrição externa. Alterações nos arquivos podem não afetar os
programas aplicativos.

INDEXAÇÃO AUTOMÁTICA: Com a indicação explícita dos atributos que serão mais utilizados
em consultas, o SGBD cria os arquivos de indexação que tornarão mais rápidas as pesquisas. A
estrutura de indexação e de organização dos arquivos de dados é própria de cada SGBD e
normalmente não é de domínio dos usuários comuns.

3 DEFINIÇÕES
• Um Banco de Dados é uma coleção de dados logicamente relacionados, com algum significado.
Associações aleatórias de dados não podem ser chamadas de base de dados;

• Um Banco de Dados é projetado, construído e preenchido (instanciado) com dados para um


propósito específico. Ele tem um grupo de usuários e algumas aplicações pré-concebidas para
atendê-los;

• Um Banco de Dados representa algum aspecto do mundo real, também chamado de base de
dados, tendo alguma fonte de dados, algum grau de interação com eventos do mundo real e uma
audiência que está ativamente interessada no seu conteúdo.

Construir uma base de dados é o processo de armazenar os dados em algum meio que seja
controlado pelo SGBD. Manipular uma base de dados indica a utilização de funções como a de consulta,
para recuperar dados específicos, modificação da base de dados para refletir mudanças no “mini -
mundo” (inserções, atualizações e remoções), e geração de relatórios.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 7

4 O MODELO ENTIDADE-RELACIONAMENTO
O uso do Modelo Entidade-Relacionamento (MER) foi apresentado por Peter Cher em 1976.
Atualmente não existe um padrão único de modelo E-R(Entidade - Relacionamento) aceito
universalmente; em vez disto, há um conjunto de conceitos dos quais se origina a maioria das variantes
do E-R.
No MER, os elementos que o compõe são representados graficamente através da ferramenta
denominada Diagrama Entidade - Relacionamento (DER). A seguir são descritos os principais
elementos que compõe o MER.

4.1 ENTIDADES
Define-se entidade como aquele objeto que existe no mundo real com uma identificação distinta e
com um significado próprio. São as “coisas” que existem no negócio (objeto de análise), ou ainda,
descrevem o negócio. Se alguma “coisa”, existente no negócio gera interesse de se manter os dados,
isto a caracteriza como uma Entidade do Negócio.
Entidades de um mesmo tipo são agrupadas em Classes de Entidade. Assim, a classe de
entidades FUNCIONARIOS é o conjunto de todas as instâncias de funcionários. Neste texto, classes de
entidades estão impressas em letra maiúscula.
Cada ocorrência de um funcionário dentro da classe FUNCIONARIO é denominada de Instância de
Entidade.
Alguns exemplos de instancias de entidades:

 O FUNCIONARIO João;
 O VEICULO Corsa;
 A ALUNA Maria;
 O CLIENTE Pedro;
 O PRODUTO A323....

A representação gráfica de uma entidade no MER se realiza através de um retângulo, com o nome
desta entidade em seu interior (sem utilizar acentuação), como mostra a figura 4.

CLIENTE FUNCIONARIO PRODUTO

ORDEM DE
NOTA FISCAL
PRODUCAO
Figura 4 – Exemplos de Entidade

4.2 ATRIBUTOS
Toda entidade possui propriedades (características) que são denominadas Atributos. No MER
supõe-se que todas as instâncias de uma dada classe de entidade possuem os mesmos atributos.
Considere a entidade FUNCIONARIO em uma empresa. O que descreve esse funcionário, quais
são as características que ele possui que são do interesse da empresa?
Funcionário é descrito por:
 número de matrícula
 nome
 data da admissão

Como é representado na tabela 1.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 8

Tabela 1 - Entidade Funcionário

numero_Matricula nome data_Admissao


4455 João 24/04/1991
4456 Pedro 20/03/1992
4457 Manuel 14/04/1992
4458 Carlos 01/04/1995

No DER os atributos PODEM ser representados por uma elipse em torno de seu nome, como
mostra a figura 5.
Atributos
Exemplo:
FUNCIONARIO

Matricula Data_Admissao
Nome

Figura 5 – Representação de Atributos


4.3 CHAVE PRIMÁRIA
Não existem DUAS INSTÂNCIAS DE ENTIDADES IGUAIS. Sempre deverá existir um atributo
(ou atributos) que nunca se repete.

O que é uma instância de entidade?

É a combinação de valores atribuídos a um participante da entidade. Imaginemos a entidade


FUNCIONARIO e considerando que uma empresa pode ter vários funcionários, esses valores atribuídos
são as informações que a empresa deseja armazenar de seus funcionários, por exemplo: nome,
telefone, endereço, etc. Então, chamamos de instância de entidade cada um desses funcionários.

Este atributo tem a função de atuar como identificador único das instâncias da entidade, e é
denominado de Chave Primária. No exemplo a seguir, a chave primária é o atributo MATRICULA.
Então, como a chave primária identifica uma instância da entidade, ela tem duas restrições
importantes:

 Não se repete;
 Não contém valor NULO.

Um VALOR NULO é um valor que não tem significado algum para o mundo real, somente para
o conceitual.
No DER, um atributo chave primária é representa por um traço abaixo de seu nome, como mostra a
figura 6.
FUNCIONARIO

Chave primária Matricula Data_Admissao


Nome

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 9

Figura 6 – Atributo Chave Primária

Além da chave primária também temos:


 Superchave: é o conjunto de um ou mais atributos que, tomado coletivamente, permite-nos
_

identificar unicamente uma entidade no conjunto de entidade.


 Chaves candidatas: chaves com unicidade em uma relação: Ex: CPF, RG, título eleitoral. Todos
_

os atributos que conseguem identificar uma Relação.


 Chave secundária: chave sem unicidade em uma relação. Ex: idade, sexo, endereço.

4.4 ATRIBUTOS MULTIVALORADOS


São atributos que para cada instância de uma entidade, ele pode ocorre várias vezes. No DER, é
representado por duas elipses em torno do nome do atributo.
Ex.: Telefones para clientes ou alunos, Nomes de cidades à beira de uma rodovia, Nomes dos autores
de um livro, etc.
A figura 7 representa o atributo telefone dos clientes de uma empresa. A representação em um
SGBD para atributos multivalorados é mostrada na tabela 2:

CLIENTE

Atributo
RG Telefone
Multivalorado
No me
Figura 7 – Atributo Multivalorado

Tabela 2 - Representação em um SGBD de atributos multivalorados da entidade cliente

RG Telefone
RG Nome 1116 3382-0000
1116 João 1116 9711-1111
1220 Pedro 1220 9700-0000

4.5 ATRIBUTOS COMPOSTOS


São atributos formados por outros atributos. Ex: telefones, endereços, nome, área de uma sala,
etc.
A figura 8 representa atributos compostos de uma entidade:

Sala

Numero
Dimensao
Altura

Comprimento
Largura
1º Módulo de Informática Etec de Ibitinga
TLBD I - Tecnologias e Linguagens para Banco de Dados I 10

Figura 8 – Atributo Composto

Em um SGBD, os atributos são representados da maneira como mostra a tabela 3.

Tabela 3 - Atributo Composto em um SGBD

Numero Comprimento Largura Altura


100 5 3 3
200 5 2 3
300 7 3 3

4.6 ATRIBUTO DERIVADO


São atributos derivados de outros atributos ou originados de algum cálculo. Por exemplo, na
figura 9, temos os campos idade e qtde_de_func. O primeiro é calculado a partir da data de nascimento
e o segundo é obtido através da contagem dos funcionários. Por esta razão, este atributo não precisa
ser armazenado.

Código
FUNCIONARIO
Atributo Derivado
Data_Nasc
Qtde_de_func
idade
Figura 9 – Atributo Derivado
EXERCÍCIOS
Para os exercícios abaixo crie o DE-R e identifique a chave primária para cada entidade.

1. Em uma Empresa trabalham muitos funcionários. Deseja-se guardar do funcionário o código,


nome, RG, CPF, endereço (formado por rua, número e bairro), telefone residencial e telefone
celular.

2. Uma locadora possui muitos clientes. Deseja-se saber do cliente seu código, nome, endereço,
bairro, cidade, CEP, telefones, data de nascimento e idade.

3. Um hotel possui muitos quartos. Deseja-se armazenar dos quartos seu numero, tipo e andar.

4.7 ENTIDADES FRACAS


Pode ocorrer que alguma instância de entidade possua uma dependência existencial com outra
instância de entidade e neste caso cada instância daquela entidade, existe somente porque está
associada à outra instância de entidade diferente.
Dizer que uma Entidade é fraca, significa dizer: QUE NÃO INTERESSA MANTER NA BASE OS
DADOS DE UMA ENTIDADE SE ELA NÃO ESTIVER RELACIONADA COM OUTRA ENTIDADE.
Este tipo de Entidade é denominado Entidade Fraca. Exemplo: Dependente é um tipo de
Entidade Fraca, pois existe somente se existir o funcionário. A figura 10 representa o DER da entidade
fraca.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 11
Considerando a entidade Funcionário e seus Dependentes, a tabela 4 representa as instâncias de
cada entidade:

Dependente

Figura 10 – Entidade Fraca

Tabela 4 - Representação das entidades Funcionários e Dependentes


FUNCIONARIO

Num_Func Nome Data_Admissão


4455 João 24/04/1991
4456 Pedro 20/03/1992
4457 Manuel 14/04/1992
4458 Carlos 01/04/1995
DEPENDENTE

Num_Func Nome_dependente Parentesco


4455 Francisco Filho
4456 Daniel Filho
4456 Maria Filho

5 RELACIONAMENTOS
O relacionamento existe quando um ou mais dados de uma tabela estão relacionados de alguma
forma com um ou mais dados de outra tabela.
Agora que já temos as definições de Entidades e de Relacionamento, vamos aprender como
encontrá-los em um problema:

Cliente faz empréstimos

Desta frase, o que é Entidade e o que é relacionamento?

Pode-se dizer que os SUBSTANTIVOS são as Entidades e os VERBOS são os Relacionamentos.


Sendo assim tem-se:

 Entidades: Cliente e Empréstimo.


 Relacionamento: Faz

A figura 11 representa graficamente um relacionamento.

Relacionamento

Figura 11 – Representação gráfica de um relacionamento

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 12

Cliente faz Emprestimo

Figura 12 – Identificação de entidade e relacionamento

ãp

5.1 CARDINALIDADE DOS RELACIONAMENTOS


A quantidade de Entidades envolvidas em um Relacionamento é determinada pela Cardinalidade
do Tipo de Relacionamento, ou seja, pode-se estabelecer a quantidade mínima e máxima de
entidades envolvidas com cada entidade relacionada.
A Cardinalidade Mínima que determina a quantidade mínima de entidades relacionadas é
determinada por um número representativo, ou seja, 0 (zero), 1, 2,... N(muitos).
A Cardinalidade Máxima que determina a quantidade máxima de Entidades relacionadas é
determinada por um número representativo, ou seja, 0 (zero), 1, 2,... N (muitos).

Cardinalidade 1:1 (um para um)

1 1
Ementa Disciplina
possui

Cardinalidade 1:N (um para muitos)

1 N
Departamento possui Funcionario

Cardinalidade N:M (muitos para muitos)

N M
Aluno Disciplina
cursa

EXERCÍCIOS
1. Dentre os atributos num-matrícula, nome, endereço, CPF e data-nasc, relativos à entidade
EMPREGADO, escolha aquele(s) que poderia(m) ser usado(s) para atributo chave primária da
entidade. Representar o DER da entidade EMPREGADO.

2. Dentre os atributos num-placa, ano-fabricação, marca, cor, modelo e num-chassi referentes a um


automóvel, que atributo(s) deveria(m) ser o atributo determinante da entidade AUTOMÓVEL?
Faça o DER da entidade AUTOMÓVEL.

3. Uma Empresa possui funcionários. Do funcionário deseja-se guardar o número, nome e cargo.
Um funcionário trabalha em uma Empresa. Deseja-se guardar da Empresa o CNPJ, nome,
cidade, endereço.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 13
4. Deseja-se fazer um banco de dados para uma rede de hotelaria. Um hotel possui quartos.
Deseja-se guardar do quarto, o número, tipo, andar. Cada quarto pertence a apenas um hotel
(código, nome, cidade).

5. Um soldado, que possui as características nome, registro militar (RM), data de nascimento, possui
armas. Uma arma, que possui as características como número de série, registro e calibre, é de
um soldado. Uma arma é limpa por vários soldados. Um soldado limpa várias armas

6. Os Atletas participam de competições. Em uma competição participam vários atletas. Descreva


atributos para as competições e para os atletas.

5.2 ATRIBUTOS DE RELACIONAMENTO


Considere a figura 13.

Atributos de Relacionamentos são igualmente representados como elipses, ligadas aos conjuntos
de Relacionamento.

N M
Aluno cursa Disciplina

nota Figura 13 – Atributo de relacionamento

ãp

5.3 GRAU DOS RELACIONAMENTOS


 Um Relacionamento pode envolver duas ou mais Entidades;
 O Grau do Relacionamento é o número de Entidades envolvidas;
 Desta forma podem-se categorizar os tipos de relacionamento.

Abaixo seguem esses tipos:

Relacionamento Unário ou Auto Relacionamentos


Uma instância ou conjunto de instância de uma mesma Entidade, pode se relacionar com outra(s)
instância(s) da mesma Entidade. Exemplos 1 e 2.

 Funcionário gerencia Funcionário


 Disciplina é pré-requisito de Disciplina

Exemplo 1
O tipo de relacionamento Gerencia associa um funcionário com seu gerente, no qual ambas as
entidades são membros do mesmo tipo de entidade Funcionário.
Dessa forma o tipo entidade Funcionário participa duas vezes: uma vez no papel de gerente e
outra no papel de funcionário.

N
Gerencia
1º Módulo de Funcionario
Informática Etec de Ibitinga

1
TLBD I - Tecnologias e Linguagens para Banco de Dados I 14

Exemplo 2

Disciplina Pré-requisito

Relacionamentos Binários
Relacionamento que envolve duas Entidades.

N M
Aluno cursa Disciplina

Relacionamentos Ternários
Os conjuntos de relacionamento podem envolver mais de dois conjuntos de entidades.

Professor Aluno
PAD

Disciplina

Como Determinar as Cardinalidades de um Relacionamento Ternário


Para determinar as Cardinalidades, por exemplo, de ALUNO-PROFESSOR-DISCIPLINA, faça o
seguinte:

1. Escolha uma Entidade, por exemplo, ALUNO, e pergunte: Para cada Aluno, quantos pares
Professor-Disciplina eu tenho.

2. Coloque a resposta na Entidade ALUNO. Neste caso N. Isto é, um Professor lecionando uma
Disciplina pode ter vários Alunos.

3. Escolhendo a Entidade PROFESSOR. Pergunta-se: Para cada Professor, quantos pares Aluno-
Disciplina eu tenho.

4. Coloque a resposta na Entidade PROFESSOR. Neste caso 1. Isto é, um Aluno não pode ter em
determinada certa Disciplina mais do que um Professor (no caso deste exemplo).

5. Escolhendo a Entidade DISCIPLINA. Pergunta-se: Para cada Disciplina, quantos pares Aluno-
Professor eu tenho.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 15
6. Coloque a resposta na Entidade Disciplina. Neste caso N. Isto é, um Professor pode lecionar a
determinado Aluno mais do que uma Disciplina.

EXERCÍCIOS
Verificar na situação abaixo quais são as entidades, os atributos (Chave primária, compostos,
multivalorados e derivados) e seus relacionamentos fazer a representação gráfica por meio do
DER.

1. Um funcionário é supervisionado por um gerente (o gerente também é um funcionário). Um gerente


supervisiona vários funcionários. Do funcionário deseja-se saber nome, CPF e endereço.

2. Um médico trata de pacientes. Do médico deseja-se saber CRM, nome e suas especializações. O
médico pede exames para vários pacientes. Um paciente, no qual há necessidade de sabermos seu
número, nome, endereço e idade, é tratado por vários médicos. Um paciente realiza vários tipos de
exames. Um tipo de exame, destes há necessidade de guardar seu número, data e descrição, é feito por
vários pacientes a pedido do médico.

3. Uma Transportadora quer automatizar seu controle de transporte. Ela deseja ter as seguintes
informações de seus caminhões: marca, modelo, ano, capacidade de transporte e a data em que um
motorista viajou com o caminhão (mais de um motorista pode dirigir um caminhão). Do motorista deseja-
se saber nome, RG, idade, endereço e o caminhão com o qual já viajou. Um caminhão pode transportar
diversos produtos, destes produtos deseja-se saber nome, marca, fabricante e data de transporte( um
tipo de produto pode viajar em mais de um caminhão).

4. Uma empresa de agenciamento de mão-de-obra pretende informatizar o seu cadastro de profissionais,


candidatos a empregos temporários, objetivando construir um banco de dados onde possa manter os
dados cadastrais dos profissionais e seus contratos temporários com as empresas clientes.
O profissional é identificado por um número de controle e, além dessa informação, ficam registrados o
seu nome, endereço, nascimento e profissão.
Os contratos de mão-de-obra temporária são feitos individualmente (um contrato para cada profissional)
com as empresas clientes. Cada contrato é identificado por um número único, a vigência do contrato
(data de início e de término) e o valor pago por hora trabalhada.
As empresas clientes são identificadas por um CNPJ e possuem um nome e endereço.

5. Um médico (número, nome, especialidade) passa diversas receitas e cada receita é passada por apenas
um médico. Uma receita (código da receita, data) pode ter vários medicamentos descriminados (Código,
nome do medicamento, recomendação de uso), mas cada receita pertence a apenas um paciente (cpf,
nome, idade, enfermidade), sendo que um paciente pode ter várias receitas.

6. Os clientes (sobre os quais deseja-se armazenar Número, Nome e Endereço) compram apólices de
seguro (no mínimo uma para se tornar cliente). Sobre as apólices de seguro é importante armazenar
Número e Valor. Cada apólice de seguro dá cobertura a apenas um veículo (Placa, modelo, marca, ano,
valor). Caso o carro se envolva em acidentes e acione o seguro, é importante armazenar a Data, hora e
o Local do acidente.

6 MAPEAMENTO DO MODELO ER PARA MODELO RELACIONAL


1º Módulo de Informática Etec de Ibitinga
TLBD I - Tecnologias e Linguagens para Banco de Dados I 16
O MER é um Modelo Conceitual: Pode ser usado para especificar conceitualmente a estrutura de
dados de uma aplicação. O Modelo Relacional é um Modelo Lógico (porém bem próximo ao Físico): é
uma descrição de um banco de dados no nível de abstração visto pelo usuário do SGBD. Assim, o
modelo lógico é dependente do tipo particular de SGBD que estão sendo usado.
O Mapeamento permite que se traduzam os esquemas concebidos com um modelo de conteúdo
semântico mais alto para uma implementação utilizando um modelo lógico (ou físico). O Mapeamento do
MER para o Modelo Relacional (MRel) é um procedimento executado em 6 passos consecutivos
apresentados a seguir.

MAPEANDO ENTIDADES
Cada Conjunto de Entidades é mapeada como uma relação que envolve todos os atributos do
conjunto de entidades.
Os atributos CHAVES comporão a chave da relação.
RA
Aluno

Nome

Aluno {RA, Nome}

ENTIDADES FRACAS
Conjunto de Entidades Fracas(CEF) são mapeadas numa relação formada por todos os
atributos do CEF mais os atributos que são chave das relação ao qual o CEF depende.

CodigoF
N 1
Dependente possui Funcionario
Nome

NomeDep Fone
Idade
Funcionario {CodigoF, NomeFunc, Fone}
Dependente {CodigoF, NomeDep, Idade}

RELACIONAMENTO BINÁRIO COM CARDINALIDADE 1:1


Conjunto de Relacionamentos Binários (CRB) de Cardinalidade 1:1 não são representados como
novas relações.
Seus atributos são acrescentados numa das relações que mapeiam os Conjuntos de Entidades
(CE) envolvidos (qualquer uma). Nessa mesma relação incluem-se também os atributos chave da
relação que mapeia o outro CE.

Disciplina {Sigla, Nome, Num_Creditos}

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 17

Ementa {Nome, data_aprov, Sigla_disc}

RELACIONAMENTO BINÁRIO COM CARDINALIDADE 1:N


Conjunto de Relacionamentos Binários (CRB) de cardinalidade 1:N também não são
representados como novas relações. Seus atributos são acrescentados na relação que mapeia o CE que
ocupa o papel de cardinalidade N. Os atributos chave da relação que mapeia o CE que participa com
cardinalidade 1 são também acrescentados na CE com papel de cardinalidade N.

1 N Sigla
CodigoP Professor possui Disciplina

Nome
Nome Horario Num_Creditos

Professor={CodigoP, Nome}
Disciplina={Sigla, Nome, Num_Creditos, CodigoP, Horario}

RELACIONAMENTO BINÁRIO COM CARDINALIDADE M:N


Cada CR Binário de Cardinalidade M:N é representado como uma nova relação. Os atributos da
relação são os do CR mais os atributos chave das relações que mapeiam os CEs envolvidos. A Chave
da Relação é a concatenação dos atributos chaves das relações que mapeiam os CEs envolvidos.

M N Sigla
RA Aluno Matriculado Disciplina
Nome
Nome
Nota Num_creditos

Aluno= { RA, Nome}


Disciplina= { Sigla, nome, Num_creditos}
Matriculado= { RA, Sigla, nota}

RELACIONAMENTOS TERNÁRIOS
Conjuntos de Relacionamentos de ordem maior do que dois com cardinalidade diferente de M:N:P
têm um mapeamento complexo. Assim, usualmente se mapeiam os conjuntos de relação ternários,
quaternários, etc. como se todos fossem de cardinalidade vários para vários para vários... etc.

Nome
M N
Aluno monitora Disciplina
RA Sigla

Nome
P Num_creditos

1º Módulo de Informática Codigo Professor Etec de Ibitinga

Nome
TLBD I - Tecnologias e Linguagens para Banco de Dados I 18

Aluno {RA, Nome}


Disciplina {Sigla, nome, Num_creditos}
Professor {Codigo, Nome}
Monitora {RA, Sigla, Codigo}

ATRIBUTOS COMPOSTOS E MULTIVALORADOS


Os atributos compostos serão decompostos nas relações e os multivalorados tornar-se-ão
relações cuja chave primária será composta pela chave da entidade possuidora do atributo mais o
atributo multivalorado.
Secretaria
Num_func

telefone endereco
rua

bairro

Secretaria {Num_func, rua, bairro}


Secretaria_Telefone {Num_func, telefone}

RELACIONAMENTO UNÁRIO (1:1)


Cod_Pessoa
1
Pessoa casa

1
Nome_Pessoa

Pessoa {cod_Pessoa, nome_Pessoa, cod_Pessoa_Conjugue}

RELACIONAMENTO UNÁRIO (1:N)


Cod_Func
N

Funcionario supervisiona

1
Nome_Func

Funcionario {cod_Func, nome_Func, cod_supervisor}

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 19

RELACIONAMENTO UNÁRIO (N:M)

Cod_Disc
N

Disciplina Pré-requisitos

M
Nome_Disc

Disciplina {cod_Disc, nome_Disc}


Pre_requisito {cod_Disc, cod_pre_requisito}

EXERCÍCIOS
Faça o mapeamento dos relacionamentos abaixo:

1. Relacionamento Binário - cardinalidade 1:1

Data_instalacao codCom

codConf 1 1
Conferencia organiza Comissao

Nome
Nro_membro

2. Relacionamento Binário - cardinalidade 1:N

nomeP horario
sigla
codP

1 N
Professor ministra Disciplina
nomeD

3. Relacionamento Binário - cardinalidade N:M

nro_Alu Nota sigla


nomeA

N M
Aluno matricula Disciplina

nomeD

4. Relacionamento unário ou auto relacionamento – Cardinalidade 1:N

codFunc
N
Funcionario Supervisiona
1º Módulo de Informática Etec de Ibitinga

nome
TLBD I - Tecnologias e Linguagens para Banco de Dados I 20

5. Relacionamento unário ou auto relacionamento – Cardinalidade N:M

numero N

Pecas Componentes

descricao M

6. Relacionamento Ternário – Cardinalidade 1:N:N

horario sigla
Nro_Alu

N 1
Aluno Disciplina
monitora

nomeA M nome
D
Professor Cod_P
rof

Nome
P
7. Relacionamento Ternário – Cardinalidade M:N:P

qtde codF
CodProj
P
N nomeF
Projeto fornece Fornecedor

Inicio M
codPeca
Peca

nomePe

8. Relacionamento Binário: Entidade Fraca 1:N

ncopia

1º Módulo
isbn de Informática Etec de Ibitinga
1 N
Livro Copia
possui
TLBD I - Tecnologias e Linguagens para Banco de Dados I 21

9. Multivalorados

Telefone
s
Nro_Aluno
Aluno

NomeA
Graduacao

10. Faça o mapeamento do Diagrama E-R


Sala
CodigoT sigla
N 1
Turma corresponde Disciplina

Horario
1
nome
D
tem

CodigoA
Aula_pratica

Horario
Laboratorio
GENERALIZAÇÃO E ESPECIALIZAÇÃO
Algumas entidades contêm conjunto de atributos específicos. Quando ocorre a situação de uma
entidade possuir atributos que não fazem parte de todas as instâncias da entidade ou quando estas
instâncias se relacionarem de maneira diferente com outras entidades, temos ai o conceito de
GENERALIZAÇÃO/ ESPECIALIZAÇÃO.

Considere a entidade CLIENTE com os atributos númeroCliente, NomeCliente e QuantiaDevida.

Suponha que um CLIENTE pode ser uma única pessoa individual, uma associação ou uma
corporação e que serão armazenados dados adicionais dependendo do tipo.
Suponha ainda que estes dados adicionais são:

 CLIENTE-INDIVIDUAL: Endereco, NumeroPrevidenciaSocial


 CLIENTE-ASSOCIACAO: NomeAssociado, Endereco, Taxa
 CLIENTE-CORPORACAO: PessoaContato, Fone, NumeroIdenti_cacao

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 22

Para modelar esta situação demos 2 alternativas:

1. Alocar todos estes atributos na entidade CLIENTE. Neste caso, alguns dos atributos não são
aplicáveis a todas as entidades.
2. Definir 3 entidades para cada um dos tipos. As quais seriam: CLIENTE-INDIVIDUAL,
CLIENTEASSOCIACAO e CLIENTE-CORPORACAO.

A figura abaixo demonstra esta situação do cliente. Uma vez que a entidade CLIENTE é uma
entidade genérica, ela é denominada de GENERALIZAÇÃO (ou entidade de nível superior) e as
entidades INDIVIDUAL, ASSOCIADO
e CORPORAÇÃO são denominadas ESPECIALIZAÇÃO (ou entidade de nível inferior).
NumeroCliente
Cliente
NomeCliente

QuantiaDevida

Individual Associado Corporação

Endereço Endereço PessoaContato

NumPrevSocial Taxa Telefone

RELACIONAMENTOS ENTRE ENTIDADES ESPECIALIZADAS


Entre as especializações pode haver relacionamento. Considere a figura abaixo, ela demonstra o
relacionamento que existe entras as especializações PROFESSOR e ALUNO.
numero
Nome

Pessoa CPF

Idade

Aluno leciona Professor Funcionário

Curso titulacao funcao

MAPEAMENTO DE GENERALIZAÇÃO E ESPECIALIZAÇÃO

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 23

Outras Formas de Mapeamento


_ Modelo entidade relacionamento
– E1: superclasse
– E2, ..., En : subclasses de E1
_ Modelo relacional
– as tabelas de E2 a En possuirão:
_ os seus atributos específicos
_ os atributos de E1
_ a chave primária de E1
_ Chave primária das subclasses
– chave primária de E1

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 24

Outras Formas de Mapeamento


_ Modelo entidade relacionamento
– E1: superclasse
– E2, ..., En : subclasses de E1
_ Modelo relacional
– a tabela de E1 possuirá:
_ os atributos de E1
_ os atributos de E2, ..., En
_ o atributo discriminador, caso necessário

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 25

Outras Formas de Mapeamento


_ Modelo entidade relacionamento
– E1: superclasse
– E2, ..., En : subclasses de E1
_ Modelo relacional
– a tabela de E1 possuirá:
_ os atributos de E1
– a tabela referente à junção das subclasses possuirá:
_ os atributos de E2, ..., En
_ a chave primária de E1
_ um atributo discriminador, caso necessário
_ Chave primária da tabela referente à junção
– chave primária de E1

AGREGAÇÃO
Uma limitação do modelo E-R é que não é possível expressar relacionamentos entre
relacionamentos.
Para ilustrar esta necessidade, considere um banco de dados descrevendo informações sobre
Funcionários que trabalham em um determinado Projeto e utilizam uma série de diferentes Máquinas em
seus trabalhos.
Usando o modelo básico de construção E-R, obtemos o diagrama E-R da figura abaixo.

Horas
M N
1º Módulo de Informática
Projeto Funcionário Etec de Ibitinga
trabalho

M
N
Id Numero
TLBD I - Tecnologias e Linguagens para Banco de Dados I 26

DIAGRAMA E-R COM RELACIONAMENTOS REDUNDANTES


No exemplo da figura anterior, o relacionamento usa deve empregar informações já existentes
previamente no conjunto de relacionamento Trabalho. Além disso, há pares Funcionário-Trabalho que
não usam nenhuma máquina, isto é, não estão em usa.
A solução é usar a Agregação. A agregação é uma abstração por meio da qual, relacionamentos
são tratados como entidades de nível superior. Assim, para nosso exemplo, o relacionamento Trabalho e
as entidades FUNCIONÁRIO e PROJETO, tornam-se uma única entidade.
Isto permite que relacionar o conjunto FUNCIONARIO, TRABALHO e PROJETO com a entidade
MÁQUINA.
A figura abaixo mostra a solução de nosso problema em forma de agregação.

Horas
M N
Projeto Funcionário
trabalho

Id Numero

Nome Descricao

M
Descricao
usa
N Id

Máquina

Agora com agregação, significa dizer que o conjunto Funcionário-Projeto nem sempre utilizam
máquinas.
Outros exemplos: Assassino-Vitima-Arma, Cliente-Conta-CartãoCrédito, Rua-Bairro-Linha.
Agora que já temos a noção do uso da Agregação vamos analisar os casos em que se deve usá-la:
 Quando é necessário identificar cada relacionamento.
 Quando é necessário mais de um relacionamento envolvendo as mesmas entidades.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 27

MAPEANDO AGREGAÇÃO
_ Dados vistos em um nível mais baixo
– Atributos dos tipos-relacionamentos
– Chaves primárias dos tipos-entidades

Horas
M N
Projeto Funcionário
trabalha

Id Numero

Nome Descricao

M
Descricao
usa
N Id

Máquina

Projeto (ID_Proj, nome)


Funcionário (Numero, Descrição)
Trabalha (ID_Proj, numero, horas)
Maquina (ID_maquina, descrição_maq)
Usa (ID_Proj, numero, ID_maq)

OUTRO EXEMPLO DE AGREGAÇÃO

Observações gerais sobre agregação:


 Agregações envolvendo relacionamentos 1:N NÃO existem, pois nesse caso cada entidade do
lado N já indica, por meio do relacionamento, com qual entidade do lado 1 está relacionada.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 28

 As entidades dentro da agregação podem ser relacionar, normalmente, com outras entidades,
para isso, a linha do relacionamento deve ultrapassar os limites da agregação.
 Nada impede de se fazer uma agregação envolvendo mais de dois conjuntos de entidades
relacionados por um relacionamento, mas só pode haver um relacionamento em uma agregação.

Por fim, vamos aprender como se "lê" uma agregação tomando como exemplo a figura acima: a
leitura é feita de "dentro pra fora", ou seja, lê-se primeiro o relacionamento dentro da agregação para em
seguida ler o que está fora da mesma. Sendo assim, no exemplo a leitura é feita da seguinte forma: um
médico consulta um paciente e, a partir dessa consulta, pode ou não solicitar um exame.

EXERCÍCIOS

MAPEAMENTO

Exercício 1 -

Exercício 2 -

Exercício 3 -

Exercício 4 -

Exercício 5 -

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 29

6. Mapeie o
esquema
entidade
relacionam

ento em um esquema relacional, especifique todas as chaves primárias e estrangeiras.

MODELAGEM CONCEITUAL
Construa o DER e depois faça o mapeamento
7. Construa um diagrama E-R (incluindo as cardinalidades) para controle do prontuário de pacientes
de um hospital. O hospital possui um conjunto de pacientes e um conjunto de médicos. No registro
dos pacientes, temos o nome, RG, CPF, endereço e telefone. No registro dos médicos temos o
nome, especialidade, RG, CPF, CRM, endereço e telefone. Cada paciente tem associado a si um
prontuário (sua ficha), onde são registradas basicamente todas as ocorrências, exames, consultas,
medicamentos ministrados associados a ele. Cada registro no seu prontuário, além de ter a data
tem que estar relacionado a um médico, que é o responsável pela informação do registro
cadastrado no sistema.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 30
8. Construa um diagrama E-R para uma companhia de seguros de automóveis com um conjunto de
clientes, onde cada um possui um um número de carros. Os dados do cliente são nome, RG, CPF,
endereço e telefone. Do carro deve-se armazenar a placa, código Renavan, fabricante, modelo, e
ano. Associado a cada carro há um histórico de ocorrências. Um carro podem possuir várias
ocorrências ou nenhuma. Cada ocorrência deve ter uma data, local e descrição.

9. Exemplo de projeto conceitual de um banco de dados EMPRESA

a) A empresa está organizada em departamentos. Cada departamento tem um nome único, um


número único e um empregado que controla o departamento. Temos a data em que o
empregado começou a gerenciar o departamento. E este pode ter diversas localizações.
b) Um departamento controla um número qualquer de projetos, cada qual com um nome único,
um número único e uma localização.
c) Armazenamos o nome de cada empregado, o número do seguro social, endereço, salário,
sexo e data de nascimento. Um empregado está alocado a um departamento, mas pode
trabalhar em diversos projetos que não são controlados, necessariamente, pelo mesmo
departamento. Controlamos o número de horas semanais que um empregado trabalha em
cada projeto. Também controlamos o supervisor direto de cada empregado.

d) Queremos ter o controle dos dependentes de cada empregado para fins de seguro.
Guardamos o primeiro nome, sexo, data de nascimento de cada dependente, e o parentesco
dele com o empregado.

10. Um berçário deseja informatizar suas operações. Quando um bebê nasce, algumas informações
são armazenadas sobre ele, tais como: nome, data do nascimento, peso do nascimento, altura, a
mãe deste bebê e o médico que fez seu parto. Para as mães, o berçário também deseja manter um
controle, guardando informações como: cpf, nome, endereço, telefone. Para os médicos, é
importante saber: CRM, nome, telefone celular e especialidade.

11. Uma floricultura deseja informatizar suas operações. Inicialmente, deseja-se manter um cadastro de
todos os seus clientes, mantendo informações como: CPF, nome, telefone e endereço (Rua,
número, bairro, cidade). Deseja também manter um cadastro contendo informações sobre os
produtos que vende, tais como: nome do produto, tipo, preço e quantidade em estoque. Quando um
cliente faz uma compra, a mesma é armazenada, mantendo informação sobre o cliente que fez a
compra, a data da compra, o valor total e os produtos comprados.

12. Uma biblioteca deseja manter informações sobre seus livros. Inicialmente, quer armazenar para os
livros as seguintes características: ISBN, título, ano, editora e autores deste livro. Para os autores,
deseja manter: nome e nacionalidade. Cabe salientar que um autor pode ter vários livros, assim
como um livro pode ser escrito por vários autores. Cada livro da biblioteca pertence a uma
categoria. A biblioteca deseja manter um cadastro de todas as categorias existentes, com
informações como: código da categoria e descrição. Uma categoria pode ter vários livros
associados a ela.

13. Mapeie o diagrama ER abaixo em um esquema relacional.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 31

14. Usando seus conhecimentos de generalização/especialização, analise as duas classes abaixo e


proponha um novo modelo que elimine as duplicações. Depois de corrigido, faça o mapeamento
para o modelo relacional.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 32

15. Usando seus conhecimentos de generalização/especialização, analise as duas classes abaixo e


proponha um novo modelo que elimine as duplicações. Depois de corrigido, faça o mapeamento
para o modelo relacional.

16. Usando seus conhecimentos de generalização/especialização, analise as duas classes abaixo e


proponha um novo modelo que elimine as duplicações. Depois de corrigido, faça o mapeamento
para o modelo relacional.

17. Elaborar o esquema conceitual para o BD de uma companhia.

1º Módulo de Informática Etec de Ibitinga


TLBD I - Tecnologias e Linguagens para Banco de Dados I 33
A companhia é organizada em departamentos. Cada departamento tem um nome e um número.
Além disto, um departamento controla vários projetos, cada um dos quais com um nome, um número de
identificação e o período de tempo no qual deve ser desenvolvido. Na referida companhia, cada projeto
somente pode ser desenvolvido por um departamento específico. Existem somente três tipos de
funcionários que trabalham na companhia: pesquisador, secretário e de limpeza.
Para os pesquisadores, deseja-se armazenar: o nome, o endereço, o sexo, a data de aniversário, o
salário e a área de atuação. Para os secretários, deseja-se armazenar: o nome, o endereço, o sexo, a
data de aniversário, o salário e o grau de escolaridade. Já para os funcionários de limpeza, deseja-se
armazenar: o nome, o endereço, o sexo, a data de aniversário, o salário, o cargo e a jornada de
trabalho.
Os cargos dos funcionários responsáveis pela limpeza são hierárquicos. Assim, deseja-se armazenar
também, para cada funcionário de limpeza, informações sobre o funcionário de limpeza que o gerencia.
Os funcionários da companhia são identificados por meio de um código de identificação, e podem estar
associados a apenas um único departamento. Funcionários que são pesquisadores podem trabalhar em
diversos projetos, independentemente desses projetos estarem sendo desenvolvidos no mesmo
departamento no qual o empregado está associado. Deve-se armazenar o número de horas semanais
trabalhadas por cada pesquisador em cada projeto no qual ele trabalha. Devem-se armazenar também
informações sobre os dependentes de cada funcionário para propósitos de ajuda família. Deve-se
armazenar o nome, o sexo e a data de aniversário, além do grau de parentesco com o funcionário.

18. Mapeie o esquema entidade relacionamento em um esquema relacional, especifique todas as


chaves primárias e estrangeiras.

1º Módulo de Informática Etec de Ibitinga

Potrebbero piacerti anche