projeto de banco de dados. modelagem de dados objetivo: coletar os dados do mundo real e transformar...
TRANSCRIPT
Projeto de Banco de Dados
Modelagem de Dados Objetivo: coletar os dados do mundo real e
transformar em informações que podem ser armazenadas em um SGBD.
seres, objetos, fatos
Informações informais
informações formais
dados
cadeias de bits
Mundo Real
Modelo Descritivo
Modelo Conceitual
Modelo Operacional
Modelo Físico
Modelos de Banco de Dados
Modelo de (Banco de) Dados: descrição das informações que estão armazenadas em um banco de dados.
Modelos de Banco de Dados
Modelo Conceitual: não contém detalhes sobre a representação em meio físico das informações;
Modelo Lógico: descrição de como as informações estão organizadas internamente, visão do usuário do SGBD; e
Modelo Físico: descreve os dados no nível mais baixo (interno); trata dos aspectos de implementação do SGBD.
DESENVOLVIMENTO DE BANCOS DE DADOS
Modelo Conceitual
DESENVOLVIMENTO DE BANCOS DE DADOS
Modelo Lógico
Id Tipo Devastação
Number
Varchar Varchar
DESENVOLVIMENTO DE BANCOS DE DADOS
Modelo Físico
Modelos de Banco de Dados
Modelo Conceitual
Modelos de Banco de Dados
Modelo Conceitual
Registra que dados podem aparecer no banco de dados, mas não registra como estes dados estão armazenados no SGBD;
Existem vários técnicas de modelagem conceitual:
- Abordagem Entidade-Relacionamento; e
- Abordagem orientada a objetos.
Modelos de Banco de Dados
Diagrama Entidade-Relacionamento (DER)
Modelos de Banco de Dados
Modelo Lógico
Modelos de Banco de Dados
Modelo Lógico Também conhecido como Modelo Lógico com
Base em Registros;
Dependente do tipo particular de SGBD que está sendo usado;
Modelos de Banco de Dados Os modelos lógicos mais conhecidos são:
Modelo de Rede
Modelo Hierárquico
Modelo Relacional
Modelo Orientado a Objetos
Modelo Objeto – Relacional
TEmpregadoRGnomeendereçogerentesalárioBasecomissão
salário()
Orientado a Objetos
TEmpregado
RGnome
endereço
gerente
salárioBase
comissão
salário()
TEmpregado
RGnome
endereço
gerente
salárioBase
comissão
salário()
Objeto-Relacional
Modelagem
Exemplo: Sistema para o controle de dados dos alunos de uma universidade. (1)
(2) Modelo descritivo: A universidade mantém o cadastro de seus alunos por RA, nome, endereço, fone e data de nascimento. Sobre as disciplinas que são oferecidas a universidade mantém o código, título, descrição e carga horária. O histórico de um aluno associa os alunos as disciplinas que eles cursaram em cada ano e mantém a nota e freqüência que eles obtiveram.
Modelagem de Dados
(3) Modelo Conceitual: MER - Modelo Entidade-Relacionamento: objetos
são representados como entidades e as associações entre eles como relacionamentos.
Alunos Hist. Disciplinasnn
notafreq
anoRA nome
end.
fonedata_nasc.
cod título
descr. carga_hor
Modelagem de Dados Modelo Orientado a Objetos: dados do mundo real
são representados como objetos, que possuem atributos e métodos. Objetos organizados em classes ligados por associações. Exemplo usando OMT:
Alunos
RAnomeend.fonedata_nasc
cadastraratualizar end.
Disciplinas
cod.títulodescr.carga_hor.
cadastrar_disc
Históricoanofreqüência
nota
cadastrar_Histalterar_nota
Modelagem de Dados
(4) Modelo Operacional: descrição de alto nível da implementação.
Modelo Relacional: dados e relacionamentos representados por uma coleção de tabelas. Ocupa mais de 90 % do mercado atual.
Modelagem de DadosExemplo:
alunos
cod título descr. carga
disciplinas
RA cod ano freq nota
histórico
RA nome end fone data
Características do modelo relacional: cada tabela tem seu nome diferente das demais na
mesma base de dados cada coluna tem seu nome diferente das demais
na mesma tabela colunas contém os atributos linhas contém informações de 1 entidade cada célula pode conter no máximo 1 item de dado ordem das linhas é irrelevante ordem das colunas é irrelevante nunca temos duas linhas iguais chave primária
Modelagem de Dados (5) Modelo Físico: representação
dos dados no meio físico. Estruturas de dados mais complexas.
Representação própria de cada SGBD.
Projeto de um BD Modelo Entidade-Relacionamento (ER) Técnica de modelagem de dados mais utilizada
Criada em 1976 por Peter Chen
Os conceitos centrais dessa abordagem são: Entidade: conjunto de objetos da realidade, modelada
sobre os quais deseja-se manter informações no BD. Geralmente, uma entidade é representada como uma tabela em bancos de dados relacionais. Representadas por retângulos.
Aluno Disciplina Cliente
Conta Corrente
Os conceitos centrais dessa abordagem são: Atributo: dado que é associado a cada ocorrência de
uma entidade ou de um relacionamento. Em termos relacionais, geralmente significa um campo. Representadas em eclipses
Cliente
Projeto de um BD Modelo Entidade-Relacionamento (ER)
Projeto de um BD Modelo Entidade-Relacionamento (ER)
Relacionamento: conjunto de associações entre entidades.
A
Projeto de um BD Modelo Entidade-Relacionamento (ER)
Relacionamento: conjunto de associações entre entidades.
Aluno Disciplina
Cliente Conta Correntemovimenta
cursa
Cardinalidade
Expressa o número de entidades ao qual outra entidade pode ser associada através do relacionamento. Pode ser expressa por alguns sinais: flechas, pés de galinha, números, etc... São grafadas sobre a linha do relacionamento nas duas extremidades:
Cardinalidade 1:
Cardinalidade N:
Cardinalidade
Cardinalidade Um-para-um (1:1)
Estado Capitalpossui
1 1
Cardinalidade
Cardinalidade Um-para-muitos (1:N)
Aluno Disciplina
Cliente Conta Correntemovimenta
cursa
1 N
1 N
Cardinalidade
Cardinalidade Muitos-para-muitos (N : N)
Aluno Disciplina
Cliente Conta Correntemovimenta
cursa
N N
N N
Diagramas ER
Cliente Conta Correntemovimenta
1 N
Nome Rua
Código Cidade Numero Quantia
Diagramas ER
Aluno DisciplinaCursa
1 N
Matr Nome
Curso Período Nome CargaH
Codigo
Projeto de um BD
A transformação do projeto da abordagem ER para um BD relacional não é direta, mesmo assim, existem algumas regras que nos auxiliam nessa conversão:
Entidade -> Relação
Entidade -> Relação
Aluno (Numero, Nome, Morada)Criança (NumA, Nome)
A
Prestando atenção nas cardinalidades....
As relações 1:1 ou 1:N do ER não geram tabelas mas obrigam à inclusão de novos atributos nas tabelas já existentes:
Prestando atenção nas cardinalidades....
As relações 1:1 ou 1:N do ER não geram tabelas mas obrigam à inclusão de novos atributos nas tabelas já existentes:
Prestando atenção nas cardinalidades....
Para cada relação N:N deve existir uma tabela própria com os atributos determinantes das entidades relacionadas que formam a sua chave primária