Upload
leonardo-gonzales-spezia
View
229
Download
5
Embed Size (px)
DESCRIPTION
banco de dados sql
Citation preview
Tecnologia em InformticaTecnologia em Informtica
Banco de DadosBanco de DadosModelo Entidade-RelacionamentoModelo Entidade-Relacionamento
Edivaldo de Arajo Pereira
Universidade Tuiuti do ParanFaculdade de Cincias Exatas e de TecnologiaU P
Promoo Humana
2UTP Tecnologia em Informtica Banco de Dados
SumrioSumrio Introduo Modelo Entidade-Relacionamento
Entidade Relacionamento Atributo Generalizao / Especializao
Concluso Exerccio prtico
3UTP Tecnologia em Informtica Banco de Dados
IntroduoIntroduo Etapas de projeto e implementao de BD
CREATE TABLE Clientes ( cliCodigo Integer not null, cliNome Varchar(30), cliDtNasc Date, cliRG Char(15), cliCPF Char(14), cliEndereco Varchar(30), cliCidade Varchar(25), estUF Char(2) not null, cliFone Char(15), cliRenda Decimal(10,2), PRIMARY KEY (cliCodigo));CREATE TABLE Vendas ( venNumero Integer not null, venData Date, cliCodigo Integer not null, venQtItens Integer default 0, venVlTotal Decimal(10,2) default 0, funCodigo Integer not null, PRIMARY KEY (venNumero));
Levantamento Construo do Construo do Execuo do projeto fsico e de requisitos modelo conceitual modelo lgico instanciao do banco de dados
minimundo modelo conceitual modelo lgico esquema banco de dados
4UTP Tecnologia em Informtica Banco de Dados
IntroduoIntroduo Um modelo de banco de dados uma descrio formal
de sua estrutura por meio de uma linguagem simblica Para cada nvel de abstrao, h uma linguagem de
modelagem de dados: Modelos conceituais
foco: minimundo, delimitao do contexto, usurios externos Modelos lgicos
foco: aplicao, implementao, projetistas de BD e aplicaes Modelos fsicos
foco: estruturas fsicas de arquivos, lgica de implementao de SGBD, projetistas de SGBD
Dica: ler textos IBM_... e Gupta_... sobre as diferenas entre os modelos de dados
5UTP Tecnologia em Informtica Banco de Dados
IntroduoIntroduo Modelo Conceitual (utilizando MER)
Descreve o banco de dados no mais alto nvel de abstrao Representa de forma sinttica objetos e fatos do minimundo independente dos recursos de implementao, tais como
SGBD e hardware Representa os conjuntos de objetos ou eventos registrados
no BD, mas no indica como seus dados so armazenados A tcnica mais utilizada o Modelo Entidade-Relacionamento,
materializado no Diagrama Entidade-Relacionamento (DER)
(0,1) (0,N)
6UTP Tecnologia em Informtica Banco de Dados
Modelo Entidade-RelacionamentoModelo Entidade-Relacionamento Descreve aspecto estrutural esttico do BD
no reflete fluxos de dados ou trocas de mensagens
Modelo = Diagrama + descrio textual associada Elementos bsicos
Entidades Relacionamentos Atributos (no utilizado no modelo conceitual - IBM/Gupta) Cardinalidades
7UTP Tecnologia em Informtica Banco de Dados
EntidadeEntidade Uma entidade representa um conjunto de elementos
(objetos ou fatos) de mesma natureza Cada elemento do mundo real representado em uma
entidade referenciado como uma instncia dessa
entidade Representao no DER:
Entidade
8UTP Tecnologia em Informtica Banco de Dados
RelacionamentoRelacionamento Um relacionamento representa a associao entre os
objetos de uma ou mais entidades No DER, os relacionamentos interligam entidades, mas
representam associaes entre suas instncias Representao no DER (Peter Chen):
[adquire]Cliente Produto
9UTP Tecnologia em Informtica Banco de Dados
RelacionamentoRelacionamento Participao e Cardinalidade
Representam as quantidades possveis de associaes entre as instncias representadas em um relacionamento
participao: limite inferior ou obrigatoriedade (0 ou 1) cardinalidade: limite superior ou mximo (1 ou N)
Participao e cardinalidade so representadas por 2 pares ordenados nas extremidades do relacionamento
Representao no DER (Peter Chen):
rel_xyent_x ent_y(1,1) (0,N)
participao cardinalidade
Obs: h duas notaes distintas que utilizam a mesma simbologia - look here x look across
10UTP Tecnologia em Informtica Banco de Dados
RelacionamentoRelacionamento Participao e Cardinalidade
Exemplo: Pode haver um cliente associado a vrios pedidos Pode haver um cliente que no esteja associado a nenhum pedido um pedido est obrigatoriamente associado a um, e somente um,
cliente
efetuaCliente Pedido(0,N) (1,1)
Obs: esta a notao look here
11UTP Tecnologia em Informtica Banco de Dados
RelacionamentoRelacionamento Participao e Cardinalidade
Representaes possveis:
Tipo Simbologiaum e apenas um (1,1)Zero ou Muitos (0,N)Um ou Muitos (1,N)Zero ou Um (0,1)
12UTP Tecnologia em Informtica Banco de Dados
RelacionamentoRelacionamento Conectividade
Descreve a associao entre entidades de um relacionamento Pode ser entendido como uma forma sinttica de
especificao de cardinalidades Representa de modo simplificado as indicaes de
cardinalidade dos dois lados de um relacionamento Obs: note-se a aparente inverso de cardinalidade look here
Conectividade Notao Na entidade A Na entidade BUm para um (0,1)
(1,1)(0,1)(1,1)
Um para muitos (0,N)(1,N)
(0,1)(1,1)
Muitos para Muitos (0,N)(1,N)
(0,N)(1,N)
A B1 1
A B1 N
A BN N
13UTP Tecnologia em Informtica Banco de Dados
RelacionamentoRelacionamento Conectividade x cardinalidade
efetuaCliente Pedido(0,N) (1,1)
1 N
Cardinalidades
Conectividades
Note a aparente inverso entre cardinalidade e conectividade:- look here x look across
14UTP Tecnologia em Informtica Banco de Dados
AtributosAtributos Representam caractersticas dos elementos
pertencentes a uma entidade ou a um relacionamento Correspondem aos campos em um sistema de
processamento de arquivos Podem ser inerentes ou arbitrrios
inerentes/naturais: fazem parte da entidade no minimundo arbitrrios/sintticos: criados para atender demandas do BD
Podem ser de vrios tipos: simples x compostos monovalorados x multivalorados primitivos x derivados chaves x no-chaves
15UTP Tecnologia em Informtica Banco de Dados
AtributosAtributos Representao no DER (Peter Chen):
Atributo simples
Atributo chave
Atributo multivalorado
Atributo derivado
16UTP Tecnologia em Informtica Banco de Dados
AtributoAtributo Exemplo:
a entidade Funcionrio possui atributos: chave, simples, multivalorado e derivado
a entidade Departamento possui atributos: chave e simples o relacionamento Aloca possui somente atributos simples
Funcionrio (1,N) (0,N)
matrc
ulano
meen
dere
oTe
lefon
esdt_
nasc
imen
toida
de
dt_in
ciodt_
final
cdig
ono
meram
al
sala
DepartamentoAlocaca
rgo
17UTP Tecnologia em Informtica Banco de Dados
Auto-Relacionamento Auto-Relacionamento Uma entidade pode possuir instncias relacionadas
entre si Exemplo:
um funcionrio pode, ou no, ser supervisor de outros um funcionrio supervisionado por um supervisor
Funcionrio(1,1)
matrc
ulano
meen
dere
oTe
lefon
esdt_
nasc
imen
toida
de
supervisor
(0,N)
supe
rviso
r
supervisor
supervisionado
18UTP Tecnologia em Informtica Banco de Dados
Relacionamento n-rio Relacionamento n-rio Um relacionamento pode associar simultaneamente
vrias entidades O poder de representao (semntica) de um
relacionamento n-rio ampliado pela simultaneidade No possvel decompor um relacionamento n-rio em
relacionamentos binrios sem perda de capacidade semntica (teorema a ser explorado...)
19UTP Tecnologia em Informtica Banco de Dados
Relacionamento ternrio x binrioRelacionamento ternrio x binrio Um relacionamento ternrio fornece informaes
diferentes de trs relacionamentos binrios
Mdico Paciente(0,N) (1,N)
Medicamento
(0,N)
Consulta
Obs: notao look here
20UTP Tecnologia em Informtica Banco de Dados
Entidades fortes e fracasEntidades fortes e fracas Uma instncia de uma entidade fraca depende da
existncia de uma instncia correspondente na entidade forte
O relacionamento entre a entidade fraca e a entidade forte chamado relacionamento identificador
A entidade fraca pode relacionar-se com qualquer outra entidade do modelo
Representao no DER:
Scio dependente(0,N) (1,1)
possui
Obs: notao look here
21UTP Tecnologia em Informtica Banco de Dados
Classes de Entidades Classes de Entidades Entidade Semente
tm existncia prpria no dependem de outras entidades tm chave primria simples
Entidade Caracterstica tm funo de descrever (caracterizar) outra entidade s podem existir em funo da entidade que descrevem tm chave primria composta
Entidade Associativa tm a funo de materializar relacionamentos muitos-para-
muitos entre duas ou mais entidades tm chave primria composta
22UTP Tecnologia em Informtica Banco de Dados
Generalizao e EspecializaoGeneralizao e Especializao Generalizao a definio de uma entidade genrica
que engloba atributos comuns a mais de uma entidade, mantendo-se os atributos especficos nas entidades originais (bottom-up)
Especializao a decomposio de uma entidade em outras com atributos especficos, mantendo-se os atributos cumuns na entidade original (top-down)
Em outras palavras: especializao e generalizao tratam do mesmo problema, a partir de pontos de vista opostos
23UTP Tecnologia em Informtica Banco de Dados
Generalizao e EspecializaoGeneralizao e Especializao Exemplo:
Filial atende Cliente
uma
Pessoafsica
Pessoajurdica
24UTP Tecnologia em Informtica Banco de Dados
Generalizao e EspecializaoGeneralizao e Especializao Conceitos associados
Hierarquia: transitividade: uma entidade herda propriedades das ancestrais assimetria: no pode haver ciclos ( se A -> B, ento ! B-> A)
Restries sobre generalizao: Completude: total ou completa x parcial ou incompleta Sobreposio: sobreposta x disjunta Exemplos:
Veculo->(trator,caminho): parcial, disjunta Figura->(elipse,quadrado,crculo): parcial, disjunta Indivduo->(homem,mulher): total, disjunta Atleta->(nadador,corredor): parcial, sobreposta
Profundidade de hierarquias: deve-se evitar nveis excessivos
25UTP Tecnologia em Informtica Banco de Dados
AgregaoAgregao Agrega duas ou mais entidades em um conceito ou
entidade de mais alto nvel Permite tratar relacionamentos como entidades de
nvel de abstrao mais alto
pessoa
homem mulher
bodasrealiza
t, d
casal
26UTP Tecnologia em Informtica Banco de Dados
Exerccio prticoExerccio prtico Construa um DER que represente um banco de dados
qualquer (farmcia, locadora, boteco etc) O modelo deve conter pelo menos 5 entidades Represente apenas entidades, relacionamentos e
cardinalidades (ignore os atributos, generalizao etc) Utilize qualquer ferramenta grfica de sua
preferncia, mas exporte em formato jpg ou pdf envie para [email protected]
Dica: http://www.sis4.com/brModelo/
27UTP Tecnologia em Informtica Banco de Dados
Links InteressantesLinks Interessantes http://en.wikipedia.org/wiki/Entityrelationship_model
28UTP Tecnologia em Informtica Banco de Dados
FIM
UniversidadeTuiuti doParanU P
Promoo Humana
Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28