Sie sind auf Seite 1von 0

1

6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
Conceitos e Aplicaes Bsicas para
Modelagem de Dados
Por
Alvaro Caetano Pimentel Sobrinho
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
Resumo
Este manual uma continuao da proposta de discusso de acesso aberto, iniciada no
artigo Open Access Ser ou n!o ser"!, "ue est# dispon$vel no endereo
http%&&artigocienti'ico.tebas.(inghost.net&pes"uisadores&)mnu*2+smnu*,+id*29,-., e
corresponde / segunda parte do material "ue 'oi disponibili0ado primeiramente no
manual #ree Acess O M$S%& na prtica!, tambm no mesmo endereo acima, o
"ual apresenta a implementao de uma base de dados 12345. 6este manual sero
apresentados os mtodos b#sicos para a modelagem de dados "ue incluem t7picos de
abstrao, modelagem l7gica, '$sica e normali0ao. 8lm disso, composto de uma
srie de e9erc$cios resolvidos "ue podem ser utili0ados para treinar, e serem discutidos,
a cada parte avanada. 8 :ltima parte da proposta de disseminao de conhecimentos
ser# a apresentao de uma apostila de uso das 'erramentas ;83E M$S%&
'or(bench e M$S%& %uer$ Bro)ser.
Palavras Chave% 1odelagem de dados, 6ormali0ao, 8bstrao
Abstract
<his manual is a continuation o' proposal open access discussion that began in the
article Open Access *o be or not"!, and it corresponds to the second part o' the
material that is available 'irst in the manual #ree Access *he M$S%& in the
practice! =hich presents the construction o' a 12345 database. >n this manual =ill be
presented the basic methods 'or the data modeling that include abstraction topics,
logical?ph2sical modeling and normali0ation. 1oreover, is composed o' a series o'
e9ercises that can be used to train, and to be argued, to each advanced part. <he last
part o' the proposal o' dissemination o' (no=ledge =ill be the presentation o' use o'
the tools ;83E M$S%& 'or(bench and M$S%& %uer$ Bro)ser.
+e$ 'ords% @ata modeling, 6ormali0ation, 8bstraction

alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
<7picos
A. >ntroduo ,
2. ;onceitos B#sicos ,
2.A Bases de @ados ,
2.2 3istemas de Cerenciamento de Bases de @ados ,
2.- 3istemas de Bases de @ados ,
2.D EbFetivos de um 3istema de Bases de @ados .
-. 8bstrao de @ados G
D. 1odelos de @ados G
D.A 1odelo ;onceitual&57gico de @ados G
D.A.A Ebteno de um 1odelo de @ados G
D.A.2 1odelo de @ados Baseado em EbFetos 9
D.A.- 1odelo de @ados Baseado em Hegistros 9
D.A.-.A 1odelo de @ados Helacional 9
D.A.-.2 1odelo de @ados em Hede A0
D.A.-.- 1odelo de @ados Iier#r"uico A0
,. @e'inio e 1anipulao de @ados AA
,.A @@5 AA
,.2 @15 AA
,.- @55 AA
.. JunKes em 3istemas de Bancos de @ados A2
..A Lsu#rios A2
..2 8dministrador A2
..2.A 8dministrao @ados M8@N A2
..2.2 8dministrao de Bases de @ados M8B@N A2
G. 1odelo Entidade Helacionamento M1EHN A-
G.A @e'inio A-
G.2 EbFetivo A-
G.- Jases do OroFeto de Bases de @ados A-
G.-.A ;@1 P ;onceptual @ata 1odel A-
G.-.2 5@1 P 5ogical @ata 1odel A-
G.-.- O@1 P Oh2sical @ata 1odel A-
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
Q. Entidades e ;onFuntosREntidade A-
Q.A ;omponentes do @iagrama ERH MOeter ;henN% A-
9. 8tributos AD
9.A @om$nio de um 8tributo AD
A0. Helacionamentos A,
AA. HestriKes de 1apeamento M;ardinalidadeN A,
AA.A LmRparaRum A,
AA.2 LmRparaRmuitos A.
AA.- 1uitosRparaRmuitos A.
A2. E9erc$cios AG
A-. OroFeto de ;haves A9
AD. 8utoRHelacionamento A9
A,. 8gregao 20
A.. Cenerali0ao P Especiali0ao 2A
A..A <otal e Oarcial 2A
A..2 6oRE9clusiva 2A
A..- 1:ltipla 22
AG. Helacionamentos de Crau 3uperior a 2 22
AQ. @ependSncia E9istencial e Entidades Jracas 2-
A9. E9erc$cios 2,
20. 6ormali0ao 2G
20.A Orimeira Jorma 6ormal MAJ6N 2Q
20.2 3egunda Jorma 6ormal M2J6N 2Q
20.- <erceira Jorma 6ormal M-J6N -0
2A E9erc$cios -A
22 3oluKes
22.A 3oluKes dos e9erc$cios A2.A a A2.G --
22.2 3oluKes dos e9erc$cios A9.A a A9.Q -,
22.- 3oluKes dos e9erc$cios 2A.A a 2A.D -9
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
>ntroduo
8 importTncia da in'ormao para a tomada de decisKes nas organi0aKes tem impulsionado o
desenvolvimento dos sistemas de processamento de in'ormaKes.
8 de'inio de in'ormao pode ser dada, restringindoRse o seu conceito / in'orm#tica, como um
dado "ue possui unicidade!, atomicidade! e "ue F# tenha sido tratado, de tal maneira "ue
agregue signi'icante e signi'icado representando o obFeto de origem, real ou abstrato. Uale
lembrar "ue a ;iSncia da >n'ormao possui uma de'inio mais abrangente de in'ormao, mas
para o estudo de bases de dados, neste n$vel, essa mais restrita absolutamente satis'at7ria.
8lgumas 'erramentas pertinentes ao tratamento da in'ormao%
processadores de texto (editorao eletrnica),
planilhas (clculos com tabelas de valores),
Sistemas de Gerenciamento de Bancos de Dados SGBD
A. ;onceitos B#sicos
2.A Bases de @ados
Lma base de dados pode ser de'inida como uma coleo de dados interRrelacionados
representando in'ormaKes sobre um dom$nio espec$'ico.
!xemplos" lista tele#nica, controle do acervo de uma biblioteca, sistema
de controle dos recursos humanos de uma empresa$
2.2 3istemas de Cerenciamento de Bases de @ados R
3CB@
E 3CB@, do inglSs Database Management System P @B13 P V um software com recursos
espec$'icos para 'acilitar a manipulao das in'ormaKes dos bancos de dados e o
desenvolvimento de programas aplicativos. 8lm disso permite o arma0enamento de
grandes volumes de dados, estruturados em registros e tabelas, com recursos para acesso e
processamento das in'ormaKes.
E9emplos% Eracle, 12345, 345 3erver, >nterBase, >ngres, Oarado9W, 8ccessW, @BaseW.
W Desktop Database Management Systems
2.- 3istemas de Bases de @ados
V um sistema de manuteno de registros por computador, envolvendo "uatro
componentes principais%
dados,
hard%are,
so#t%are e
usurios$
E sistema de bancos de dados pode ser considerado como uma sala de ar"uivos eletrXnica.
E9iste uma srie de mtodos, tcnicas e 'erramentas "ue visam sistemati0ar o
desenvolvimento de sistemas de bancos de dados.
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
2.D EbFetivos de um 3istema de Bases de @ados
P >solar os usu#rios dos detalhes mais internos do banco de dados Mabstrao de dadosN.
P Orover independSncia de dados /s aplicaKes Mestrutura '$sica de arma0enamento e /
estratgia de acessoN.
Uantagens%
P rapide0 na manipulao e no acesso / in'ormao,
P reduo do es'oro humano Mdesenvolvimento e utili0aoN,
P disponibili0ao da in'ormao no tempo necess#rio,
P controle integrado de in'ormaKes distribu$das 'isicamente,
P reduo de redundTncia e de inconsistSncia de in'ormaKes,
P compartilhamento de dados,
P aplicao autom#tica de restriKes de segurana,
P reduo de problemas de integridade
2., ;omponentes de um 3istema de Bases de @ados
3CB@
Orogramas
Bases de @ados
Lsu#rio
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
2. 8bstrao de @ados
E sistema de bancos de dados deve prover uma viso abstrata de dados para os usu#rios.
8 abstrao se d# em trSs n$veis%
6$vel de viso
dos usu#rios Uiso A Uiso2 .......... Uiso 6
6$vel do conFunto
de usu#rios ;onceitual
6$vel de
8rma0enamento J$sico
6$vel de visKes do usu#rio% descreve partes do banco de dados, de acordo com as
necessidades de cada usu#rio, individualmente.
6$vel ;onceitual&57gico% descreve "uais dados esto&sero arma0enados e seus
relacionamentos. 6este n$vel, o banco de dados descrito atravs de estruturas relativamente
simples, "ue podem envolver estruturas comple9as no n$vel '$sico.
6$vel J$sico% n$vel mais bai9o de abstrao. @escreve como os dados esto realmente
arma0enados, englobando estruturas comple9as de bai9o n$vel.
-. 1odelo de @ados
V a representao gr#'ica e te9tual de E3<HL<LH83, EOEH8@EHE3 e das HECH83, "ue
de'inem os dados, assim como as restriKes de consistSncia e integridade
Estruturas
3o 'ormadas de Hegras MasserKes "ue regulam o 'uncionamento da estruturaN e Eperadores
"ue so comandos "ue permitem a manipulao das estruturas segundo um comportamento
estabelecido.
D.A 1odelo ;onceitual&57gico de @ados M;@1&5@1N
V uma atividade desenvolvida em 'ases variadas do processo metodol7gico de
desenvolvimento de sistemas, com a 'inalidade de levantar in'ormaKes MHE4L>3><E3
JL6;>E68>3N para a obteno do modelo de dados.
D.A.A Ebteno de um 1odelo de @ados
@ecomposio 'uncionalY
8n#lise de eventosY
8n#lise das regras de neg7cio
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
@ecomposio 'uncional M8n#lise da hierar"uia de JunKesROrocessosR8tividadesN
>denti'icao de entidades e9ternas ou de dep7sitos de dados relacionados a cada processo
"ue sugere entidades de dados "ue iro compor o modelo Mconceito de EUE6<E tra0ido
pela 8n#lise EssencialN
8n#lise de eventos P so 'atos "ue provocam est$mulos para os "uais os sistemas
devero conter processos de reposta.
8n#lise das regras de neg7cio P V o estudo de an#lise dos dados, processos, obFetos e
suas correlaKes. @ivideRse em%
#atos P assero "ue estabelece "ue um obFeto possua determinadas propriedades ou
desempenha determinado papel.
!x$" &'(!)*! emite +,*-.,
&'(!)*! possui endereo
&/()+0 atua em )e% 1or2 (su3eito verbo ob3eto)
Restries P so limitaKes colocadas aos 'atos para a diminuio de ocorrSncias v#lidas
na"uele universo
!x$" -m 4!D(D0 deve ser colocado para um &'(!)*! cadastrado
Regras de deriva!o P so condiKes colocadas sobre 'atos e "ue podem gerar outros
'atos.
!x$" Se um 4!D(D0 #or e#etuado at5 o dia / ele ser processado no m6s
se7uinte$
,ntidade P Hepresentao abstrata de um obFeto do mundo real MOE33E83 5LC8HE3
;E>383N, e podem ser identi'icadas, por similaridade, com an#lise sint#tica nas
linguagens naturais%
HetTngulo P ;FREntidade MsuFeito & obFeto da sentenaN
Elipse P 8tributo MadFetivoN
5osango P ;FRHelacionamento MverboN
5inha P Entidade com Helacionamento e 8tributo a Entidade Madvrbios e adFuntosN
Con-unto.,ntidade P Crupo de entidades "ue possuem caracter$sticas semelhantes
!x$" &on3untoentidade +0.)!&!D0.
Relacionamento P Estrutura "ue indica a associao de elementos de duas ou mais
entidades.
Atributos de relacionamento P @epende de todos os conFuntosRentidade associados
entre si.
Cardinalidade P HestriKes de 1apeamento
LmRparaRum MA%AN% Entidade em 8 associada a uma, e somente uma, entidade em B
LmRparaRmuitos MA%6N% Entidade em 8 associada a "ual"uer nZ de entidades em B
1uitosRparaRmuitos M6%6N% Entidade em 8 associada a "ual"uer nZ de entidades em
B e viceRversa.
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
D.A.2 1odelo de @ados Baseado em EbFetos
@e'ine a descrio dos dados nos n$veis conceitual&l7gico e de visKes de usu#rios.
6o modelo orientado a obFetos o c7digo e9ecut#vel parte integrante do modelo de
dados.
!x$" !ntidade.elacionamento$
rua
nome cidade n8mero saldo
&'(!)*! 40SS-( &0)*,
D.A.- 1odelo de @ados Baseado em Hegistros
P @e'ine a descrio dos dados nos n$veis conceitual&l7gico e de visKes de usu#riosY
P E banco de dados estruturado em registros de 'ormatos 'i9os, de diversos tiposY
P ;ada tipo de registro tem sua coleo de atributosY
P I# linguagens espec$'icas para e9pressar consultas e atuali0aKes no banco de
dados.
!x$" 9odelo .elacional,
9odelo :ierr;uico$
D.A.-.A 1odelo de @ados Helacional
6o 1odelo Helacional, dados e relacionamentos entre dados so
representados por tabelas, cada uma com suas colunas espec$'icas.
<anto os dados "uanto os relacionamentos so representados por
tabelas.
Orescinde de estruturas de $ndice e'icientes e hard=are ade"uado para
alcanar desempenho vi#vel em situaKes pr#ticas.
!x$" 9odelo .elacional
*abela &liente
c/d .cliente nome rua cidade
0A,
02A
0-G
8lvaro
1#rio
Ciselle
5aura <eles
5aranFeiras
>pS
Hio de Janeiro
Hio de Janeiro
;ampos do Jordo
*abela &onta *abela &liente&onta
alvaro_pimentel@uol.com.br
c/d .cliente
nro.conta
0A,
02A
02A
0-G
0-G
900
,,.
.DG
Q0A
.DG
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
D.A.-.2 1odelo de @ados em Hede
Es dados so representados por coleKes de registros e os
relacionamentos por elos.
8lvaro 5aura <eles Hio de Janeiro 900 ,,
1#rio 5aranFeiras Hio de Janeiro ,,. A000
.DG ,.-..
Ciselle >pS ;ampos do Jordo
Q0A A0.,--
D.A.-.- 1odelo de @ados Iier#r"uico
Es dados e relacionamentos so representados por registros e ligaKes,
respectivamente.
Es registros so organi0ados como coleKes arbitr#rias de #rvores.
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
, @e'inio e 1anipulao de @ados
Es bancos de dados possuem uma estrutura "ue arma0ena as in'ormaKes pertinentes a tabelas,
vie=s, registros, de'iniKes de dados e atributos. 8pesar de possu$rem nomes ou identi'icaKes
di'erentes, todo 3CB@ possui um es"uema e um subes"uema.
Es"uema do Banco de @ados
E es"uema arma0ena o proFeto geral! MestruturaN do banco de dados e possui as seguintes
caracter$sticas%
P no muda com 're"[SnciaY
P h# um es"uema para cada n$vel de abstrao e um subes"uema para cada viso de usu#rio.
8 construo de um es"uema acontece atravs de uma linguagem apropriada para a trans'ormao
de um modelo conceitual&l7gico em um modelo '$sico. 8 transcrio ocorre por meio de uma
'erramenta ;83E P Computer Aided Software Engineer Malgo como% linguagem de construo
para au9iliar / computaoN. Esta linguagem conhecida como @@5 P Data Definition Language.
,.A @@5 P 5inguagem de @e'inio de @ados
Oermite especi'icar o es"uema do banco de dados, atravs de um conFunto de de'iniKes de
dados. 8 compilao dos comandos em @@5 arma0enada no dicion#rio Mou diret7rioN de
dados. 6este ponto so criados os metadados "ue iro compor o es"uema do proFeto "ue
estivem em transcrio.
Ebs.% 1etadados, por de'inio, so dados "ue de'inem outros dados. 8ssim os comandos
compilados so metadados dos comandos originais.
,.2 @15 P 5inguagem de 1anipulao de dados
8 manipulao dos dados em uma base acontece atravs de%
P recuperao da in'ormao arma0enada,
P insero de novas in'ormaKes,
P e9cluso de in'ormaKes,
P modi'icao de dados arma0enados.
Oara "ue os eventos acima seFam poss$veis necess#rio utili0ar uma linguagem apropriada
para interagir com a base de tal maneira "ue, atravs da leitura do es"uema, consiga
entender o dado e a sua posio na tabela. Esta linguagem conhecida como @15 P Data
Manipulation Language P 5inguagem e 1anipulao de @ados "ue permite ao usu#rio
acessar ou manipular os dados, vendoRos da 'orma como 'oram de'inidos no n$vel de
abstrao mais alto do modelo de dados utili0ado.
E processo de interao no @B13 'eito atravs de um conFunto de procedimentos
chamado de QUERY Oortanto, uma consulta M!uery!N um conFunto de comandos "ue
re"uisitam uma recuperao de in'ormao na base de dados. Oor essa ra0o, a parte de
uma @15 "ue envolve recuperao de in'ormao chamada linguagem de consulta.
,.- @55 P Biblioteca de ;omunicao @inTmica
8s !ueries podem ser constru$das diretamente no @B13, ou podem 'a0er uso de uma
linguagem de alto n$vel Morientada a obFeto ou noN para e'etuar a interao com a base de
dados. 6este caso, alguns programas 'a0em uso de uma @55 P Dynami" Link Library P
Biblioteca de ;omunicao @inTmica, "ue instalada no computador, e nada mais do
"ue c7digos "ue v#rios aplicativos compartilham e possibilita signi'icativa reduo de
mem7ria do computador..
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
. JunKes em 3istemas de Bancos de @ados
@entre as in:meras 'unKes humanas em relao ao uso de uma base de dados duas se destacam
na interao com as bases.
..A Lsu#rios
Heali0am operaKes de manipulao de dados.
P programadores de aplicaKes,
P usu#rios so'isticados,
P usu#rios especiali0ados,
P usu#rios ingSnuos!.
..2 8dministrador
Oessoa Mou grupoN respons#vel pelo controle do sistema de banco de dados.
P 8dministrador de @ados
P 8dministrador do 3CB@
..2.A 8dministrao de @ados M8@N
P de'inio e atuali0ao do es"uema do banco de dados.
P de'inio dos atributos e elementos de dados
P de'inio do ;@1
..2.2 8dministrador de Bases de @ados M8B@N
P de'inio da estrutura de arma0enamento e a estratgia Mou mtodoN de acesso,
P concesso de autori0ao para acesso a dados,
P de'inio de controles de integridade,
P de'inio de estratgias para c7pia de segurana e recuperao,
P monitoramento do desempenho,
P e9ecuo de rotinas de desempenho,
P modi'icao da organi0ao '$sica.
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
G 1odelo Entidade Helacionamento M1EHN
G.A @e'inio
1odelo baseado na percepo do mundo real, "ue consiste em um conFunto de obFetos,
b#sicos chamados entidades, e nos relacionamentos entre esses obFetos.
Entidade% uma representao abstrata de um obFeto do mundo real.
!x$" 0 #ornecedor 4edro, com c<di7o +=
G.2 EbFetivo
Jacilitar o proFeto de bases de dados possibilitando a especi'icao da estrutura l7gica geral
do banco de dados
G.- Jases do OroFeto de Bases de @ados
G.-.A ;@1 P ;onceptual @ata 1odel
Hepresenta o modelo de dados conceitual M2Z n$vel de abstraoN "ue ser# e9presso
atravs de um @iagrama EntidadeRHelacionamento. 6ormalmente desenvolvido
dentro de uma 'erramenta ;83E MEH\>6, 12345 \or(bench, Oo=er @esigner,
Hose, etc.N
G.-.2 5@1 P 5ogical @ata 1odel
E modelo de dados l7gico a construo l7gica das entidades, atributos e seus
relacionamentos. 6este ponto surge a identi'icao da @@5 "ue vai servir para a
implementao '$sica do modelo. 8 construo da @@5 ser# autom#tica, se o modelo
estiver constru$do em uma 'erramenta ;83E. Em alguns 3CB@s, tal como o @B2
em computadores de grande porte, a gerao da @@5 constru$da manualmente por
meio de utilit#rio pr7prio.
G.-.- O@1 P Oh2sical @ata 1odel
8o se e9ecutar a @@5 gerada no 5@1, o 3CB@ cria 'isicamente o modelo l7gico
elaborado do ;@1. Essa construo identi'icada como modelo de dados J$sico
Q Entidades e ;onFuntosREntidade
8 estrutura l7gica geral de um banco de dados pode ser e9pressa gra'icamente por um @iagrama
EntidadeR Helacionamento
Q.A ;omponentes do @iagrama ERH MOeter ;henN%
Ret0ngulos% representam conFuntosRentidade
,lipses% representam atributos e "uando esto em negrito, signi'icam chave prim#ria P
primary key Mp(N ou chave estrangeira P 1oreign (e$ M'(N
&osangos% representam conFuntosRrelacionamento
*ri0ngulos% representam especiali0aKes ou generali0aKes de uma entidade
&inhas% ligam atributos a conFuntosRentidade e conFuntosRentidade a conFuntosR
relacionamento
;E@JEH6 'oi escolhida como P+ por"ue s7 h# um c7digo para identi'icar o 'ornecedor
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
9 8tributos
3o elementos de dados "ue contm as descriKes "ue possibilitam de'inir uma entidade.
!x$"
Obs% 6enhum modelo su'icientemente claro se no 'or acompanhado de uma de'inio
'ormal dos elementos e isto 'eito atravs do @icion#rio de @ados. 8o se modelar
deveRse sempre ter em mente "ue conceitos, aparentemente, triviais a "uem est#
modelando podem no ser para outros pro'issionais. 8ssim, o dicion#rio de dados tem o
obFetivo de'inir as "uali'icaKes, compreender e uni'icar conceitos dos dados.
9.A @om$nio de um 8tributo
Es atributos devem ser divididos em grupos de tal maneira "ue possibilite, F# durante a
sua de'inio, identi'icar 'atores "ue vo au9iliar na de'inio da base de dados e no
desenvolvimento das aplicaKes. <omando como base o e9emplo acima, 'oram de'inidos,
a seguir, alguns grupos "ue permitem identi'icar os atributos%
Monovalorado% cada elemento do conFuntoRentidade s7 pode possuir um :nico valor.
!x$" )ome
Composto% di0Rse do atributo "ue 'ormado por um ou mais subRatributos.
!x$" !ndereo
6o e9emplo, poderRseRia, ainda, dividir o endereo em complemento, comercial e
residencial$
Multivalorado% assim de'inido "uando uma :nica entidade tem diversos valores para
este atributo. 4uando est# representado no plural 'acilmente identi'icado, porm, em e
mail ou tele#one, por estarem no singular, pode criar d:vidas "uanto / "uali'icao.
!x$" Dependentes
Determinante% identi'ica cada entidade de um conFuntoRentidade Mtambm conhecido
com atributo chave% matr>cula, cp#, cnp3N
!x$" &od+unc
Dom2nio% re'ereRse a um conFunto de valores permitidos para o atributo como%
!x$" Sexo ?9, +@ !stado civil ?&,S,D0, S0'*!(.0, D(A0.&(,D0,
A(BA0, D!SC-(*,D0@
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
A0 Helacionamentos
;hamaRse de relacionamento a estrutura "ue indica a associao de elementos de duas ou mais
entidades.
Entretanto, em alguns casos, necess#rio "ue os atributos esteFam inseridos em uma entidade de
-un!o Mou associativaN para "ue o relacionamento 'i"ue mais bem de'inido. 6este caso, o
atributo de relacionamento a"uele "ue permite e'etuar a associao dos conFuntosRentidade.
AA HestriKes de 1apeamento M;ardinalidadeN
Es relacionamentos entre as entidades de um 1EH podem ser limitados atravs de valores
m$nimos e m#9imos "ue pode haver entre elas. Este limite chamado de cardinalidade "ue um
n:mero "ue e9pressa o n:mero de ocorrSncias de determinada entidade em relao / outra.
8 cardinalidade m#9ima, e9prime o n:mero m#9imo de ocorrSncias "ue uma entidade pode
assumir ao se relacionar com outra. 8 cardinalidade m$nima, determina o menor valor poss$vel
"ue pode haver no relacionamento das entidades. 8s possibilidades de relacionamentos podem ser
in'initas, uma ve0 "ue os valores m#9imos e m$nimos so e9pressos atravs de n:meros cardinais.
Oorm, e9istem padrKes "ue abrangem grande parte desses limites e so conhecidos como%
AA.A LmRparaRum% um elemento de 8 est# associado a somente um elemento da entidade
B. @a mesma 'orma, uma ocorrSncia de B pode se associar a somente uma ocorrSncia em 8
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
alvaro_pimentel@uol.com.br
1
6
J
u
l
h
o

d
e

2
0
0
9
Conceitos e Aplicaes Bsicas para Modelagem de Dados
AA.2 LmRparaRmuitos% um elemento em 8 est# associado a "ual"uer n:mero de
elementos em B, en"uanto uma ocorrSncia em B est# associada somente uma ocorrSncia em 8.
AA.- 1uitosRparaRmuitos% Lm elemento em 8 est# associado a "ual"uer n:mero de
elementos em B, e um elemento em B est# associado a "ual"uer n:mero de elementos em 8.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
E9erc$cios
A2.A. 1odele o relacionamento de um cliente com um banco considerando os atributos
M;5>E6<E P cp', nome, idade, endereoY B86;E P c7digo do banco. >gnore a aplicao das
'ormas normais
A2.2. 1odele o relacionamento dos atletas com os esportes de competio M8<5E<8 P nome,
idade, peso, pa$sY E3OEH<E P tipo, material, localN. >gnore a aplicao das 'ormas normais
A2.-. <ranscreva para linguagem l7gica a modelagem conceitual a seguir.
&d&li )n&li &dBnc )mBnc
&'(!)*! &0)*.,*, B,)&0
!n&li !nBnc
A2.D. 1ostre como o diagrama abai9o pode ser representado por relacionamentos bin#rios.
A2.,. 1odi'i"ue o diagrama abai9o para especi'icar o seguinte%
aN Lm curso no pode estar va0io, isto , deve possuir alguma disciplina em seu
curr$culo.
bN Lm aluno pode 'a0er mais de um curso.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
A2.. ;onstrua um diagrama ERH para um hospital com um conFunto de pacientes e um
conFunto de mdicos. Hegistros de diversos testes reali0ados so associados a cada paciente.
A2.G ;onstrua um diagrama ERH para uma companhia de seguros de autom7veis com um
conFunto de clientes, onde cada um possui certo n:mero de carros. ;ada carro tem um n:mero
de acidentes associados a ele.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
A2 OroFeto de ;haves
Chave% um conFunto de um ou mais atributos "ue, tomados coletivamente, possibilita
identi'icar uma :nica ocorrSncia no na entidade
3ntegridade de ,ntidade% 6enhum atributo "ue participe da chave de um conFuntoRentidade
deve aceitar valores nulos.
8spectos Helevantes
8 "uesto 'undamental do proFeto de chaves redu0ir ao m#9imo os e'eitos de redundTncia.
8 alterao dos valores de campos constituintes da chave prim#ria ou a remoo de uma
entidade de um conFuntoR entidade pode ocasionar problemas de integridade re'erencial.

!ntidade +ornecedor"
&0D+0.)
!ntidade 4roduto"
&0D4.0D
.elacionamento
4edido"&0D+0.) e &0D
4.0D
A- 8utoRHelacionamento
Lm auto.relacionamento acontece "uando os elementos de uma entidade se relacionam com eles
mesmos. Eu seFa, um item de uma entidade se relaciona com outro item Mou com o mesmoN dessa
mesma entidade. 8pesar de parecer algo di'$cil de acontecer h# casos, bem comuns, "ue
identi'icam este tipo de relao. Oor e9emplo, uma ocorrSncia da entidade Juncion#rio, Cerencia e
Cerenciada por si pr7pria. 8ssim se d#, ainda, na classe 1ilitar em "ue o E'icial um 3oldado.
Este autoRrelacionamento tambm conhecido como
R,&AC3O4AM,4*O R,C5RS36O ou R,C5RS363DAD,7 Lm
'ator importante a ser observado "ue as relaKes entre os
elementos pode ser A%6 ou 6%6, e possui as mesmas
caracter$sticas de um relacionamento bin#rio Mrelao entre duas
entidadesN. E relacionamento recursivo deve ser, sempre,
entendido e representado nos dois sentidos ME1OHEC8@E
CEHE6;>8 e V CEHE6;>8@EN
8 implementao de um autoRrelacionamento, atravs de um
345, 'eita da seguinte 'orma Mconsidere "ue a tabela
JL6;>E68H>E prRe9istente e o E1OHEC8@E 'oi
promovido a CEHE6<EN%

alter table +-)&(0),.(0
add constraint !94.D!94.D+E #orei7n 2eF (G!.!)*!)
re#erences +-)&(0),.(0 (!94.!G,D0)G
)ote ;ue a constraint !94.D!94.D+E relaciona a coluna G!.!)*! como uma chave
estran7eira (+orei7n EeF) da coluna !94.!G,D0 na tabela +-)&(0),.(0
=
A
Esta de'inio 'oi inserida no endereo http%&&pt.=i(ipedia.org&=i(i&8utoRrelacionamento
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
AD 8gregao
Lma limitao do 1EH no poder e9pressar relacionamentos entre relacionamentos.
8gregao uma abstrao atravs da "ual os relacionamentos so tratados como entidades
de n$vel superior. 8bai9o se observa a e9istSncia de dois relacionamentos distintos entre as
entidades JL6;>E68H>E e OHEJE<E.
8pesar de parecer assustador, a soluo simples e possibilita uma leitura mais clara do novo
diagrama "ue ser# desenhado
8p7s a agregao, uma nova entidade M"ue pode ser rotulada&nomeadaN representada contendo as
entidades JL6;>E68H>ER<H8B85I8ROHEJE<E.

2
;om esta soluo, a limitao inicial de no poder relacionar <H8B85I8 e L<>5>]8 'icou
'acilmente resolvida.
2
>magens das bru9as dispon$vel em% http%&&===.'otosearch.com.br&'otosRimagens&bru9as.html
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
A, Cenerali0ao P Especiali0ao
E9istem casos em "ue uma entidade pode ser dividida em categorias, possuindo alm dos
atributos comuns, alguns espec$'icos para cada categoria. Oor e9emplo, considerando a entidade
1V@>;E, podeRse atestar "ue todos os mdicos so, basicamente, cl$nicos gerais, mas cada um
possui uma especialidade pr7pria como cardiologista, pneumologista, etc. 8 essa classi'icao
Mou particionamentoN d#Rse o nome de especiali8a!o, "ue nada mais do "ue a identi'icao de
uma caracter$stica pr7pria de obFetos com propriedades similares.
@entro deste modelo podeRse, ainda, considerar a e9istSncia de outros tipos de especiali0ao
A..A <otal e Oarcial

A..2 6oRE9clusiva
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
A..- 1:ltipla

6E<8% <odos os tipos de especiali0aKes indicam "ue a entidade resultante herdar#
caracter$sticas da entidade origem. @esta maneira, ao resultado apresentado, di0Rse "ue este
possui uma IEH86^8, cuFo conceito 'a0 parte da EH>E6<8^_E 8 EBJE<E. 8ssim sendo,
correto a'irmar "ue, nos itens anteriores, h# IEH86^8 <E<85, O8H;>85, 6_ER
E`;5L3>U8 e 1a5<>O58.

A. @ependSncia E9istencial e Entidades Jracas
8 depend9ncia e:istencial ocorre "uando a e9istSncia de uma determinada entidade est#
condicionada / e9istSncia da outra entidade relacionada a ela.
= )
D!4,.*,9!)*0 &0)*.,*, +-)&(0)H.(0
Lma entidade 1raca no possui uma identidade pr7pria. 8ssim sendo, sua chave prim#ria
composta pela chave estrangeira proveniente da entidade origem concatenada a um identi'icador
de si mesma M"ue pode repetir para di'erentes instTncias da entidade donaN.
= )
+-)&(0)H.(0 &.(, D!4!)D!)*!S
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
AG Helacionamentos de Crau 3uperior a 2
O8H<E A
&0.D+0.) C-,)*(D,D! &0D4.0I
+0.)!&!D0. +0.)!&! 4.0I!*0
4!J,
&0D4!J,
Helacionamentos de Crau 3uperior a 2 McontN
O8H<E 2
&0.D+0.) C-,)*(D,D! &0D4.0I
+0.)!&!D0. +0.)!&! 4.0I!*0
40D! +0.)!&!. 4!J, -S,
&0D4!J,
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
O8H<E -

&0.D+0.) C-,)*(D,D! &0D4.0I
+0.)!&!D0. +0.)!&! 4.0I!*0
4!J,
&0D4!J,
5M PO5CO MA3S SOBR, C;A6,S
Lma chave chamada de prim#ria Mprimar$ (e$ < p(= "uando um atributo dado :nico e
obrigat7rio em uma tabela. Oor e9emplo, tomandoRse como base o ;E@JEH6 da tabela JEH6E;E@EH
acima '#cil observar "ue se trata de um atributo "ue representa um :nico 'ornecedor, tal como o ;C;.
6o caso de uma tabela OE33E8 poderia ser o ;OJ, o HC ou a ;arteira de Iabilitao. 6otaRse, ento,
"ue a escolha de uma chave deve signi'icar um atributo "ue no possua elementos "ue impossibilitem, ou
minimi0em erros de digitao. Oortanto, no se deve escolher como chave atributos "ue contenham
tamanhos vari#veis ou com 'ormatos al'anumricos tal como nome, endereo ou descrio, por e9emplo.
4uando h# a e9istSncia de um relacionamento de uma entidade 'orte com uma 'raca,
obrigatoriamente a chave da tabela 'orte > inclu2da na 'raca. Essa chave na tabela 'raca chamada de
chave estrangeira M1oreign (e$ P 1(N como ocorre nos relacionamentos umRparaRmuitos MA%6N. 4uando se
trata, porm, de um relacionamento muitosRparaRmuitos M6%6N necess#ria a criao de uma tabela
associativa "ue, neste caso, ser# a entidade 'raca. 8ssim, nesta nova entidade sero colocadas, como
chaves estrangeiras M1(N, as chaves prim#rias Mp(N das tabelas de origem.
8 colocao de uma chave estrangeira sempre um indicativo de "ue uma entidade dependente
de outra por uma ra0o "ual"uer. Es motivos "ue determinam a necessidade de criao de uma chave
M"uer seFa p( ou '(N esto, na maioria das ve0es, associados a regras de neg7cio identi'icadas no
levantamento dos re"uisitos. Em outros casos so para resolver problemas de per'ormance "ue so
identi'icados ap7s a implementao das bases de dados ou dos sistemas. Oortanto, as chaves sempre esto
associadas a melhorias de acesso a base de dados.

alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
A9 E9erc$cios
A9.A% 1odele o relacionamento entre um 5ote e um Oroduto considerando "ue o Oroduto
re'ereRse a materiais de 'arm#cia e pode ser subdividido em, pelo menos, duas
entidades. ;rie os atributos "ue considerar pertinente assim como as cardinalidades
apropriadas.
A9.2% Especiali0e a entidade Ue$culo em, pelo menos, seis entidades relacionadas.
A9.-% 1odele o relacionamento entre Empregado e @epartamento considerando "ue o
empregado pode ser dividido em Cerente, 3ecret#ria e Engenheiro. Oara cada
relacionamento do @EH de'ina atributos "uando poss$vel. @e'ina os atributos
identi'icadores ou chaves
A9.D% ;onsidere agora "ue a secret#ria, do e9erc$cio -, use um 8plicativo "ue pode ser
subdividido em trSs itens. E Engenheiro participa de um OroFeto, e ambos utili0am a
entidade 1#"uina
A9.,% @o e9erc$cio D considere "ue um Jornecedor se relaciona com um 5ote e com
um Jabricante. Este, por sua ve0, est# relacionado com o Oroduto. E'etue a alterao no
modelo para "ue ele atenda aos novos re"uisitos.
A9..% Lma empresa desenvolve proFetos de grande porte. Esta empresa est# organi0ada
em departamentos, sendo "ue cada proFeto sempre coordenado por um departamento.
Es departamentos possuem empregados "ue podem ser che'es. Embora um empregado
pertena sempre a um departamento, ele pode ser alocado a proFetos de outros
departamentos. Es 'uncion#rios possuem nome, data de nascimento e cp'. Es
respons#veis pelo proFeto so os che'es de departamento ao "ual o proFeto est# alocado.
<odo proFeto possui uma #rea Mengenharia, urbanismo, etc.N e per$odo de1inido de
tempo.
A9.G% @e acordo com o @EH abai9o um 8nalista ou 1dico no podem ser gerentes.
Oor "uS) 4ual a alterao necess#ria para tornar isso poss$vel)
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
A9.Q% Lma organi0ao "ue atua no ramo de vendas de materiais de construo deseFa
montar um banco de dados para emisso de 'aturas em suas loFas, gerenciando a
comisso de cada empregado. 3abeRse "ue%
aN 8 empresa possui diversas loFasY
bN Lm empregado pertence sempre a uma loFaY
cN Lma nota 'iscal composta de dados genricos Mn:mero da nota 'iscal, nome do
cliente, data de emisso, valor total da 6ota 'iscal, nome do empregado respons#vel
pela vendaN e dados do detalhe da venda Mnome do material vendido, "uantidade
deste material, valor unit#rio, valor total do item de material vendidoN.
.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
20 6ormali0ao
-
E processo de normali8a!o pode ser visto como o processo no "ual so eliminados es"uemas
de relaKes MtabelasN no satis'at7rios, decompondoRos, atravs da separao de seus atributos em
es"uemas de relaKes menos comple9as, mas "ue satis'aam as propriedades deseFadas.
Oor "ue 6ormali0ar )
AZN 1inimi0ar de redundTncias e inconsistSnciasY
2ZN Jacilitar manipulaKes do Banco de @adosY
-ZN Jacilitar manuteno do 3istema de >n'ormaKes
E processo de normali0ao como 'oi proposto inicialmente por ;odd condu0 um es"uema de
relao atravs de uma bateria de testes para certi'icar se o mesmo est# na ?@, A@ e B@ #ormas
4ormais.
Oara "ue se compreenda melhor suponha "ue haFa uma entidade #uncionrios "ue arma0ene as
in'ormaKes dos 'uncion#rios de uma empresa e "ue o resultado '$sico 'inal seFa a tabela
mostrada abai9o.
8o se observar a tabela vSRse "ue ela so're das seguintes anomalias%
Anomalia de ,:clus!o < 3e o 'uncion#rio de c7digo igual a - 'or e9clu$do, o 3etor ser#
e9clu$do tambm.
Anomalia de Altera!o P 3e o nome do 3etor 3uporte mudar para 8poio ser# obrigat7rio a
alterao, deste nome, em todos os registros da tabela.
Anomalia de 3nclus!o < 3e um novo 'uncion#rio 'or contratado para o 3etor 3uporte ser#
obrigat7ria a alterao da "uantidade de 'uncion#rios no campo < 4uantidadeJuncionarios <
em todas as ocorrSncias "ue houver o setor de nome 3LOEH<E.
Oara poder resolver o dilema acima necess#rio 4ORMA&3CAR a entidade. Oara isto aplicaRse
as 1ormas normais como ser# estudado a seguir%
-
Es conceitos de 6ormali0ao e Jormas 6ormais 'oram baseados na literatura disponibili0ada no endereo
http%&&leiteFr.'iles.=ordpress.com&200Q&09&modelagem.pd'
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
20.A Orimeira Jorma 6ormal MAJ6N
Lma relao est# na AJ6 se todos os dom$nios b#sicos contiverem valores :nicos Mno contiver
grupos repetitivosN. Oara atingir esta 'orma normal necess#rio eliminar as redundTncias da base
MtautologiaN e os grupos de repetio. >sso signi'ica di0er "ue todos os atributos de uma tabela
devem ser atDmicos Mindivis$veisN, ou seFa, no so permitidos atributos multivalorados, atributos
compostos ou, ainda, atributos multivalorados compostos.
aN >denti'icar "ual elemento , potencialmente, a chave prim#ria da entidadeY
bN >denti'icar o grupo repetitivo e e9clu$Rlo da entidadeY
cN ;riar uma nova entidade com a chave prim#ria da entidade anterior e o grupo repetitivo.
8 chave prim#ria da nova entidade ser# obtida pela concatenao da chave prim#ria da entidade
inicial e a do grupo repetitivo.
!x$
)o normaliKada )ormaliKada usando a primeira #orma normal (=+))
20.2 3egunda Jorma 6ormal M2J6N
Lma relao H est# na 2J6 se, e somente se, ela estiver na AJ6 e todos os atributos noRchave
'orem totalmente dependentes da chave prim#ria.
aN 8plicaRse conceito da dependSncia 'uncional para identi'icar os atributos "ue no so
'uncionalmente dependentes de toda a chave prim#ria.
bN Hemover da entidade todos esses atributos identi'icados e criar uma nova entidade com eles.
8 dependSncia 'uncional ` b total se a remoo de um atributo 8 do componente `,
implica "ue a dependSncia 'uncional dei9a de e9istir.
8 dependSncia 'uncional ` b parcial se e9istir um atributo 8 no componente ` "ue
pode ser removido e a dependSncia no dei9a de e9istir.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
;onsiderandoRse, agora, as entidades%
ArEuivo de 4otas #iscais M6um. 6J, 3rie, ;7digo do ;liente, 6ome do cliente, Endereo
do cliente, <otal Ceral da 6otaN
ArEuivo de 6endas M6um. 6J, ;7digo da 1ercadoria , @escrio da 1ercadoria,
4uantidade vendida, Oreo de venda e <otal da vendaN
E resultado ap7s a aplicao da segunda 'orma normal M2J6N ser#%
ArEuivo de 4otas #iscais M6um. 6J, 3rie, ;7digo do ;liente, 6ome do cliente, Endereo
do cliente, <otal Ceral da 6otaN
ArEuivo de 6endas M6um. 6J, ;7digo da 1ercadoria, 4uantidade vendida e <otal da
UendaN
ArEuivo de Mercadorias M;7digo da 1ercadoria, @escrio da 1ercadoria, Oreo de
vendaN
;omo resultado notaRse um desdobramento do ArEuivo de 6endas em duas estruturas P 6endas
e Mercadoria Mo ar"uivo de 6otas Jiscais, no 'oi alterado, por no possuir chave compostaN%
Orimeira estrutura MArEuivo de 6endasN% ;ontm os elementos originais, sendo e9clu$dos os
dados "ue so dependentes apenas do campo ;7digo da 1ercadoria.
3egunda estrutura MArEuivo de MercadoriasN% ;ontm os elementos "ue so identi'icados
apenas pelo ;7digo da 1ercadoria, ou seFa, independentemente da 6ota Jiscal, a descrio e o
preo de venda sero constantes.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
20.- <erceira Jorma 6ormal M-J6N.
Lma relao H est# na -J6 se estiver na 2J6 e se no houver dependSncia transitiva entre
atributos no chave. Em outras palavras, se cada atributo 'or 'uncionalmente dependente apenas
dos atributos componentes da chave prim#ria ou se todos os seus atributos no chave 'orem
independentes entre si.
aN 8plicaRse conceito da dependSncia transitiva para identi'icar todos os atributos "ue so
'uncionalmente dependentes de outros atributos no chaveY
bN HemovSRlos e criar uma nova entidade com os mesmos.

8 dependSncia 'uncional F G em uma tabela * transitiva se e9istir um conFunto de atributos
C "ue no um subconFunto de chaves de * e cuFas dependSncias F C, C G, so v#lidas.
,strutura na segunda 1orma normal HA#4=
ArEuivo de 4otas #iscais M6um. 6J, 3rie, @ata emisso, ;7digo do ;liente, 6ome do
cliente, Endereo do cliente, <otal Ceral da 6otaN
8r"uivo de Uendas M6um. 6J, ;7digo da 1ercadoria, 4uantidade vendida e <otal da venda
desta mercadoriaN
8r"uivo de 1ercadorias M;7digo da 1ercadoria, @escrio da 1ercadoria, Oreo de vendaN
,strutura na terceira 1orma normal HB#4=
ArEuivo de 4otas #iscais M6um. 6J, 3rie, @ata emisso, ;7digo do ;liente e <otal Ceral
da 6otaN
ArEuivo de 6endas M6um. 6J, ;7digo da 1ercadoria, 4uantidade vendida e <otal da venda
desta mercadoriaN
ArEuivo de Mercadorias M;7digo da 1ercadoria, @escrio da 1ercadoria, Oreo de
vendaN
ArEuivo de Clientes M;7digo do ;liente, 6ome do cliente, Endereo do clienteN
OodeRse perceber "ue ocorreu um desdobramento da tabela de 4otas #iscais, por ser a :nica "ue
possu$a campos "ue no eram dependentes da chave principal M6um. 6JN. Es elementos 6ome e
Endereo no se alteram independente do "ue ocorra com a 6ota Jiscal.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
2A E9erc$cios
2A.A. ;onsiderando a e9istSncia de trSs tabelas MJL6;>E6cH>E, @EOE6@E6<E, ;LH3EN
normali0eRas de acordo com o "ue 'oi desenvolvido
#54C3O4IR3O D,P,4D,4*,
R18<Hd;L58 @E JL6;>E6cH>E R;e@>CE @E @EOE6@E6<E
R6E1E @E JL6;>E6cH>E R6E1E @E @EOE6@E6<E
R@8<8 @E 683;>1E6<E
C5RSO P Hegras do neg7cio MH6N%
R;e@>CE @E ;LH3E H6A. Lm 'uncion#rio pode ter mais de um dependente
R6E1E @E ;LH3E H62. Lm 'uncion#rio pode 'a0er mais de um curso
R86E @E ;LH3E
2A.2 >magine "ue seFa necess#rio desenvolver um sistema para cadastro de clientes e 'oi
recebida, do cliente, uma lista com os dados "ue devero compor o sistema, com base nela
normali0e a estrutura de dados de acordo com as 'ormas normais estudadas. 8 t$tulo de
treinamento considere o tratamento das in'ormaKes como um pe"ueno dicion#rio de dados,
em "ue sero descritos os atributos pertinentes aos elementos.
5ista de in'ormaKes "ue devero compor o sistema cadastro de clientes%
6ome do dado @escrio <ipo <amanho Ebrigat7rio
4ome 6ome do cliente pessoa '$sica ;har D, 3im
4ome do Pai
4ome da M!e
,ndereo
*ele1one?
*ele1oneA
4Jmero do #a:
4Jmero do Celular
*ele1one do trabalho
Data de 4ascimento
4aturalidade
4acionalidade
,ndereo correspond9ncia
4ome do 1ilho ?
idade do 1ilho ?
4ome do 1ilho A
idade do 1ilho A
4ome do 1ilho B
idade do 1ilho B
4ome do 1ilho K
idade do 1ilho K
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
4ome do CDn-uge
4Jmero do CP#
4Jmero identidade
2A.- ;onsidere o desenvolvimento de um modelo l7gico "ue representa a situao a seguir%
E @epartamento de Uendas da >nd:stria Bele0a 5tda, ap7s estudos de mercado, veri'icou "ue
para atingir seus obFetivos seria necess#rio ad"uirir uma 'rota de ve$culos pr7prios para
motori0ar seus vendedores. E mercado consumidor 'oi dividido em regiKes de vendaY 'oram
estabelecidos percursos de entrega abrangendo pontos estratgicos dessas regiKes e
vendedores 'oram designados para cobrir estes percursos. @eve ser constru$do um sistema
para administrao do novo modelo de vendas adotado pela empresa. 8p7s entrevistas com o
gerente da #rea, 'oram obtidas as seguintes in'ormaKes%

R cada regio identi'icada por um c7digoY
R uma regio composta de v#rios pontos estratgicosY
R as regiKes no tSm pontos estratgicos em comumY
R o vendedor tem a responsabilidade de cobrir uma regioY
R uma regio pode ser coberta por v#rios vendedoresY
R a cada dia, um ve$culo 'ica sob responsabilidade de um vendedorY
R um vendedor pode vender "uais"uer itens ativos da tabela de produtosY
R o vendedor respons#vel pela identi'icao de cada cliente consumidor na nota 'iscalY
R a nota 'iscal contendo identi'icao do vendedor, itens e "uantidades vendidas e9igida para
comprovao da venda
2A.D @e acordo com as regras estudadas normali0e as estruturas abai9o.
fRela!o de Programadores
P 6umero da 1atr$cula
P 6ome do Orogramador
P 3etor
P 6$vel M A,2,-N
P @escrio do 6$vel M A R J:nior, 2 R Oleno, - R 3eniorN
P Programas
P ;odigo do Orograma
P 6ome do Orograma
P <empo Estimado
P 6$vel de @i'iculdade M A, 2 ou - N
P @escrio da @i'iculdade M J#cil, 1dio, @i'$cilN

Regras do neg/cio
R Lm programa pode ser 'eito por mais de um OrogramadorY
R Lm programador pode 'a0er um ou mais programasY
R E 6$vel de di'iculdade do programa depende do tempo estimado para a elaborao do
mesmoY
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
22 3oluKes
8s respostas apresentadas representam apenas uma das soluKes poss$veis. Em se tratando de
modelagem de dados o caso certo o "ue atende a uma especi'icao dentro dos padrKes
estabelecidos. Em muitos casos necess#rio desnormali0ar um modelo para melhorar o acesso a
uma base e, com isso, melhorar a per'ormance do processo de busca.
5ma solu!o do ?A7?
8s soluKes A2.A, A2.2 e A2., representam um modelo "ue no contempla os conceitos de
normali0ao, entretanto, como treinamento inicial, importante entender como se constr7i um
relacionamento e de "ue maneira podeRse, ento, melhorar o particionamento dos dados
5ma solu!o do ?A7A
5ma solu!o do ?A7B
<8BE58 ;5>E6<E M;d;li Mp(N, 6n;li, En;liN
<8BE58 B86;EM;dBnc Mp(N, 6mBnc, EnBncN
5ma solu!o do ?A7K
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o do ?A7L
5ma solu!o do ?A7M
5ma solu!o do ?A7N
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o do ?O7?
5ma solu!o do ?O7A
5ma solu!o do ?O7B
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o do ?O7K
5ma solu!o do ?O7L
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o do ?O7M
5ma solu!o do ?O7N
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o do ?O7P
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
E modelos abai9o 'oram desenvolvidos no software gratuito 12345 \or(bench
5ma solu!o do A?7?
;omo 'oi e9plicado no t7pico A2.-, toda ve0 "ue 'or identi'icado um relacionamento n%n sempre
ser# necess#ria a criao de um tabela e9tra para representar o relacionamento. 6este caso um a
'uncion#rio pode se inscrever em muitos MnN cursos e, por sua ve0 um curso pode possuir muitos MnN
'uncion#rios. 8ssim, 'oi criada tabela associativa Mou FunoN Curso do #uncionrio para evitar a
redundTncia de dados nas tabelas origens.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o A?7A
8tualmente F# poss$vel, legalmente, um indiv$duo possuir pais de mesmo se9o. Oor esta ra0o,
a #ilia!o uma tabela associativa M"ue representa a paternidade&maternidadeN de *utor com a
tabela Cliente. <alve0 'osse interessante criar uma tabela "ue identi'icasse o tipo do dependente, o
tipo do tele'one e o tipo do endereo. 6o entanto a diviso dessas tabelas pode in'luenciar em um
es'oro e9tra considerando os valores "ue podem ser assumidos por elas.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o A?7B
8 tabela 5so 6e2culo representa uma Funo dos ve$culos "ue podem ser utili0ados pelos
vendedores. V importante notar "ue sua e9istSncia s7 acontecer# se as tabelas pai e9istirem.
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
5ma solu!o A?7K
8 tabela Programador Programa associativa pelas mesmas ra0Kes apresentadas nas soluKes
anteriores.
V poss$vel "ue seFam encontradas soluKes melhores "ue as apresentadas anteriormente. ;abe
lembrar "ue modelagem de dados como a construo de conhecimento "ue vai se edi'icando com
o tempo. Haramente se constr7i uma modelagem "ue no so'ra alteraKes, ou "ue no contenha
e"u$vocos, e isso 'a0 parte do processo de desenvolvimento de um modelo de bases de dados.
E9ercitar o "ue vai tra0er e9periSncia e mais habilidade no tratamento dos dados.
6o pr79imo manual ser# tratada a instalao, a modelagem e o manuseio de uma base de dados
12345 atravs da 'erramenta ;83E 12345 \or(bench e 12345 4uer2 Bro=ser.
8 instalao do 12345 est# na apostila #ree Acess O M$S%& na prtica! dispon$vel no
endereo http%&&artigocienti'ico.tebas.(inghost.net&pes"uisadores&)mnu*2+smnu*,+id*29,-.
8lvaro ;aetano Oimentel 3obrinho
@outorando em ;iSncia da >n'ormao LJHJ&>B>;<,
1estre em <ecnologia da >n'ormao L6E38,
Jormado em <elecomunicaKes L6E38,
8dministrador de bases de dados Eracle, @b2 e >dms e
alvaro_pimentel@uol.com.br
J
u
l
h
o

d
e

2
0
0
9
1
9
1
9
A
Conceitos e Aplicaes Bsicas para Modelagem de Dados
@ocente em 3istemas de >n'ormao
alvaro_pimentel@uol.com.br

Das könnte Ihnen auch gefallen