Você está na página 1de 9

1

MODELAGEM DE DADOS Consiste em mapear o mundo real do sistema em um modelo gráfico que irá representar o modelo e o relacionamento existente entre os dados.

MODELO DE ENTIDADE-RELACIONAMENTO

Principal ferramenta gráfica para representação do Modelo de Dados.

Identifica entidades de dados e seus relacionamentos.

É um modelo de dados cujos conceitos foram projetados para estar o mais próximo possível da visão que o usuário tem dos dados.

Não há preocupação em representar como os dados estarão armazenados.

Utilizado durante o processo de projeto de banco de dados.

1. MINI MUNDO

Descrição formal da realidade a ser representada. Exemplo: suponhamos que as Faculdades Dom Bosco funcionem assim:

Cada aluno pertence a um curso, que por sua vez pode ter vários alunos. O curso é armazenado por um código único e pelo seu nome. Os alunos são cadastrados pela matrícula, nome e endereço. Não existem 2 alunos com a mesma matrícula. Cada curso possui algumas disciplinas que são identificadas por um controle único e pela sua descrição. A mesma disciplina pode ser lecionada em outros cursos em dias diferentes. Cada professor pode ministrar mais de uma disciplina, mas cada disciplina só pode ser lecionada por um único professor. CPF, nome e telefone são os atributos de cada professor.

2. DIAGRAMA Os objetos que compõem o diagrama ER estão listados a seguir:

ENTIDADE

ENTIDADE FRACA RELACIONAMENTO 1 N 1 R E2
ENTIDADE
FRACA
RELACIONAMENTO
1
N
1
R
E2

ATRIBUTOENTIDADE ENTIDADE FRACA RELACIONAMENTO 1 N 1 R E2 ATRIBUTO CHAVE ATRIBUTO COMPOSTO Taxa de Cardinalidade

ATRIBUTO CHAVEENTIDADE ENTIDADE FRACA RELACIONAMENTO 1 N 1 R E2 ATRIBUTO ATRIBUTO COMPOSTO Taxa de Cardinalidade 1:N

FRACA RELACIONAMENTO 1 N 1 R E2 ATRIBUTO ATRIBUTO CHAVE ATRIBUTO COMPOSTO Taxa de Cardinalidade 1:N

ATRIBUTO

COMPOSTO

Taxa de Cardinalidade 1:N para E1:E2

2

Composto por um conjunto de objetos gráficos que visa representar todos os objetos do modelo Entidade-Relacionamento, tais como entidades, atributos, atributos chaves e relacionamentos, etc.

Apresenta uma visão lógica do banco de dados.

Fornece um conceito mais generalizado de como estão estruturados os dados de um sistema.

2.1. Entidade Objeto ou evento básico do mundo real, concreto ou abstrato, que possui existência independente, distintamente identificado e tratado como uma categoria definida, acerca da qual armazenamos dados.

uma categoria definida, acerca da qual armazenamos dados. São entidades:  Ente físico ou Jurídico

São entidades:

Ente físico ou Jurídico (Funcionário, Cliente, Aluno, etc.);

Documento (Nota Fiscal, Ordem de Serviço, etc.);

Local (Departamento, Unidade, etc.);

Histórico (Histórico Escolar, Vendas Acumuladas, etc.);

Material (Matéria-prima, Produto, etc.).

Não são entidades:

Entidade com apenas 1 elemento;

Operações do sistema;

Cargos de direção.

Instância de Entidade São os elementos da entidade. Exemplo: Cliente 10, Funcionário João, Aluno Pedro, etc.

Entidade de Dados (Supertipos) Podem ser subdivididas em diversas categorias de elementos (Subtipos), cada uma se caracterizando por atributos específicos.

Física

Pessoa

Jurídica

3

Entidades Fracas Algumas entidades podem não ter um atributo chave por si só. Não poderemos distinguir algumas entidades por que as combinações dos valores de seus atributos podem ser idênticas. Essas entidades precisam estar relacionadas com uma entidade do tipo entidade proprietária.

(entidade forte)

(entidade fraca)

Banco

Banco Agência
Banco Agência
Banco Agência
Banco Agência

Agência

2.2. Atributos Dados elementares que permitem descrever a entidade ou relacionamento. Informações que desejamos guardar sobre a instância de entidade.

Simples: são aqueles que possuem uma única opção. Ex: Identidade.

Determinante: garante a unicidade de cada ocorrência. Ex: Matrícula.

Composto: pode ser dividido em outros atributos. Ex: Endereço – Rua + Número + Bairro + Cidade.

Multi-valorados: são aqueles que podem mais de uma opção. Usa-se um *. Ex – Telefone - cada um pode ter mais de um telefone.

Representação Gráfica

um pode ter mais de um telefone. Representação Gráfica O círculo preenchido representa a chave principal
um pode ter mais de um telefone. Representação Gráfica O círculo preenchido representa a chave principal

O círculo preenchido representa a chave principal

Domínio Conjunto ou universo de valores possíveis que um atributo pode armazenar. Exemplo:

Conjunto de valores do atributo Sexo do funcionário: M ou F; Conjunto de valores do atributo Nome do aluno: 40 caracteres. Conjunto de valores do atributo Salário: inteiro maior que 5000

4

Tupla É o elemento do conjunto de uma entidade. É uma estrutura de atributos intimamente relacionados e interdependentes que residem em uma entidade específica. É similar a um registro num arquivo comum.

Chave ou Identificador É o atributo contido na tupla que a personaliza e individualiza.

Chave Primária

É o atributo ou grupamento de atributos cujo valor identifica unicamente

uma tupla dentre todas as outras de uma identidade.

Chave Candidata É o atributo ou grupamento de atributos que tem a propriedade de identificação única. Pode vir a ser a chave primária.

Chave Estrangeira Atributo de uma entidade que é a chave primária de outra entidade.

Chave Composta ou Concatenada

É formada pelo grupamento de mais de um atributo.

2.3. Relacionamento

É a associação, com um significado, entre duas ou mais entidades.

com um significado, entre duas ou mais entidades. Exemplo: O João está trabalhando no Aprovisionamento.

Exemplo: O João está trabalhando no Aprovisionamento. João - Elemento do conjunto de valores do atributo Nome do funcionário da entidade Funcionário; Aprovisionamento - Elemento do conjunto de valores do atributo Nome do Setor da entidade Setor; Trabalhando - Ligação existente entre um Funcionário e um Setor.

FUNCIONÁRIO

TRABALHA
TRABALHA
SETOR
SETOR

SETOR

SETOR

5

2.4. Cardinalidade Representa a freqüência com que existe o relacionamento. Representa a quantidade de elementos da entidade A associados a quantidade de elementos da entidade B e vice-versa.

Ex.:

1 para 1

1 para N

N para 1

N para N

Relacionamento 1:1 Francisco é casado com a Maria. Casado - Ligação entre um Homem e uma Mulher, sendo que um homem pode ser casado com uma e apenas uma mulher, assim como, uma mulher pode ser casada com um e apenas um homem.

1 HOMEM
1
HOMEM
mulher pode ser casada com um e apenas um homem. 1 HOMEM 1 MULHER CASAMENTO Relacionamento
mulher pode ser casada com um e apenas um homem. 1 HOMEM 1 MULHER CASAMENTO Relacionamento
1
1

MULHER

CASAMENTO

com um e apenas um homem. 1 HOMEM 1 MULHER CASAMENTO Relacionamento 1:N ou N:1 Pedro

Relacionamento 1:N ou N:1 Pedro trabalha no Departamento de Pessoal. Trabalha - Ligação entre um Funcionário e um Departamento, onde um funcionário pode trabalhar em um e somente um departamento e um departamento pode ter vários funcionários.

N EMPREGADOS LOTAÇÃO
N
EMPREGADOS
LOTAÇÃO
1
1
1 DEPARTAMENTO

DEPARTAMENTO

1 DEPARTAMENTO

Relacionamento N : N Antônio está matriculado na disciplina Banco de Dados.

Matriculado - Ligação existente entre um Aluno e uma Disciplina, onde um aluno pode estar matriculado em várias disciplinas e cada disciplina pode ter vários alunos matriculados.

MATRICULADO
MATRICULADO
ALUNOS N

ALUNOS

N
N
ALUNOS N
N
N
N DISCIPLINA
N DISCIPLINA

DISCIPLINA

6

Atributos do Relacionamento Quando um relacionamento possui atributos, também conhecido como relacionamento valorado. Esta situação ocorre apenas em relacionamento N : N.

Pedro trabalha no projeto Alfa durante 30 horas. Trabalha - Ligação existente entre um Funcionário e um Projeto.

Neste caso, este funcionário trabalha 30 horas neste projeto, porém este mesmo funcionário poderá trabalhar outro número de horas em outro projeto, assim como outro funcionário trabalha outro número de horas no mesmo projeto Alfa.

TRABALHA
TRABALHA

FUNCIONÁRIO

FUNCIONÁRIO N
N
N
FUNCIONÁRIO N
N
N
N PROJETO
N PROJETO

PROJETO

HORAS
HORAS
Alfa. TRABALHA FUNCIONÁRIO N N PROJETO HORAS Relacionamentos Recursivos ou Auto-Relacionamento É o

Relacionamentos Recursivos ou Auto-Relacionamento É o relacionamento estabelecido entre uma entidade e ela mesma. Cada tipo entidade que participa de um tipo relacionamento desempenha um papel particular no relacionamento.

No exemplo abaixo nós vemos o papel do empregado para o tipo entidade Empregado. Temos um relacionamento entre o tipo entidade EMPREGADO, onde um empregado pode supervisionar outro empregado e um empregado pode ser supervisionado por outro empregado.

N SUPERVISIONA EMPREGADO 1
N
SUPERVISIONA
EMPREGADO
1

7

Relacionamento Ternário Quando existe o relacionamento entre três entidades. Ex. Fornecedor comercializa materiais que são usados em projetos específicos.

FORNECEDORES

FORNECEDORES

FORNECEDORES 1
1
1
FORNECEDORES 1
FORNECEDORES 1
MATERIAIS N
MATERIAIS N
MATERIAIS

MATERIAIS

MATERIAIS N
N
N
UTILIZADO N PROJETOS
UTILIZADO
N
PROJETOS

2.5. Estrutura de generalização e especialização Permite que uma ENTIDADE tenha sub-classes ou pertença a super-classes. A associação entre uma Generalização (super-classe) e suas Especializações (sub-classes), recebe o nome de “isa” (é um) e é representada por um triângulo:

de “isa” (é um) e é representada por um triângulo: Os Atributos Nome, Data Admissão, Rg

Os Atributos Nome, Data Admissão, Rg, são Atributos de Funcionários. O Atributo Idiomas, só é útil para Secretárias. Os Atributos Habilitação, Acidentes são exclusivos dos Motoristas Somente os Motoristas dirigem Veículos. Apenas os Engenheiros participam de Projetos.

8

3. ESQUEMA DE TABELAS Dado um Modelo Entidade-Relacionamento completo, devemos montar um esquema onde aparecem todas as tabelas, com seus campos e chaves. A chave principal deve receber sublinhado simples e a chave secundária um sublinhado duplo.

Caso 1: cada produto só é distribuído por um único fornecedor, que pode distribuir vários produtos.

preço

N
N
fornecedor, que pode distribuir vários produtos. preço N distribuição Produto Descrição Fornecedor Cnpj 1 Número
distribuição
distribuição

Produto

Produto
Produto
Produto

Descriçãodistribuir vários produtos. preço N distribuição Produto Fornecedor Cnpj 1 Número Nome Tabelas : estão relacionadas

Fornecedor
Fornecedor

Fornecedor

Fornecedor
Cnpj
Cnpj
1
1

NúmeroN distribuição Produto Descrição Fornecedor Cnpj 1 Nome Tabelas : estão relacionadas pelo campo Cnpj-Fornec

Nomedistribuição Produto Descrição Fornecedor Cnpj 1 Número Tabelas : estão relacionadas pelo campo Cnpj-Fornec

Tabelas: estão relacionadas pelo campo Cnpj-Fornec

TAB-PRODUTO ( Núm-Prod , Desc-Prod, Preço-Prod , Cnpj-Fornec )

TAB-FORNECEDOR ( Cnpj-Fornec , Nome-Fornec )

Caso 2: cada produto é distribuído por vários fornecedores, que podem distribuir

apenas 1 produto.

preço
preço
fornecedores, que podem distribuir apenas 1 produto. preço distribuição Produto Descrição 1 Fornecedor Cnpj N
distribuição
distribuição

Produto

Produto
Produto
Produto

Descriçãodistribuir apenas 1 produto. preço distribuição Produto 1 Fornecedor Cnpj N Número Nome Tabelas : estão

1
1
Fornecedor
Fornecedor

Fornecedor

Fornecedor
Cnpj
Cnpj
N
N

Númerodistribuição Produto Descrição 1 Fornecedor Cnpj N Nome Tabelas : estão relacionadas pelo campo Núm-Prod

NomeProduto Descrição 1 Fornecedor Cnpj N Número Tabelas : estão relacionadas pelo campo Núm-Prod

Tabelas: estão relacionadas pelo campo Núm-Prod

TAB-PRODUTO ( Núm-Prod , Desc-Prod )

9

Caso 3: cada produto é distribuído por vários fornecedores, que podem distribuir vários produtos.

preço Fornecedor distribuição
preço
Fornecedor
distribuição
Cnpj
Cnpj

Produto

Produto
Produto
Produto
Descrição
Descrição
N
N
Número Tabelas
Número
Tabelas
Nome
Nome

TAB-PRODUTO ( Núm-Prod , Desc-Prod )

TAB-DISTRIBUIÇÃO (Núm-Prod , Cnpj-Fornec , Preço-Prod )

TAB-FORNECEDOR ( Cnpj-Fornec , Nome-Fornec )

1 N N 1
1
N
N
1

TAB-PRODUTO

TAB-DISTRIBUIÇÃO

TAB-FORNECEDOR

4. RESPOSTA DO MINI MUNDO

Nome TAB-DISTRIBUIÇÃO TAB-FORNECEDOR 4. RESPOSTA DO MINI MUNDO Código 1 Matrícula N Curso Pertence Nome N Possui

Código 1
Código
1

Matrícula

N
N
4. RESPOSTA DO MINI MUNDO Nome Código 1 Matrícula N Curso Pertence Nome N Possui Disciplina
Curso Pertence Nome N Possui Disciplina N N Descrição Leciona Dias semana
Curso
Pertence
Nome
N
Possui
Disciplina
N
N
Descrição
Leciona
Dias semana
Aluno
Aluno
Aluno
Aluno
Aluno
Aluno

Aluno

Aluno
Aluno
Aluno
Aluno

EndPertence Nome N Possui Disciplina N N Descrição Leciona Dias semana Aluno Fone Controle Nome 1

Fone
Fone
Controle
Controle
Nome
Nome
1
1
Nome N Possui Disciplina N N Descrição Leciona Dias semana Aluno End Fone Controle Nome 1
Professor
Professor
Professor
Professor
Professor
Professor
Professor
Professor
Professor
Professor

Professor

Professor
Professor
Professor
Professor
Nome N Possui Disciplina N N Descrição Leciona Dias semana Aluno End Fone Controle Nome 1
Cpf
Cpf