Upload
falcaodesign
View
66
Download
41
Embed Size (px)
Citation preview
1www.tiagodemelo.info
BancodeDadosI
CursodeGraduaoemEngenhariadaComputao
Segundoquadrimestrede2008Prof.Msc.TiagoEugeniodeMelotiago@[email protected]
AprimeiraversodestematerialfoielaboradapeloprofessorAlexandreGuimares.
2www.tiagodemelo.info
Sumrio ConceitosBsicosdeBancodeDados ModelodeEntidadeRelacionamento ModeloEntidadeRelacionamentoEstendido ModeloRelacional FerramentadeModelagem StructuredQueryLanguage(SQL)
3www.tiagodemelo.info
Bibliografia
SistemasdeGernciadeBancodeDadoseModelagemdeDados
AFirstCourseinDatabaseSystems Ullman,J&Widom,J PrenticeHall,2001,3thed.
DatabaseSystemsConcepts Korth,H.F.;Silberschatz,A;Sudarshan,S McGrawHill,Inc.,2005,5thed.
FundamentalsofDatabaseSystems Elmasri,R;Navathe,S BenjaminCummings,2003,4thed.
DatabaseManagementSystems Ramakrishnan,R McGrawHill,2003,3rded.
4www.tiagodemelo.info
Bibliografia
LivrosdeBancodeDadosemPortugus
SistemasdebancodeDados Korth,H.F.;Silberschatz,A;Sudarshan,S EditoraCampus,2006.
IntroduoaSistemasdeBancosdeDados Date,C.J. EditoraCampus,8aed,2004.
5www.tiagodemelo.info
ConceitosBsicos:BancodeDados BancodeDados(BD)setransformouemumcomponenteessencialdodia
adianasociedademoderna.
Exemplos: iraumbancoparafazerdepsitoouretiradadedinheiro. fazerareservaemumhotelouemumacompanhiaarea. fazerpesquisadeitensemumabibliotecacomputadorizada. pesquisarpreosdeitensemumsupermercado.
AsatividadesacimasoexemplosdeaplicaestradicionaisdeBD.Ondeamaioriadasinformaessoarmazenadasatravsdetextosounmeros.
Hpoucosanosatrs,atecnologiapermitiunovasaplicaesparaBD
Exemplos: Bancodedadosmultimdia:armazenafiguras,somevdeo. SIGSSistemasdeinformaesgeogrficas:armazenameanalisammapas,
tempoeimagemdesatlite. Sistemasemtemporeal:controledechodefbricaeprocessosde
manufatura.
6www.tiagodemelo.info
AUMENTODECOMPETITIVIDADE
VANTAGEMESTRATGICAPassagemAreaSupermercado
Avanotecnolgico
Tempo
Hardware
Software
Sistemas
faltademtodospadres
faltadeferramentasprodutivas
ProcessodeDesenvolvimento
SistemasdeInformao
7www.tiagodemelo.info
ConceitosBsicos:BancodeDados
umacoleodedadosinterrelacionados,representandoinformaessobreumdomnioespecfico(conceitogeral) umBDrepresentaaspectosdomundoreal.Mudanasnomundoreal
sorefletidasnoBD. umBDumacoleolgicaecoerentededadoscomrelacionamentos
intrnsecos.
umconjuntodedadossemnenhumrelacionamento,nopodeserconsideradoumBD.
umBDprojetado,construdoemantidoparaumapropostaespecfica.direcionadoaumgrupodeusuriosdeumadeterminadaaplicao.
umBDpodepossuirqualquertamanho/complexidade.
Emoutraspalavras,umBDtemalgumafonteondeosdadossoderivados,algumgraudeinteraocomeventosnomundoreal,eumaaudinciainteressadanocontedodesseBD
8www.tiagodemelo.info
ConceitosBsicos:BancodeDados
Criao/ControledeumBD:
manual
porumgrupodeaplicaesespecficas
SistemadeGerenciamentodeBancodeDados(SGBD):queumacoleodeprogramasquepermiteaosusurioscriaremanterumBD
9www.tiagodemelo.info
Aplicao Aplicao
SGBD
B CA
MetaDados
Aplicao Aplicao
A B C
osaplicativosacessamemanipulamosarquivosdiretamentenosdiscos
osaplicativosacessamemanipulamasinformaesatravsdosSGBDs
SO
SistemasdeInformao:ArquivosxBD
10www.tiagodemelo.info
SistemasdeInformaobaseadosemArquivos
tipodearquivo/formatodoregistroescolhidodeacordocomasnecessidadesdeumaaplicao
problemasaparecemnamanuteno,evoluoouintegraodesistemas
faltadegestocentralizadadedados faltadeautonomiadosdadosemrelaoaos
programas faltadefacilidadedealtonvelparatratamentode
problemascomunsaqualquermanipulaodedados
11www.tiagodemelo.info
SistemasdeInformaobaseadosemarquivos
Complexidade/Volumederegistros nmeromximodearquivos tamanhodememria limitaesdotipodearquivo,tipodeacesso preocupaestcnicasjuntocomproblemasdedomnio
Ex:fazeremprstimodeumlivro semreservas? semmultaspendentes? registraemprstimo abrearquivos(fechandooutros...) carregaregistrosnamemria(abrendice,usaoponteiro,estouroumemria?,...)
12www.tiagodemelo.info
SistemasdeInformaobaseadosemarquivos
Faltadeintegraoecentralizao redundncia inconsistncia entradarepetidadeinformaes usuriotemaresponsabilidadedegarantirasincroniaentreas
diferentescpiasdamesmainformao
Dificuldadedeacessonovainformao novainformao=novaaplicao
Isolamento aorganizaosabequeosdadosexistem? formatodearquivoapropriadoparaumanovaaplicao? possvelintegrardadosdediferentessistemas?
13www.tiagodemelo.info
SistemasdeInformaobaseadosemarquivos
Concorrncia difcilimplementao
Tolernciaafalhas faltadeluz,interrupodefuncionamento,etc cpias?restauraodoestadoanterior?consistnciadabase?
Segurana acessodiferenciadoportipodeusurio ex:
funcionriovisualizareservadelivros,identificausuriosecancelareservas
usuriovisualizareservadelivros
14www.tiagodemelo.info
CaractersticasdaAbordagemdeBancodeDados
naturezaautocontida
umBDarmazenadados+osdadosquedescrevemessesdados(catlogo)
OcatlogotrazinformaesdaestruturadoBD,formatodosdados,restriesdevaloresqueosdadospodemassumir,quempodeacessarosdados,etc
UmBDpodeguardarinformaesnocatlogo,referentessrestries.Seumregistroforremovidodeumarquivo,automaticamenteosregistrosserotambmremovidosemarquivosinterligados(preservandoaintegridade)
15www.tiagodemelo.info
CaractersticasdaAbordagemdeBancodeDados
Acessoaosdados
OsSGBDssoresponsveispeloacessoconcorrenteaummesmodado,deixandoosprogramasdeterestetipoderesponsabilidade.
ComoumBDumrepositriocentralizadodedados,osSGBDsprovemmecanismodecontroledeacessoaosdados,ouseja,spermiteacessoparaosusuriosautorizados.
16www.tiagodemelo.info
CaractersticasdaAbordagemdeBancodeDados
AbstraoeVisesdedados OSGBDprovumarepresentaoconceitualdosdados,excluindo
detalhesdecomoosdadossoarmazenados.
OmaiorpropsitodeumBDodeofereceraosusuriosumavisoabstratadosdados.Isto,osistemaescondecertosdetalhesdecomoodadoarmazenadoemantido.AcomplexidadeestescondidaatravsdediversosnveisdeabstraoquesimplificamainteraodousuriodoSistema.
UmBDpermitequeosusuriostenhamvisesabstratasdosdados,issopossvelporqueosBDssoconstrudosatravsdeummodelodedados.
UmBDtemmuitosusurioscomvisesdiferentesdosdados.UmSGBDdeveprovermecanismosparadefinirmltiplasvisesdosdados.
17www.tiagodemelo.info
CaractersticasdaAbordagemdeBancodeDados
Independnciaentredadoseprogramas
Naabordagemdearquivos,cadaprogramapossuiemseucdigoumadescriodaestruturadosarquivos
Naabordagemdebancodedadosexisteumcatlogoquepermitequequalquerprogramapossarecuperarasinformaesdinamicamente
18www.tiagodemelo.info
UmSGBD
umconjuntodeaplicaesusadoparagerenciarumBancodeDados:
armazenar,recuperaremodificarinformaes. proporcionarumambienteconvenienteeeficientepara
recuperarearmazenarinformaesdeumbancodedados. manipulargrandevolumedeinformaes. proverseguranasinformaesarmazenadas. controlarconcorrncia,evitandoresultadosanmalosna
atualizaodeinformaesnoBD. provermecanismosparacriaoemanipulaodeestruturas
dearmazenamentodeinformao. restringiracessoadadosdeusuriosnoautorizados.
19www.tiagodemelo.info
UmSGBD UmSGBDumsoftwaredepropsitogeralquefacilitaos
seguintesprocessos: Definio Construo Manipulao
ummeioconvenienteeeficientepararecuperaoearmazenamento.
IMPORTANTE:NonecessriousarumSGBDparaimplementarumbancodedados.
20www.tiagodemelo.info
SGBDsAtores ProgramadordeAplicaes
DefinioeimplementaodeprogramasqueUSAMabasededados ProgramasenviamsolicitaesdeserviosaoSGBD
Trabalhamsobreadefiniolgicaousobreumavisoexternaespecfica
UsurioFinal Usamabasededadosparasuasfunes
dodiaadia Interagemcomosistemaapartirdeuma
estaodetrabalho aplicao linguagemdeconsultainterativa
21www.tiagodemelo.info
SGBDsAtores AdministradordoBancodeDados(DBA)
Pessoa(s)quedetmaresponsabilidade(tcnica)centralsobreosdados
Definiodoesquema conjuntodedescriesescritascomaDDLqueso
armazenadasnoDicionriodeDados
Definiodaestruturadearmazenamento Requisitosdeespaodearmazenamento,
desempenho,concorrncia,criaoounodendices,etc.
Monitorardesempenho
ModificaodoesquemaeReorganizaofsica desempenhoealteraonosrequisitosfuncionais
Concessodeautorizaodeacessoadados Especificaoderestriodeintegridade Definiodeestratgiasderecuperaode
dados
22www.tiagodemelo.info
SGBDsAtores
ProjetistadoBancodeDados Identificarrequisitosinformacionaisda
corporao Escolherestruturasapropriadaspara
representaodainformao Interagircomousurio PodeserconfundidocomopapeldeDBA
23www.tiagodemelo.info
QuandousarumSGBD? Controlarredundncia
Aumentodaconsistnciaatravsdeumamaiorintegraoecentralizaodosdados
Restringiracessonoautorizado Persistnciadosdados(almdaexecuo) Representaoderelaescomplexasentreosdados Estabelecimentoderegrasepadres Fornecerbackuperecuperao Controledeacessoconcorrente Esfororeduzidodedesenvolvimentoparaaplicaes
orientadasadados
24www.tiagodemelo.info
RazesparaNOseusarumSGBD
Customaiorqueobenefcio!!! custodeHW,SWetreinamento. soluesgenricasparadefinireprocessardados. custopelasegurana,controledeconcorrncia,recuperao,
manutenodeintegridade,etc. Basededadoseaplicaessimples,bemdefinidas,e
semprevisodealteraoamdioprazo. Aplicaescomrequisitosdedesempenho(ex:tempo
real). Aplicaesmonousurio.
25www.tiagodemelo.info
MundoRealProcessodeSoluo
MundoReal SoluoModelo
Modeloarepresentaoabstrataesimplificadadeumadeterminadarealidade,comaqualsepodeexplicaroutestaroseucomportamento,emsuatotalidadeouempartesantesdesuaexistnciareal.
ModelosdeDados(DataModels)
26www.tiagodemelo.info
Tabelasnodisco
ServerServer
ModelodeDados
ModelodeEntidadedoCliente
RepresentaoTabulardoModelode
Entidade
ModelodoSistema
(mentedoCliente)
ModelodeDadosdeAltoNvel
(conceitual)
ModelodeDadosdeNvelIntermedirio(representaoouImplementao)
ModelodeBaixoNvel(fsico)
27www.tiagodemelo.info
MundoRealMundoReal
ModeloEntidadeRelacionamento
ModeloRelacional/ObjetoRelacional
nvellgico
nvelfsico
CategoriasdeModelosdedados
nvelconceitual
28www.tiagodemelo.info
Perguntassobrealtimaaula
Quaisosnveisdeabstraodedados? Oquedescreveomodeloconceitual? QualafunodocatlogoemumBD? OqueumSGBDequaloseuobjetivo? QuaisasvantagensdeumSGBD? QualaimportnciadosmodelosdedadosparaaestruturadeumBD?
29www.tiagodemelo.info
nvelconceitual
nvellgico
nvelfsico
nestenveldeabstraosoescolhidasasestruturaslgicasquerepresentaroosobjetosdomodeloconceitualnocomputador.
onvelmaisaltodeabstrao,faladeobjetosdomundorealesuasrespectivasoperaes.Ex:aluno,livro,empregado.Oimportantenestafaseescolherabstraesdomundorealquecapturemouniversodediscurso,segundoopontodevistadosistemaaserconstrudo.Anfaseestnainformaoenocomoelaserimplementada.
omais baixo nvel de abstrao e descreve como os dados seroarmazenados, como deve ser a representao fsica das estruturaslgicasdefinidasnomodelo lgico.Especificase tambmasoperaesdomodelolgicousandosearepresentaofsica.
CategoriasdeModelosdedados
30www.tiagodemelo.info
Modelosdedados,EsquemaseInstncias Modelodedados
ummodelodedadosconsistedeumconjuntodeconceitosqueusadoparadescreverobancodedadosdamesmaformaqueumalinguagemdeprogramaousadaparadescreverumprograma
DescreveaestruturadoBancodeDados.AestruturadeumBDsignificaosseusobjetos,tiposdedados,procedimentos,easrestriesquedevemserobedecidas,geralmentefeitasegundoumModelodeDados
Esquema
AdescriodeumBDchamadadeEsquemadeBancodeDados OProjetodoBDdenominadodeesquemadoBD
Instncia(estadodeumBD)
AcoleodeinformaesarmazenadasemumBDemumdadomomentonotempodenominadoinstnciasdoBD
31www.tiagodemelo.info
Arquiteturados3Esquemas
EsquemaConceitual
EsquemaInterno
NVELCONCEITUAL
NVELINTERNO
VisoExternaA
MapeamentoExterno/Conceitual
UsuriosFinais
BancodeDadosArmazenado
VisoExternaB
VisoExternaN
...NVELEXTERNO
MapeamentoConceitual/Interno
32www.tiagodemelo.info
EsquemasxModelosdeDados
EsquemaConceitual
EsquemaInterno
NVELCONCEITUAL
NVELINTERNO
VisoExternaA
MapeamentoExterno/Conceitual
UsuriosFinais
BancodeDadosArmazenado
VisoExternaB
VisoExternaN
...NVELEXTERNO
MapeamentoConceitual/Interno
OEsquemainternousaumMODELODEDADOSFSICOedescrevedetalhessobreoarmazenamentodosdados
OEsquemaConceitualescondeosdetalhesdasestruturasfsicas.UmMODELODEDADOSDEALTONVELoudeIMPLEMENTAOpodeserusado.
EsteNveldescreveapartedeumBDparaumgrupodeusurioparticular.UmMODELODEDADOSDEALTONVELoudeIMPLEMENTAOpodeserusado.
33www.tiagodemelo.info
IndependnciadeDados
Habilidadedemodificaradefiniodoesquemaemumnvelsemafetaradefiniodoesquemanoprximonvelacima
IndependnciadeDadosFsica:modificaesnoesquemafsiconocausammodificaesnosprogramas Geralmenteocorremparamelhorardesempenho(reorganizaofsica)
RefereseaoISOLAMENTOdeumaaplicaodasestruturasfsicasdearmazenamento
IndependnciadeDadosLgica:modificaesnoesquemaconceitualnocausammodificaesnosprogramas
34www.tiagodemelo.info
identificaodosobjetosquecompearealidade,seguidapelaidentificaodasoperaesqueincidemsobreestes
identificaodeumconjuntodeprocedimentosquenelaserealizam,interaoentreeleseidentificaodosdadosnecessriosparaaexecuodessesprocedimentos
Enfoques
Processo
Dados
ModelagemdaRealidade
35www.tiagodemelo.info
FasesdeumProjetodeBDSimplificado
MundoReal
ColeoeAnlisedeRequerimentos
ProjetoCONCEITUAL
ProjetoLGICO(MAPEAMENTO)
ProjetoFSICO
EsquemaInterno
EsquemaLgicoeConceitual(emummodelodedadosespecficodoSGBD)
EsquemaConceitual(Modelodedadosdealtonvel)
RequerimentosdeBD
IndependentedeSGBD
EspecficodoSGBD
AnliseFUNCIONAL
RequerimentosFuncionais
EspecificaodasTransaesdeAltoNvel
ProjetodosProgramasdaAplicao
IMPLEMENTAOPROGRAMASDAAPLICAO
36www.tiagodemelo.info
Em Resumo: o processo de especificao dasestruturas de dados e regras de negcio para adefiniodeumsistemadeinformao
Programa=estruturadedados+algoritmos
SistemadeInformao=basededados+operaes
ModelagemdeDados
37www.tiagodemelo.info
ModelodeEntidadeeRelacionamento
BancodeDados
38www.tiagodemelo.info
entidade
relacionamento
atributo
ModeloEntidadeRelacionamentoMER proporcionaumavisolgicadealtonveldosdados umadescrioabstratadeumaporodomundoreal todososdadossovisualizadoscomofatosespecficossobreentidades,
relacionamentoseatributos atravsdoMER,podemosterumafotografiadosistema asentidades,relacionamentoseatributosdescrevemasregrasdenegcioda
empresa
39www.tiagodemelo.info
EntidadeFraca
Entidade
Relacionamento
Atributo
AtributoChave
AtributoMultivalorado
RelacionamentoIdentificador
ModeloEntidadeRelacionamentoConvenes
40www.tiagodemelo.info
AtributoComposto...
AtributoDerivado
E2E1 R ParticipaototaldeE2emR
E2E1 R Cardinalidade1:NparaE1:E2emR
ER Constraint(min,max)deEemR(min,max)
1 N
Ex:AgnciaeContaCorrente
ModeloEntidadeRelacionamentoConvenes
41www.tiagodemelo.info
DEPARTAMENTOFUNCIONRIO
TRABALHA
SUPERVISIONA
SUPERVISIONADOSUPERVISOR
N1
DEPENDENTES
DEPENDENTE
GERENCIA
TRABALHANO
PROJETO
TRABALHANON
N
N
N
N
1 1
1
1
1
Nome
NomeNumero
Localizao
Horas
ParentescoSexo
Aniv
Data_Inicio
NomeNumeroLocalizaes
Nome Sexo
Primeiroultimo
SalarioCPF
DiagramaERdoBancodeumaEmpresa
42www.tiagodemelo.info
cliente
nome
codigo
endereco
filme
nomecodigo
fita codigo
possui
1qtdefitas
funcionario
nomecodigo endereco
N
N
aluguel
N
dtaluguel
dtprevret dtretorno
Valorprevisto
multa
salario
supervisor
N
N1
ator
codigo
nome
possuiNN
principal
genero
genero
codigo descr
preco
condicao
Statuscliente
possui
N
1
codigo descr Valorpago
N
1
ModeloEntidadeRelacionamento
43www.tiagodemelo.info
cliente
nome
codigo
endereco
filme
nomecodigo
fita codigo
possui
1,N
qtdefitas
funcionario
nomecodigo endereco
1,N
1,N
aluguel
1,N
dtaluguel
dtprevret dtretorno
Valorprevisto
multa
salario
supervisor
1,1
1,14,N
ator
codigo
nome
possui
1,N
2,N
principal
genero
genero
codigo descr
preco
condicao
Statuscliente
possui
1,1
0,N
codigo descr Valorpago
1,1
0,N
ModeloEntidadeRelacionamento
44www.tiagodemelo.info
ComponentesdoMER
Entidade
qualquercoisapelaqualdesejamosguardarinformao
conjuntodeobjetosindividuaischamadosinstncias
umainstnciaumasimplesocorrnciadeumaentidade
cadainstnciarepresentaumconjuntodefatossobreaentidade
umainstnciadeveterumaidentidadedistintadetodasasoutras
45www.tiagodemelo.info
EntidadesDependenteseIndependentes
Dependentes entidadesquedependemdeoutrasparasuaexistncia(dependnciaporexistncia)
entidadesquedependemdeoutrasparasuaidentificao(dependnciaporidentificao)
Independentes entidadesquenodependemdeoutrasparasuaexistnciaeidentificao
46www.tiagodemelo.info
Entidadedependente
Entidadeindependente
funcionario
nomecodigo endereco
1salario
supervisor
N1
dependente
nomecodigo
Ntem
departamento
nomecodigo
1
trabalha
N
EntidadesDependenteseIndependentes
47www.tiagodemelo.info
ComponentesdoMER
Atributo caractersticasparticularesdoconjuntodeentidades osfatosoupropriedadesdeumaentidadesochamadosde
atributos cadaatributodeumaentidaderepresentaumainformao
sobreessaentidade
Relacionamento relacionamentorepresentaumlinkouassociaoentre
entidades
48www.tiagodemelo.info
Relacionamentos:IdentificadoresenoIdentificadores
Identificadores oconceitodeentidadedependenteeindependentereforado
pelotipoderelacionamento quandosequerqueumaentidadesetornedependente,criase
umrelacionamentoidentificador
NoIdentificadores tambmconectaentidademeefilha,pormnocapazde
identificardeformanica,instnciasnaentidadefilha
49www.tiagodemelo.info
Entidadedependente
Entidadeindependente
funcionario
nomecodigo endereco
1salario
supervisor
N1
dependente
nomecodigo
Ntem
departamento
nomecodigo
1
trabalha
N
identificador
Noidentificador
possuide compostode
trabalhano
Papeldorelacionamento
Relacionamentos:IdentificadoresenoIdentificadores
50www.tiagodemelo.info
funcionario
nomecodigo endereco
salario
supervisor
N1
RelacionamentosRecursivos
situaoemqueumaentidademeefilhaaomesmotempo
51www.tiagodemelo.info
Relacionamentos:CardinalidadeeParticipao
apropriedadedorelacionamentoquedefineexatamentequantasinstnciasaparecemnaentidadefilhaparacadainstnciacorrespondentenaentidademe(cardinalidade)ecomosuaparticipao(obrigatoriedade)
cardinalidade:umoumuitos obrigatoriedade:total(obrigatria)ouparcial(opcional)
E2E11 1
E2E1 R1 N
E2E1 RN N
E2E11 1
E2E1
E2E1
totalparcial
R
R
R
1 NR
N NR
52www.tiagodemelo.info
Herana:GeneralizaoeEspecializao
aformadeagruparumconjuntodeentidadesquecompartilhamcaractersticascomuns.Restries: d:mutuamenteexclusivoquandoumainstnciadaentidade
generalizaospodeestaremumaentidadedeespecializao
o:sobrepostosquandoumainstnciadaentidadegeneralizaopodeestaremduasoumaisentidadedeespecializao
total:cadaentidadedageneralizaodevepertencerapelomenosumaentidadedeespecializao
parcial:cadaentidadedageneralizaopodeounopertenceraumaentidadedeespecializao
53www.tiagodemelo.info
funcionario
nomecodigo endereco
sexo
consultor terceiro
horas txhora salario
tipo
generalizao
totald
Herana:GeneralizaoeEspecializao
54www.tiagodemelo.info
funcionario
nomecodigo endereco
sexo
consultor terceiro
horas txhora salario
tipo
Parcial
Especializao
O
Herana:GeneralizaoeEspecializao
Sobreposta
55www.tiagodemelo.info
funcionario
nomecodigo endereco
sexo
consultor
horas txhora
tipo
especializao
mostraadireodorelacionamentosuperclasse/subclasse
Herana:GeneralizaoeEspecializao
56www.tiagodemelo.info
empresacandidato entrevista
entrevistador data
Agregao
Omodelomostraumrelacionamentobinrio entrevista,ondeguardainformaessobrecandidatosacargospara
empresas.Guardatambminformaessobreoentrevistadoreadata.
57www.tiagodemelo.info
entrevistador data
cargo
Agregao
Suponhaquealgumasentrevistasresultememcargosoferecidoseoutrasno.
Estemodeloestincorreto,poisexigequecadaentrevistatenhaumcargooferecido
empresacandidato entrevista
58www.tiagodemelo.info
entrevistador data
cargo
encaminha
empresacandidato entrevista
Agregao
OMERnopermiterelacionamentoentrerelacionamento
59www.tiagodemelo.info
Agregao
Omelhormodopararepresentarasituaoanteriorusandoaagregao.
Nomodeloacimanoexisteobrigatoriedadenaentrevistaparaencaminharumcandidatoaumcargo
entrevistador data
cargo
encaminha
empresacandidato entrevista
60www.tiagodemelo.info
OutrasNotaesExemplosdeDiagramasEReEREstendidos
BancodeDados
61www.tiagodemelo.info
DiagramasEER
DiagramacomNotaodeMarkowitz/Shoshani(1994)
PROJETOPESSOA ALOCADA
CHS
CHEFIASUBORDINADO CHEFE
N M
CPFNOME TELEFONES TITULO VERSO
M
N1
62www.tiagodemelo.info
Vejamosestasnotaespara:Generalizao,EspecializaoeasAssociaesUM,IdentificaoouID,eTEM
PROJETOPESSOA ALOCADA
CHS
CHEFIA
SUBORDINADO
CHEFE
N M
CPF NOME TELEFONES TITULO
M
N
1
ADMINISTRATIVO TCNICO ENGENHEIRO VERSO
VERSOESPECIALIDADE
UM UM TEM ID
DiagramasEER
QualadiferenaentreGeneralizaoeEspecializao?
63www.tiagodemelo.info
DiagramasEER
Especializao
PROJETOEMPREGADO TRABALHAN M
ESPORTISTA ENGENHEIRO
UMUM
ESPECIALIDADEFILIADO
EQUIPE
N
M
MODALIDADE
64www.tiagodemelo.info
DiagramasEER
DiagramacomaNotaodoNavathe
DEPARTAMENTOEMPREGADO
TRABALHA
CHEFIASUBORDINADO CHEFE
GERENCIA
N 1
1 11 N
65www.tiagodemelo.info
DiagramasEER
EMPREGADO
Secretrio Tcnico Engenheiro
d
Gerente
Gerente
Gerencia
d
Assalariado EmpregadoHonorrio
GENERALIZAO
ESPECIALIZAOGENERALIZAO?????
SuporteRedes SuporteBD
o
66www.tiagodemelo.info
Vamosanalisarestediagrama!!
OqueesteDERdescreve? QualoproblemadesteDER?
DISCIPLINA
PRREQUISITO
1 N
CURSO
N
67www.tiagodemelo.info
MetodologiaparaprojetodeBancodeDados
requerimentoseanliseprojetoconceitualdobancodedadosescolhadeumSGBD
mapeamentodomodelodedadosprojetofsicodobancodedados
implementaoeconfiguraodoBD
68www.tiagodemelo.info
MetodologiaparaprojetodeBancodeDados
RequerimentoseAnlise descobrirosatoresqueirointeragircomosistema atorpodeserumusurio,umsistema,etc. soosatoresqueirolistarasregrasdenegciodosistema atorespodemserinternosouexternos peaacadaatorparaterumaexplosodeidias
(requerimentos)efazerumalistadetodososdocumentos,casoexista
nestemomentovoctambmdescobrealgunsrequerimentosqueoclientenolistou,listeos
69www.tiagodemelo.info
MetodologiaparaprojetodeBancodeDados
ProjetoConceitualdoBancodeDadosMER
OMERdoSistemasermontadoapartirdecadarequerimentodeumator
Paracadarequerimento: IncluirnoMERobjetosparaatendersomenteaesterequerimento QuandooMERestiversendomontado,possvelquevocdescubrarequerimentosqueoatornolistou,listeos.IstotambmdevegerarnovosobjetosnoMER
Senecessrio,definaentidadesdeapoio:paraacumulados,paraganhodeperformanceemconsultas,etc
70www.tiagodemelo.info
MetodologiaparaprojetodeBancodeDados
EscolhadeumSGBD
Custodeaquisiodosoftware:web,interface,linguagemdeprogramao,tiposdedadossuportados,etc
Custodemanuteno Custodeaquisiodehardware CriaodoBDecustodeconverso Custopersonalizado Custodetreinamento Custodeoperao
71www.tiagodemelo.info
MetodologiaparaprojetodeBancodeDados
MapeamentodoModelodeDados
criaodomodelolgico:mapeamentodoprojetoconceitualparaoprojetolgico
mapeamentoindependentedosistema:nestecasoomapeamentonoconsideranehumacaractersticasespecficasdoSGBD
mapeamentodependentedosistema:nestecasoomapeamentolevaemconsideraoascaractersticasdoSGBD
72www.tiagodemelo.info
MetodologiaparaprojetodeBancodeDados
ProjetoFsicodoBancodeDados
temporesposta espaodeutilizao transaes
73www.tiagodemelo.info
MetodologiaparaprojetodeBancodeDados
ImplementaoeConfiguraodoBancodeDados
Criaodosobjetosdobancodedadosatravsdescriptsoucarga:tabelas,triggers,views,etc
Criaodeusurios,definiodepermisses Configuraesdeparmetrosdobanco etc
74www.tiagodemelo.info
ATORES:cliente,funcionrioeodono
REQUERIMENTOS:
controlaracervodefilmescontrolaracervodefitasfazeralugueldefitasfazerdevoluodefitasconsultarfitasematrasoconsultarprevisodecaixacadastrodeclienteclientequerconsultarseusfilmesalugados,seusmelhoresfilmeseosmelhoresdorankclculosdemultas
EstudodeCaso:LocadoradeVdeo
75www.tiagodemelo.info
ATORES:aluno,professor,funcionrio
REQUERIMENTOS:
cadastrodealunos,professoresefuncionrioscontrolaracervodabibliotecafazeremprstimodeitensdoacervofazerreservadoacervoconsultaritensdoacervo:ttulo,palavraschave,etcconsultaritensematraso
EstudodeCaso:Biblioteca
76www.tiagodemelo.info
ListasdeExercciosModeloConceitualMER
BancodeDados
77www.tiagodemelo.info
definirSGBDsequaissoosobjetivosprincipais?identificarasprincipaisvantagensdosSGBDsexemplificandotaisvantagensquandocomparadosaossistemastradicionais
descreverosnveisdeabstraodedados
qualaimportnciadosmodelosdedadosparaaestruturadeumBD?
oquevocentendeporinstnciaeesquemadedados
qualafunodocatlogoemumBD
oquevocentendepor:abstraodedados,independnciaentredadoseprogramas,naturezaautocontida,acessoconcorrente,controledeAcesso,manutenoderestries
descrevereexemplificarosobjetosdoMER
oquevocentendeportaxadeCardinalidadeeParticipao
definireexemplificarentidadesfracasefortesdefinireexemplificarrelacionamentosidentificadoresenoidentificadores
ModeloConceitual:ListadeExerccioL1
78www.tiagodemelo.info
ExercciosbsicosdeMER
1. VendadeProdutos
Umafirmavendeprodutosdelimpeza,edesejamelhorcontrolarosprodutosquevende,seusclienteseospedidos.Cadaprodutocaracterizadoporumcdigonico,nomedoproduto,categoria(ex.detergente,saboemp,sabonete,etc),eseupreo.Acategoriaumaclassificaocriadapelaprpriafirma.Afirmapossuiinformaessobretodososseusclientes.Cadaclienteidentificadoporumcdigonico(internofirma),onomedocliente,endereo(rua,nro,sala,cidade,cep,UF),telefone,statusdocliente(bom,mdio,ruim),eoseulimitedecrdito.Guardaseigualmenteainformaodospedidosfeitospelosclientes.Cadapedidopossuiumnmero(nico),eguardaseadatadeelaboraodepodido.Cadapedidopodeenvolverde1avriosprodutos,eparacadaproduto,indicaseaquantidadepedida.Atualmente,afirmausaoformulrioaseguirparacontroledepedidos,preenchidoattulodeexemplo.Asdemaisinformaessohojemantidaspelosvendedoresemlistasempapeldiversas.
ModeloConceitual:ListadeExerccioL2
79www.tiagodemelo.info
ExercciosbsicosdeMER
LimpexS.A.
ComendadorOliveira,27
CGC:7654321/09
ControleInterno
Pedido:98765
Data:27/03/2002Cdigo:C1234
Nome:JoodaSilva
End:AnitaGaribaldi,8765,PortoAlegre,RS,90345678
Telefone:(051)2345678
33Escovex678
4,002Detergentex345
10,001LimpaTudo123
TotalQtdeDescCod
17,00TOTAL
1. VendadeProdutos(cont.)
ModeloConceitual:ListadeExerccioL2
80www.tiagodemelo.info
ExercciosbsicosdeMER
1. Hollywood
Hollywoodpossuidiversosestdioscinematogrficos,cadaumcaracterizadoporumnomenico,umdono,datadefundao,eofaturamentodoanoanterior.Estesestdiosproduzemfilmesquepossuemumnomenico,onmerodemesesquelevousendofeito,oanodelanamento,onmerodo"copyright",eocustototaldofilme.Emcadafilmeatuamatores,quepossuemumnomeartsticonico,umnmerodesegurosocial(tambmnico),umanacionalidade,idade,sexo,eumconjuntodetiposdepapisparaoqualseutipofsicoaconselhvel(ex:av,mocinhajovem,galcomidadeavanada,adolescente).Estestiposdepapisnosoprdefinidos,constituindoumalistapreenchidaacritriodecadaator.Emcadafilmeondeatua,umatorganhaumcach,edesempenhaumpersonagemquepossuiumnome.Estdiospodemexistirmesmoqueaindanotiveremproduzidoumfilme,masssoconsideradosatoresquejatuaramempelomenosumfilme.
ModeloConceitual:ListadeExerccioL2
81www.tiagodemelo.info
ExercciosbsicosdeMER
1. Biblioteca
Oacervodeumabibliotecacompostoporexemplaresdelivros.Cadalivrocaracterizadoporumoumaisautores,umttulo,umaeditora,localdeedio,umcdigoISBNeumconjuntodepalavraschave.Abibliotecapossuipelomenosumexemplardecadalivro,numeradosseqencialmente(exemplares1,2,3,etc).
Osassociadosdabibliotecapodemretirarexemplaresdoslivros.Cadaassociadopodeteremprestadosnomximotrsexemplares.Paracadaemprstimo,registradaadataemqueestefoirealizado.Cadaassociadopossuiumcdigo,nomeeendereo.
Variao1:Abibliotecadesejamanterregistrosomentedosemprstimoscorrentes(ouseja,aindanodevolvidos).
Variao2:Abibliotecadesejamantertodoohistricodeemprstimos.
ModeloConceitual:ListadeExerccioL2
82www.tiagodemelo.info
ExercciosavanadosdeMER
1. Aeroclube
Numaeroclube,estoinscritospilotos,instrutoresealunosdepilotagem.Todosscios(inscritos)soidentificadospelonmerodematrcula,ecaracterizadospornome,endereoeidade.Ospilotospossuemumnmerodebrev(nico).Osinstrutoressopilotoscomformaoadicionaldeinstrutor,edeveserregistradoonomedocurso,adatadeobtenododiploma,bemcomoainstituio.
Paraosalunosdepilotagem,guardaseoregistrosdetodassuassadasparacontabilizaodehorasparaobtenodobrev.Paracadasadaregistraseadata,instrutor,horadesadadedechegada,bemcomooparecerdoinstrutorsobreovo.Aescolasministracursosbsicos,eportantonohprofessoresquesoalunosdecursosavanados.Paraemissodobrev,necessrioqueoalunocomproveteronmerodehorasmnimodevo,bemcomoapresenteospareceresdosinstrutoressobreashabilidadesdesenvolvidasacadaaulaprtica.
ModeloConceitual:ListadeExerccioL3
83www.tiagodemelo.info
ExercciosavanadosdeMER
1. Receitas
Umaempresadesejainformatizaroacervodereceitasqueelainventa,ecomercializasobaformadelivros.Estoenvolvidosnaelaboraodasreceitasedoslivrososcozinheiros,osdegustadores(quecontrolamaqualidadedasreceitas),eoseditoresdoslivros.Todasestaspessoassoempregadosdaempresa,esocaracterizadosporumRG,nome,datadeingressonafirma,esalriorecebido.
Cadareceitatemcdigonico,umnome,foiinventadaporumcozinheironumadadadata,epertenceaumacategoria.Podemexistirdiferentesreceitascomomesmonome,masummesmocozinheironoelaboraduasreceitascomomesmonome.Umacategoriaextradadeumalistadecategoriasfixaselaboradapelaempresa(ex:carne,ave,bolo,torta,sopa,etc).normadaempresanopermitiraelaboraodereceitasquenopertenamacategoriasregistradaspelafirma,sendopossvelnoexistiremreceitasparacategoriasrecmcriadas.
Diversosingredientes(ex:acar,farinha,leite)sousadosparaelaborarumareceita,cadaumdelesusadonumacertaquantidade(ex:2)enumacertamedida(ex:colherdecha,xcara,ml).Amedidapodeseropcionalparacertosingredientes(ex:ovo).Umareceitapossuitambmumadescriodeseumododepreparao,eonmerodeporesquerende.
ModeloConceitual:ListadeExerccioL3
84www.tiagodemelo.info
ExercciosavanadosdeMER
1. Receitas(cont.)
Cadaingredientepossuiumnomenicoeumadescrio,particularmentetilparaingredientesexticostaiscomoblachan,kiriouumeboshi.
Oscozinheirosrenomadospodem,paraefeitodepublicidadedoslivros,fornecerumnomefantasia,bemcomoumalistaderestaurantesimportantesnosquaisjtrabalhou.Estalistafornecidapelocozinheironomomentodesuacontratao,sendoquenenhumcozinheiroinformla.Todocozinheirodeveproduzirumcertonmerodereceitasporms,sendoqueoscozinheirosrecmcontratadostmumprazodeat45diasparaentregarsuasprimeirasreceitas.
Receitaspodemsertestadaspordegustadores.Cadatesteenvolveumdegustador,executadonumadata,eenvolveaatribuiodeumanota.Podemexistirreceitassemteste,mastododegustadorcontratadopelafirmajexecutoupelomenosumteste.
Aempresaeditalivrosdereceitas,nosquais,obviamente,constamdiversasreceitas.Essasreceitaspodemounoserinditas,ouseja,jteremsidopublicadasemoutroslivros.Almdesuasreceitas,cadalivrocaracterizadoporumttulonico,umcdigoISBN(tambmnico),epeloeditordolivro.
ModeloConceitual:ListadeExerccioL3
85www.tiagodemelo.info
ExercciosavanadosdeMER
1. ProgramadeMilhagem
AcompanhiaareaWARIGUIdesejaoferecerumprogramademilhagensatodopassageiroseuqueosolicitar.Comestasmilhas,passageirospodemusufruirdevriaspromoes,comovosgratuitos,upgradedeclasse,descontosemredesdehotiscredenciados,etc.Paraboagestodoprograma,eladesejaumsistemadeinformaoquecontroleocrditodasmilhaseaemissodecertificadosparausufrutodosbenefcios.
Umpassageiroadmitidonoprogramaquandoesteencaminhacompanhiaumasolicitaocomdadoscadastrais(nome,endereo,cpf,rg,telefone(s)decontato,profisso,rendamensaleopcionalmentetiposdecartodecrditoquejpossuiVISA,MASTERCARD,etc),juntocompelomenosumbilhetedeavioacompanhadodorespectivocartodeembarqueusado,comprovantederenda,ecpiadosdocumentosdeidentidade(RG,CPF).Acompanhiaanalisaasolicitao,esepositiva,atribuiaesteclienteumnmerodecartoSORRISO(nico),cadastrandoopassageirocomocliente.Elatambmfabricaeenviaocartoaocliente,quedeveapresentarocartoouinformarseunmeroparaobtenodecrditos.Aocadastrarocliente,jsoatribudosseu(s)primeiro(s)crdito(s)noprogramademilhagens.UmmesmopassageironopodeterdoiscartesSORRISO,eestaverificaofeitaatravsdosdocumentosdeidentificaofornecidos.
ModeloConceitual:ListadeExerccioL3
86www.tiagodemelo.info
ExercciosavanadosdeMER
1. ProgramadeMilhagem(cont.)
Assolicitaesindeferidassodescartadas,enointeressamaosistema,isto,osistemasomentegerenciaclientesdoprogramaSORRISO.
Todocrditotemumnmero,nicoentreoscrditosdeummesmocliente(isto,doisclientesdistintospodemtercrditoscomomesmonmero).Almdonmerodocrdito,devemserregistradosadatadocrdito,onmerodemilhascreditadas,eopcionalmenteasmilhasbnus,atribudassomenteempromoes.Estasinformaesservemparaemissodecorrespondnciaparainformedecrditodemilhasemilhasacumuladas,bemcomoparaemissodecertificadosdemilhagem.Todoocrditojutilizadoparaemissodecertificadodevesermarcadocomestainformao.
OprogramaSORRISOdemilhagensatualmentecreditacrditosportrstiposdeservio:vosdacompanhiaedascompanhiasassociadas,compradeprodutosemestabelecimentoscredenciados,ehospedagememhotiscredenciados.
ModeloConceitual:ListadeExerccioL3
87www.tiagodemelo.info
ExercciosavanadosdeMER
1. ProgramadeMilhagem(cont.)
Paracrditodemilhas,aWARIGUInecessitasaberocdigodovo(e.g.RG230,TR450),otrechovoadopelopassageirodaquelevo(origemedestino),aclasseutilizada,eadatadepartidadopassageiro.Todosostrechos(combinaodeorigemedestino)devemestarcadastradosnosistemajuntocomamilhagemcorrespondente,independentementedosvosqueservemotrecho(e.g.ovodePortoAlegreaSoPaulocredita900milhas).AWARIGUInoseinteressaatravsdestesistemacontrolarosvosporelaoferecidos,nemporsuascompanhiasassociadas:somenteasmilhagenscorrespondentesatrechos,eosvosrealizadosporclientesquedoorigemacrditos.Oscrditospodemseratribudosnarecepodoaeroportoporocasiodoembarque,ouposteriormente,quandooclienteenviaoscomprovantesnecessrios(passagemecartodeembarque).
Paracrditosobtidosatravsdecomprasoudehospedagem,osistemanecessitasaberdadossobreoestabelecimentoconveniado,taiscomonome,cdigodoconvnio(nico),endereoparacorrespondncia(rua,nro,complementoopcional,cidade,estado,pas,cdigopostal),percentagemdemilhassobrevalordeconsumonoestabelecimentoacertadonoconvnio.
ModeloConceitual:ListadeExerccioL3
88www.tiagodemelo.info
ExercciosavanadosdeMER
1. ProgramadeMilhagem(cont.)
Paraocrditonecessrio,almdoestabelecimento,adatadacompraouhospedagem,valorcompradooudototaldedirias,eumadescriodoconsumoefetuado(e.g.compradejia,estadiafimdesemana,compradecoleoempromoo).Paraobtenodestecrdito,oclientedeveenviaragestodoprogramaSORRISOanotafiscalcomprovandooconsumo(compraouestadia),eonmerodestaarmazenadojuntocomocrdito.
Todooms,aWARIGUIemiteavisosdecrditosparaaquelesclientescomnovoscrditosnoms.Elatambmverificaseasomadoscrditosnousadospodedarorigemaumoumaiscertificados.Emcasopositivo,oscrditossomarcadoscomousados,eoscertificadosdemilhagemsoemitidos.Cadacertificadotemumnmeronico,pessoaldeumclientedoprograma,epossuiumadatadeemissoeumadevalidade.Quandooclienteusaocertificadoparaobtenodebenefcios,oscertificadossomarcadoscomousados.
AWARIGUIdesejaguardartodasasinformaessobrecrditosecertificadosjatribudos/emitidosaseusclientes,poisdesejaanalisarcomooprogramademilhagemestfuncionando,efazermodificaesconformenecessidade.
ModeloConceitual:ListadeExerccioL3
89www.tiagodemelo.info
ExercciosavanadosdeMER
1. Eventocientfico
OCBBDomaioreventocientficoanualnoBrasilnareadebancodedados.Acadaano,suaorganizaoficaacargodealgumauniversidadebrasileira,queficaencarregadadecontrolartodososaspectoscientficoseoperacionaisdoevento.Sabendodadificuldadedestacomplexatarefa,equeocongressotematradoumnmerocadavezmaiordeinteressados,osorganizadoresdoanoquevemresolveramseantecipar,eprojetarumsistemadeinformaoqueosauxilienamelhororganizaodoevento.Osistemadevedarapoioatodooprocessodeseleodetrabalhoscientficos,submetidospelosmembrosdacomunidade.Eletambmdevenumaetapaulteriorauxiliaragestodaorganizao,mantendoinformaessobretodaaprogramaoeosparticipantesdoevento.Oeventocientficocomeacomadesignaodeumcomitdeprograma(CP),quetemcomofunoavaliarosartigoscientficossubmetidos,selecionandoosmelhores.ParacadamembrodoCP(revisor),registraseseunome(nico),ainstituio(hnomximoumrepresentanteporinstituio),suasreasdeespecialidadepararevisodostrabalhos(e.g.datawarehouse,datamining,bancosdedadosorientadosaobjetos),seuendereoeletrnico(nico),ecoordenadasparacontato(endereoregular,telefone,fax).
ModeloConceitual:ListadeExerccioL3
90www.tiagodemelo.info
ExercciosavanadosdeMER
1. Eventocientfico(cont.)
Algunsmesesdepois,osartigoscomeamaserrecebidos,ecadaartigodevesercadastrado.Paracadaartigogerarseumcdigonico,queoidentificaraolongodetodooprocessodeavaliao.Almdisso,devemsercadastradosottulo,seusautores,ainstituiodecadaumdeseusautores,oendereoeletrnicodoprimeiroautor,easpalavraschaves.Tantoaspalavraschavesquantoasespecialidadesdosrevisoressoitensdeumalistadeassuntodivulgadajuntochamadadetrabalhos.
Encerradooprazoparasubmissodeartigos,opresidenteatribuiacadaartigo3revisores,eenviaosparaavaliao.Osavaliadorestmumprazoparallos,eatribuirumanotaaoartigo.Comoosrevisoressempreseatrasam,imperativosaberquemestcomqueartigopararevisar,parapodercobrarospareceresnapocaadequada.Osartigoscommelhoresnotassoselecionados,edevemserenviadosemailsparaoprimeiroautordosartigosselecionadosedosnoselecionadosparacomunicaodoresultado.Osautoresdosartigosaceitos,combasenoparecer,fazemmodificaeseenviamaversofinaldeseuartigo,usandoumformatoeletrnicoprdefinido.Desejasesaberquemjmandouaversofinal,equalonomedorespectivoarquivo.
ModeloConceitual:ListadeExerccioL3
91www.tiagodemelo.info
ExercciosavanadosdeMER
1. Eventocientfico(cont.)
Comeamentoospreparativosparaaorganizaodoevento.Auniversidaderealizaroeventoemsuasdependncias,ejreservouumasriedesalaseauditriosparaestefim.Cadalocalidentificadoporseunome,edescritopelasuacapacidade.Oeventocontarcomsessestcnicas(ondeseroapresentadosostrabalhosaceitos),bemcomopalestrasconvidadaseminicursos,ministradosporcientistasderenomenacionaleinternacional.Estes3tiposdeatividadescompemoprogramadaconferncia.Cadaatividadeocorreemumlocalemumadadadata/hora,sendoquealgumasatividadespodemocorreremparalelo.Obviamente,nohduasatividadesiniciandonomesmolocalaomesmotempo.Paramontaroprograma,osorganizadoresatribuemasatividadesaoslocais,determinandohorriodeinicioefim,quaisrecursosdevemestardisponveis(ex.retroprojetor,canho,computador),equemoresponsvelpelacoordenaodaatividade.Osrecursoseoresponsvelpodemserinformadosposteriormentedefiniodaatividade.
Cadasessotcnicatemumnomenico(datawarehouseI,KDDII),edescritapelosartigosqueseronelaapresentados,eemqueordem(1,2,etc).Cadaartigoapresentadoumanicavez.
ModeloConceitual:ListadeExerccioL3
92www.tiagodemelo.info
ExercciosavanadosdeMER
1. Eventocientfico(cont.)
Aspalestraseminicursospossuemumttulo,umautor,umainstituio,ealmdestasinformaestcnicas,devemserinformados,quandosabido,adata/horadechegadaepartida,easinformaesdosvosdeidaevolta(companhia,cdigodecadavo),jque,porserempessoasmaisimportantes,debomtombuscloselevlosaoaeroporto.Adiferenaentreumminicursoeumapalestraconvidadaquenaprimeiraosparticipantesdevemseinscreverepagarumataxa.Ataxadecadacursodevesermantidajuntodescriodocurso,bemcomoonmerodevagasdisponveiseaspessoasinscritas.Asinformaessobreaprogramaosomuitoimportantes,poisapartirdelasquesodivulgadasasatividadesdoevento(e.g.pginaweb,livreto,cartazes,etc).
Porfim,aorganizaoquerpodercontrolarosinscritos.Cadaparticipantepossuiumnome,instituio(opcional),endereo,telefone,email,categoria(scio,noscio,estudante,estudantenoscio,jquehdescontosparasciosdaSBC).Pelomenosumautordecadaartigoselecionadodeveseinscrevernoeventoatumadadaocasio(divulgadaaosautores),condionecessriadepublicaodoartigonosanaisdaconferncia.Osistemadevepermitiroregistrodainscriodeumautorassociadaao(s)seu(s)respectivo(s)artigo(s).
ModeloConceitual:ListadeExerccioL3
93www.tiagodemelo.info
ExercciosavanadosdeMER
1. Eventocientfico(cont.)
Tambm,porquesocobradoseporquesodistribudasapostilas,desejasesaberemqual(quais)minicursosumparticipanteeventualmenteseinscreveu.Comestasinformaessogeradososcrachs,definidoonmerodecpiasdasapostilasdecadaminiscursobemcomoaquemdevemserdistribudas,almdoscertificadosdeparticipaonoeventoenosminicursos
ModeloConceitual:ListadeExerccioL3
94www.tiagodemelo.info
ExercciosavanadosdeMER
1. Eletrotcnica
Umaeletrotcnicatemenfrentadoproblemasparaatenderademandadeserviodeconsertosquetemrecebido.Osclientesreclamamdeatrasosfreqentesnaentregaprevistadosconsertos,eestimasequeestadevidaamprevisodosrecursoshumanosemateriaispararealizaodeconsertos.
Cadavezqueumclientetrazumaparelhoparaconsertarabertaumaordemdeservio(umaporaparelho).Estaordemdeserviodizrespeitoaumcliente,quedeixaseunome,endereo,eumoumaisnmerosdetelefoneparacontato.Ummesmoclientepodeteroutrasordensdeserviosuasemandamento,eaempresamantmumcadastrodetodososseusclientes.Naordemdeservioconstamaindaadataderecebimentodoaparelho,amarcaenmerodesriedoaparelho,adescriododefeito,eadatadeprevisodaentregadoaparelhoaocliente,eadatanaqualfoiefetivamenteretirado.
ModeloConceitual:ListadeExerccioL3
95www.tiagodemelo.info
ExercciosavanadosdeMER
1. Eletrotcnica(cont.)
Pararesolveroproblemadosatrasos,afirmaoptoupordesignarumtcnicoexperientecomogerente.Estegerente,iniciaodiaexaminandotodasasordensdeservionovas,designandoentoumconjuntodetcnicos,eparacadatcnicodesignadoaesteconserto,asferramentas/aparelhosdetestenecessriosparaqueestedetecteodefeitoe/outeste(apartedo)oconsertorealizado(semprehpelomenosumaparelho).Aprevisodosrecursosmateriaistambmimportantepoisonmerodeferramentas/aparelhosdetestelimitado.Cadatcnicopodeestarassociadoavriasordensdeservio.Cadaaparelhodetestepossuiumnmerodesrienico,ecaracterizadoporumadescrio.Ostcnicossocaracterizadosporseunome,endereo,eventualmentenmero(s)detelefoneparacontato,econtratodetrabalho(nmeronico).
ModeloConceitual:ListadeExerccioL3
96www.tiagodemelo.info
ExercciosavanadosdeMER
1. Cinema
Umcinemapossuivriassalasdecinema,asquaisexibemfilmesemhorriosdiversos.Ocinemateminteresseemsaberquaisfilmesestoatualmenteemcartaz,emquesalaseemquehorrios.
Cadasalapossuiumnome(nico)ecapacidade(nmerodelugares).Osfilmessocaracterizadosporseunomeemportugus,nomenalnguaoriginal(seestrangeiro),diretor,anodelanamento,tipo,esinopse.Noexistemdoisfilmescomomesmonome(emportugus)eanodelanamento.Eventualmente,podemexistirparaofilmepremiaesouindicaesparapremiao(e.g.PalmadeOuroem1987,Oscardemelhoratrizem89,indicadoparamelhorfilmeestrangeiroem1996),eestainformaousadaparadivulgaodosfilmes.Umaexibiodefilmeocorreemumadadasalaehorrio.Ummesmofilmepodeserexibidonamesmasala,emvrioshorrios.Parafilmesmuitoprocurados,ocinemapodeterexibiosimultneasemvriassalas(emhorriossimultneosouno).Filmesdiferentespodempassarnamesmasala,desdequeobviamentenonomesmohorrio.
ModeloConceitual:ListadeExerccioL3
97www.tiagodemelo.info
ExercciosavanadosdeMER
1. Cinema(cont.)
Ocinemastrabalhacomhorriosfixosdefilmes,osquaisatualmenteso:16:00,17:00,18:00,19:30,20:00,22:00,24:00.Acadaumdesteshorriosestvinculadoumconjuntodefuncionriosresponsveispelobomandamentodasatividadesdocinemanaquelehorrio,equedesempenhamumafuno(ex:caixa,balas,lanterninha,bilheteiro).Cadafuncionriocaracterizadopelonmerodacarteiradatrabalho(nico),nome,datadeadmissoesalrio.Paramaiorsatisfaodosfuncionrios,existeumrodziodasfunesconformeohorrio(ex:ummesmofuncionriopodesercaixanohorriodas16:00,ebaleironohorriodas21:00).Todohorriotempelomenostrsfuncionriosalocados
ModeloConceitual:ListadeExerccioL3
98www.tiagodemelo.info
ExercciosavanadosdeMER
1. Cinema(variao)
Paraaumentararendadocinema,emcadasessosoexibidaspropagandas.Umapropagandaidentificadaporumcdigo,ecaracterizadaporumnome,agncia,efaixaetriaapropriada,epodeserexibidaemvriassesses.Cadasessopossuisuaprpriaprogramaodepropagandas(e.g.asessodoTitanicdas14:00horasnasala1podeounoteromesmoconjuntodepropagandasqueasessodoTitanicemoutrohorrioe/ousala).
ModeloConceitual:ListadeExerccioL3
99www.tiagodemelo.info
ExercciosavanadosdeMER
1. Academia
Umaacademiaoferecevriasopesdeprticadeesporteaseusclientes.Paraestefim,elacontacomumaequipedeprofessores,ecomumainfraestruturadelocaisadequadosparaprticasesportivasdiversas.
OsclientessocaracterizadospeloRG,nome,endereo,eumoumaistelefonesdecontato.Paraaquelesclientesquefreqentam(jfreqentaram)aulasoumusculao,mantidoohistricodoscontratosjfirmadosporestesalunos.Paracadacontrato(novoourenovao),soregistradosadatadeinciodocontrato(dia/ms/ano),datadefim(dia/ms/ano),valortotaldocontrato,eformadepagamento(e.g.prdatado,vista,parceladoem3vezes,etc).Ummesmoalunonopossuidoiscontratosqueiniciamnamesmadata.Asformasdepagamentosoestabelecidasemfunodomomentoeconmicoedoaluno,nosendopossvelprdefinilas.Osistemanoresponsvelpelamanutenodocontroledopagamentodasmensalidadesdocontrato.
CadaprofessorpossuiumRGeumnmerodecarteiradetrabalho(ambossonicos),ecaracterizadoporumnome,endereo,umoumaistelefonesdecontato,esalrio.Cadaprofessorestaptoaorientarpelomenosumamodalidadeesportiva(e.g.vlei,basquete,aerbica,musculao,etc).
ModeloConceitual:ListadeExerccioL3
100www.tiagodemelo.info
ExercciosavanadosdeMER
1. Academia(cont.)
Eventualmenteoprofessortemumaqualificaoespecficaparaaorientaodeumadadamodalidade(e.g.mestradoemvoleibolpelaESEF,especializaoemcapoeiracomMestreDad,etc),podendopossuirmaisdeuma(e.g.mestradoemvoleibolpelaESEFeespecializaoemvoleibolparaterceiraidade).Aosercontratado,oprofessorinformatodasasmodalidadesquepodeorientar,esuaqualificao(ouqualificaes)paracadaumadelas,casoexista(m).Umamesmamodalidadepodeserorientadaporumoumaisvriosprofessores,oumesmopornenhum(porexemplo,asaulasdeaerbicasoorientadasporumprofessor,maspaddlepodeserpraticadoporclientesdaacademiaquesimplesmentealugamascanchas).
Aacademiaofereceumelencodemodalidadesesportivas,deacordocomainfraestruturaexistente.Aqualquermomento,aacademiaquerpodersaberquaismodalidadesesportivasoferece,quaisprofessorespodematuaremquaismodalidadeesportivas,equaisaulasestoprevistasparaumamesmamodalidade(eventualmente,comseusrespectivosprofessores).
ModeloConceitual:ListadeExerccioL3
101www.tiagodemelo.info
ExercciosavanadosdeMER
1. Academia(cont.)
Paraaprticadecadamodalidade,aacademiaofereceespaosadequados,naformadesalasoucanchas.Cadaespaoidentificadoporcdigo,ecaracterizadopeloandarnoqualseencontra(e.g.trreo,primeiro,subsolo)eeventualmenteumnmerodesala.Ascanchaspodemserlocadaspelosclientesoupelosprofessores,numadatadataehorrio.Osistemaresponsvelapenaspormanterasreservasjfeitas(enoasdisponibilidadesfuturas).Cadaaularealizadaemumadadasala,referenteaumamodalidade,eorientadaporumprofessorhabilitadoparaaquelamodalidade.Afreqnciadosalunosnasaulaslivre(i.e.nonecessitadeinscrioemdeterminadaaula).Cadaaulatemumhorriodeincioedurao.
Ascanchaspodemserlocadaspelosclientesoupelosprofessores,numadadadataehorrio.Asaulassorealizadasemumadadasala,eorientadasporumprofessoremumamodalidadenaqualeleatua.Cadaaulatemumhorriodeincio,durao,eeventualmentelimitedealunos
ModeloConceitual:ListadeExerccioL3
102www.tiagodemelo.info
ModeloConceitual:ListadeExerccioL4Oobjetivoprojetarumsistemadereservasparaumacompanhiadeaviao.Osistemacontar
comumbancodedadoscentral,queseracessadoporaplicaesclientes,rodandotantodentrodaprpriacompanhia,quantoforadela.Atransaocentraldosistemaareserva.Umareservaidentificadaporumcdigogeradopelosistemaemcomputador.Areservafeitaparaumnicopassageiro,doqualseconheceapenasonome.Areservacompreendeumconjuntodetrechosdevos,queaconteceroemdeterminadadataehora.Paracadatrecho,areservafeitaemumaclasse(econmica,executiva,etc.).Umvoidentificadoporumcdigoepossuiumaorigemeumdestino.Porexemplo,ovo595saidePortoAlegre,comdestinoaSoPaulo.Umvocompostodevriostrechos,correspondendosescalasintermediriasdovo.Porexemplo,ovo595compostodedoistrechos,umdePortoAlegreaLondrina,ooutrodeLondrinaaSoPaulo.Cabesalientarquehcidadesquesoservidasporvriosaeroportos.Porisso,importanteinformaraopassageiroquefazareserva,qualoaeroportonoqualovopassa.svezesosclientes,aofazerareserva,desejamsaberqualotipodeaeronavequeserutilizadaemdeterminadotrechodovo.Algunspoucosvos,principalmenteinternacionais,tmtrocadeaeronaveemdeterminadasescalas.Nemtodososvosoperamemtodososdiasdasemana.Inclusive,certosvostmpequenasmudanasdehorrioemcertosdiasdasemana.Cadareservapossuiumprazodevalidade.Casoosbilhetesnotenhamsidoemitidos,atesgotarseoprazodareserva,amesmacancelada.Reservaspodemserprorrogadas.Comoo"checkin"detodososvosestinformatizado,acompanhiapossibilitaareservadeassentoparaopassageiro.Reservasdeassentopodemserfeitascomat6mesesdeantecedncia.Almdeefetivarreservas,osistemadeveservirparavriostiposdeconsultasqueosclientespodemquererfazer:a)possibilidadesdeviagemdeumacidadeoudeumaeroportoparaooutro;b)omesmo,masrestritoadeterminadosdiasdasemana;c)horriosdechegadaoudesadaemdeterminadosvos;d)disponibilidadedevagasemumtrechodevo;e)disponibilidadededeterminadosassentosemumtrechodevo.
Reservadepassagensareas
103www.tiagodemelo.info
ModeloConceitual:ListadeExerccioL4
Umapequenalocadoradevdeopossuiaoredorde2.000fitasdevdeo,cujoemprstimodevesercontrolado.Cadafitapossuiumnmerodeidentificao.Paracadafilme,necessriosaberseuttuloesuacategoria(comdia,drama,aventura,...).Cadafilmerecebeumidentificadorprprio.Paracadafitacontroladoquefilmeelacontm.Paracadafilmehpelomenosumafita,ecadafitacontmsomenteumfilme.Algunspoucosfilmesnecessitamduasfitas.Osclientespodemdesejarencontrarosfilmesestreladosporseuatorpredileto.Porisso,necessriomanterainformaodosatoresqueestrelamemcadafilme.Nemtodofilmepossuiestrelas.Paracadaatorosclientessvezesdesejamsaberoseunomereal,bemcomoadatadenascimento.Alocadorapossuimuitosclientescadastrados.Somenteclientescadastradospodemalugarfitas.Paracadaclientenecessriosaberoseuprenomeeoseusobrenome,oseutelefoneeoseuendereo.Almdisso,cadaclienterecebeumnmerodeassociado.Finalmente,desejamossaberquefitascadaclienteretmnumdadoinstante.
VdeoLocadora
104www.tiagodemelo.info
ModeloRELACIONAL
BancodeDados
105www.tiagodemelo.info
representaDADOSeRELACIONAMENTOSporumconjuntodeTabelas
omodelorelacionalutilizaoconceitoderelaesoutabelasnolugardearquivos.
Ascolunasdeumatabelasochamadasdeatributosesuaslinhasdetuplas.AimportnciadomodelorelacionalemnossocursodeveseaofatodeseromodelosobreoqualbaseadaamaioriadosSGBDscomerciaisdisponveishojeemdia(MySQL,FireBirdePostgreSQL,porexemplo)
atributos
tuplas
relao
ModeloRelacional
106www.tiagodemelo.info
ProjetodeBancodeDados Oobjetivobsicodeumprojetodebancodedadospossibilitaraousurioobterainformaoexataemumlimiteaceitveldetempo,demaneiraaexecutarsuatarefadentrodaorganizao.(TeoreyeFry)
Oobjetivodeumprojetodebancodedadosrelacionalgerarumconjuntodeesquemasrelacionais,quenospermitaguardarinformaessemredundnciadesnecessria,apesardenospermitirrecuperarainformaofacilmente.(KortheSilberschatz)
107www.tiagodemelo.info
Perigospotenciaisdeprojetos Repetiodeinformao
Informaesrepetidasconsomemespaodearmazenamentoedificultamaatualizao.
Incapacidadederepresentarpartedainformao.Porvezestemsequeincluirvaloresnulos.
Perdadeinformao. Projetosmalelaboradossugeremadecomposiodeesquemasrelacionaiscommuitosatributos.
108www.tiagodemelo.info
ModeloRelacional OModeloRelacionalSimplesesuaestruturaUniformebaseadaem
conceitosdaTeoriadosConjuntos.
Asimplicidadedomodelorelacionalfazcomquearepresentaodomundorealatravsdeseusconceitossejadecertaformaineficienteoqueocasionaperdassemnticasconsiderveis
OMER,aocontrrio,utilizaconceitosquepermitemarepresentaomaisfieldosobjetosdomundorealedosrelacionamentosentreeles
OModeloRelacionaltemsidoimplementadonosvriosSGBDstendocomoLDD/LMDalinguagemSQL.
OMERhojeaferramentamaisusadaemprojetosdebancodedados.DizemosqueoMERummodelodonvelconceitual,poispossuiumfortepodersemntico,capazdecapturarconceitosdomundorealcomummnimodeperdassemnticas,facilitandooseuentendimento.
Omodelorelacional,poroutrolado,ummodelodonvellgicoporqueutilizadopararepresentaoemcomputadordeconceitosdomundoreal.
109www.tiagodemelo.info
ModeloRelacional
Codd,E.F.
ODr.Coddpropsomodelorelacionaldesistemasdebancosdedadosem1970.
EleabaseparaoRDBMS(relationaldatabasemanagementsystem).
Omodelorelacionalconsistenosseguintesitens: Conjuntodeobjetosourelaes Conjuntodeoperadoresparaagirsobreasrelaes Integridadededadosparaprecisoeconsistncia
Arelationalmodelofdataforlargeshareddatabanks.CommunicationsoftheACM,13(6):37787,June1970
110www.tiagodemelo.info
ModeloRelacional
Objetivos Independnciadedados
ordem indexao caminhosdeacesso
reduzirinconsistncias regrasdeprojetos(normalizao)
111www.tiagodemelo.info
ModeloRelacional:Informalumbancodedadosrelacionalumconjuntoderelaesoutabelasbidimensionais,gerenciadosporoperaesrelacionaiseregidosporrestriesdeintegridadededados
BancoBancodeDadosdeDados
EMPNOENAMEJOB DEPTNO
7839KINGPRESIDENT
10
7698BLAKEMANAGER
30
7782CLARKMANAGER
10
7566JONESMANAGER
20
NomedaTabela:NomedaTabela:EMPEMPDEPTNODNAME LOC
10ACCOUNTING NEWYORK
20RESEARCH DALLAS
30SALES CHICAGO
40OPERATIONS BOSTON
NomedaTabela:NomedaTabela:DEPTDEPT
PodeseracessadoemodificadoexecutandoinstruesSQL(StructuredQueryLanguage)
Usaumconjuntodeoperadores
ModeloRelacional
112www.tiagodemelo.info
ModeloRelacional
Relao:RepresentaoTabular
Propriedades:
cadalinharepresentaumatupla
noexisteordenamentoentreastuplas
noexistemlinhasduplicadas
orelacionamentodascolunascomosdomniosestabeleceseaprincpiodandoosnomesdosdomniosscolunas.Casoummesmodomniosejausadomaisdeumavez,onomedodomnioadicionalmentequalificadopelopapeldesempenhado
PEACOMPOSTA=PEAxPEAxQTD
composto.PEA|componente.PEA|QTD
noexisteordementreascolunas,respeitadaapropriedadeacima
113www.tiagodemelo.info
ModeloRelacional
BancodeDadosRelacional
Esquema
definiodastabelas
Instncias
conjuntodetuplasquecompesasrelaes
Paracadarelaodefinese,usandoaDDL(linguagemdedefiniodedados)
nomenico
atributos
restriesdeintegridade(chaveprimria,chaveestrangeira,valoresnulos,etc)
114www.tiagodemelo.info
ModeloRelacional
RestriesdeIntegridadedoModelorelacional
RestriesdeIntegridade(RI)queseaplicamatodomodeloquesedizconformeaomodelorelacional:
integridadedeidentidade
integridadereferencial
115www.tiagodemelo.info
ModeloRelacional
IntegridadedeIdentidade:Conceitos
chavecandidata
grupomnimodeatributostalqueacombinaodevaloresassumidaporestegrupocorrespondeanomximoumatupladarelao
propriedademnima
propriedadedeimparidade
umarelaopossuinomnimoumachavecandidata
chaveprimria
umaentreaschavescandidatas,selecionadapeloprojetistacomoaprincipalidentificaodastuplasdeumarelao
umarelaopossuiumaesomenteumachaveprimria
116www.tiagodemelo.info
ModeloRelacional
IntegridadedeIdentidade:Conceitos
chavealternativa
todachavecandidataquenoforchaveprimria
valornulo
ainserodetuplasincompletaspodeintroduzirvaloresnulosnabasededados
evitar,semprequepossvel
integridadedeidentidade
nenhumatributoqueparticipedeumachavecandidatadeumarelaopodeassumirvalornulo
ADDLutilizadadeveproveralgumtipodemecanismoparadefinirchavesprimriasecandidatas(valoresnicos),eparaespecificarquandoumatributopodeounoaceitarvaloresnulos
117www.tiagodemelo.info
ModeloRelacional
CREATETABLE
([NOTNULL]
[,[NOTNULL]]*
[,PRIMARYKEY(atr_name(s))]
[,UNIQUE(atr_name(s))]*;
CREATE[UNIQUE]INDEX
ON(atr_name(s));
118www.tiagodemelo.info
ModeloRelacional
IntegridadeReferencial:Conceitos
chaveestrangeira(externa)
umoumaisatributosdeumarelaoR2cujosvaloressonecessriosparaequivalerchaveprimriadeumarelaoR1(R1eR2nonecessariamentedistintos)
nonecessariamenteachaveestrangeiraparticipadachaveprimriadarelaoqueacontm(R2)
integridadereferencial
seumarelaoR2incluiumachaveestrangeiraFKequivalendochaveprimriaPKdeumarelaoR1,entotodovalorFKemR2deveser:
igualaovalordePKemalgumatupladeR1ou
totalmentenulo
119www.tiagodemelo.info
ModeloRelacional
DefiniodeChaveEstrangeira
polticaderejeio(DEFAULT)
aoperaosnorejeitadasenohouvertuplas(chaveestrangeira)fazendorefernciaaumadadachaveprimria
polticascompensatrias(EXPLICITAMENTEDECLARADAS)
CASCADE:propagaaalterao/remoodetuplas
SETNULL:ovalordachaveestrangeiraajustadaparavalorNULO
120www.tiagodemelo.info
ModeloRelacional
CREATETABLEdepartamento
(codINTNOTNULL,
nomechar(15)NOTNULL,
ramalCHAR(4),
PRIMARYKEY(cod));
CREATETABLEempregado
(cpfCHAR(8)NOTNULL,
nomeCHAR(60)NOTNULL,
salarioMONEY,
depINT,
gerenteCHAR(8),
PRIMARYKEY(cpf),
FOREIGNKEYdepREFERENCESdepartamento(cod),
FOREIGNKEYgerenteREFERENCESempregado(cpf));
QUALAPOLTICA?
121www.tiagodemelo.info
ModeloRelacional
CREATETABLEempregado
(cpfCHAR(8)NOTNULL,
nomeCHAR(60)NOTNULL,
salarioMONEY,
depINT,
gerenteCHAR(8),
PRIMARYKEY(cpf),
FOREIGNKEYdepREFERENCESdepartamento(cod)
ONDELETESETNULL
ONUPDATECASCADE
FOREIGNKEYgerenteREFERENCESempregado(cpf)
ONDELETESETNULL);
122www.tiagodemelo.info
MapeamentodoMERparaoRelacional
123www.tiagodemelo.info
Mapeartodososconjuntosdeentidadesregulares(quenosofracas)
ParacadaconjuntodeentidadeEnoesquemaERcriaseumarelaoRqueincluitodososatributosdeE
Casoexistaatributocomposto,incluatodososatributoselementaresquecompemoatributocomposto
EscolhaumdosatributoschavedeEcomochaveprimriaparaarelaoR
Passo1MapearConjuntosdeEntidadesRegulares
124www.tiagodemelo.info
PrimeiroPasso:Funcionrio={FNmero,FNome,Endereo,Salrio}
Departamento={DNmero,DNome}
Projeto={PNmero,PNome}
OBSERVAES:
Oatributo"Localizao"nofoirepresentadonarelao"Departamento"poisumatributomultivaloradoesertratadonopasso7.
Oconjuntodeentidade"Dependente",umconjuntodeentidadefracoesertratadonoseguinte,opasso2
Passo1MapearConjuntosdeEntidadesRegulares
125www.tiagodemelo.info
ParacadaentidadefracaFnoesquemaERcriaseumarelaoRformadaportodososatributosdeFmaisosatributosquesochavedasentidadesenvolvidasnosrelacionamentoscomF
AchavedeRachavedeFconcatenadacomaschavesdasentidadesenvolvidascomF
Passo2MapearConjuntosdeEntidadesFracas
126www.tiagodemelo.info
Passo2MapearConjuntosdeEntidadesFracas
SegundoPasso:Dependente={DNome,FNmero,DataNiver,Parentesco}
127www.tiagodemelo.info
Omapeamentodeconjuntosderelacionamentos(CR)nemsempreresultamemumanovarelao,comoocasodosconjuntosderelacionamentobinrio1:1.DeveseidentificarosconjuntosdeentidadesSeTqueparticipamdorelacionamento.
Umadasentidadespoderserescolhida.Seumaentidadeparticipardeformatotalnorelacionamento,estadeverserescolhida
Acrescentaseaentidadeescolhidaosatributosdorelacionamentoeaindaosatributoschavesdaoutraentidade
Deveseressaltarqueosatributoschavequeforamacrescentadosentidadeescolhida,soincludoscomoatributosnochavenestarelao
Passo3MapearConjuntosdeRelacionamentosBinrio1:1
128www.tiagodemelo.info
Passo3MapearConjuntosdeRelacionamentosBinrio1:1
TerceiroPasso:
Departamento={DNmero,Dnome,DataIni,FNmero}OsatributosFNmeroeDataInisoadicionadosrelao"Departamento",definidanoprimeiropasso.NotequeoatributoFnmeroadicionadocomoumatributonochavenarelao"Departamento"
129www.tiagodemelo.info
Osconjuntosderelacionamentobinrioregular(nofraco)1:Ntambmnosorepresentadoscomonovasrelaes.
PrimeiroidentificaseoconjuntodeentidadequeparticipadarelaocomcardinalidadeNqueserchamadadeSeooutroconjuntodeentidadechamadadeT.
OsatributosdoconjuntoderelacionamentosoacrescentadosnoconjuntodeentidadeS,ouseja,oconjuntodeentidadecomcardinalidadeN.
Osatributoschavedarelaoquemapeiaoconjuntodeentidadequeparticipacomcardinalidade1,representadoporT,sotambmacrescentadosnoconjuntodeentidadeScomoatributosnochave.
Passo4MapearConjuntosdeRelacionamentoBinrioRegular1:N
130www.tiagodemelo.info
Passo4MapearConjuntosdeRelacionamentoBinrioRegular1:N
Nestepassosomapeadososrelacionamentos:supervisionar,trabalharecontrolar.
131www.tiagodemelo.info
QuartoPasso:
Funcionrio={FNmero,FNome,Endereo,Salrio,SuperNmero,DNmero}
Projeto={PNmero,Pnome,DNmero}
Avaliandoorelacionamentosupervisionar,notasequeesterelacionamentonopossuiatributos,logo,apenasoatributoSuperNmerofoiadicionadoarelao"Funcionrio",definidanoprimeiropasso.
Omesmoacontececomorelacionamentotrabalhar;apenasoatributoDNumerofoiadicionadoarelao"Funcionrio".
Norelacionamentocontrolar,quetambmnopossuiatributos,foiadicionadooatributoDNumeronarelaoProjetoquejhaviasidodefinidanoprimeiropasso.
Passo4MapearConjuntosdeRelacionamentoBinrioRegular1:N
132www.tiagodemelo.info
ParacadarelacionamentobinrioN:Ncriaseumanovarelao.
Osatributosdarelaosoosatributosdoconjuntoderelacionamentojuntamentecomosatributoschavedasrelaesquemapeiamosconjuntosdeentidadesenvolvidas.
Achavedarelaoaconcatenaodosatributoschavedasrelaesquemapeiamosconjuntosdeentidadesenvolvidos.
Passo5MapearRelacionamentoBinrioN:N
133www.tiagodemelo.info
Passo5MapearRelacionamentoBinrioM:N
QuintoPasso:Orelacionamentoparticiparqueenvolveosconjuntosdeentidades"Funcionrio"e"Projeto",avaliadonestepasso.
Criaseumanovarelao:Participar={FNmero,PNmero,horas}
134www.tiagodemelo.info
Paraconjuntosderelacionamentosnrio,n>2sempreconsiderasequepossuamcardinalidadevrios:vrios:vrios.Paracadaconjuntoderelacionamento(CR)sercriadaumanovarelaocujosatributosprpriossoosdoCR(seexistirem)ecujachaveformadapelosatributoschavedasrelaesquemapeiamosconjuntosdeentidades(CE's)envolvidos.
OsCR'sdeordemmaiorquetrssotratadosdamesmamaneiraqueosternrios.SeumapeamentocriaumarelaoparacadaCReestarelaopossui:osatributosdoCRcomoatributosprpriose,comochave,osatributosconcatenadosdecadarelaoquemapeiaosCE'senvolvidos.
Comoamodelagemutilizadaparailustrarospassosanterioresnotemrelacionamentonrio,comn>2,escolheuseumexemploparticularqueserapresentadoaseguir:
Passo6MapearConjuntosdeRelacionamentosnrio,n>2
135www.tiagodemelo.info
Passo6MapearConjuntosdeRelacionamentosnrio,n>2
Mapeamentodoconjuntoderelacionamentoternrio:Oferecer={OCod,CCod,FNum,Horrio}
136www.tiagodemelo.info
Existemduasmaneirasdemapearatributosmultivalorados.
Aprimeiramaneiranolevaseemcontaconhecimentoadicionalsobreoatributoqueestsendomapeado.Paracadaatributomultivaloradocriaseumanovarelaoquetemcomochaveosatributoschavedarelaoaqualpertenciajuntamentecomoatributomultivaloradotomadocomoumatributomonovalorado.
Asegundaformademapearatributosmultivaloradoslevaseemcontaoconhecimentoadicionalsobreoatributoqueestsendomapeado.Emalgunscasospossveldeterminaraquantidadedeocorrnciasdevaloresnosatributos.
Quandoissoaconteceeessaquantidadepequena,podeseinstanciaressaquantidadedeatributoscomomonovaloradosnamesmarelaoquemapeiaoconjuntodeentidadeouconjuntoderelacionamentoaoqualoatributomultivaloradoestassociado.
Passo7MapearAtributosMultivalorados
137www.tiagodemelo.info
Passo7MapearAtributosMultivalorados
StimoPasso:
LocalDep={DNmero,Localizao}
138www.tiagodemelo.info
Passo8MapearGeneralizao/Especializao
Existemduasmaneirasdetransformarumageneralizaoemtabelas:
1.Criaratabelaparaoconjuntodeentidadesdenvelsuperior.Paracadaconjuntodeentidadesdenvelinferior,criarumatabelaqueincluaumacolunaparacadaumdosatributosdaqueleconjuntodeentidadesmaisumacolunaparacadaatributodachaveprimriadoconjuntodeentidadesdenvelsuperior
conta
num saldo
Poupana movimento
txjuros Limchesp
conta={num,saldo}poupana={num,txjuros}movimento={num,limchesp}
139www.tiagodemelo.info
Passo8MapearGeneralizao/Especializao
2.Seageneralizaomutuamenteexclusivaetotal,isto,senenhumaentidademembrodemaisdeumconjuntodeentidadesdenvelimediatamenteinferioraoconjuntodeentidadesdenvelsuperioresetodasasentidadesdoconjuntodeentidadesdenvelsuperiorsomembrostambmdeumdosconjuntosdeentidadesdenvelinferior,ento,umaoutrarepresentaoalternativapossvel.
Paracadaconjuntodeentidadesdenvelinferior,criaseumatabelaqueincluaumacolunaparacadaumdosatributosdoconjuntodeentidadesmaisumacolunaparacadaatributodeconjuntodeentidadesdenvelsuperior
poupana={num,saldo,txjuros}movimento={num,saldo,limchesp}
conta
num saldo
Poupana movimento
txjuros Limchesp
d
140www.tiagodemelo.info
Passo9MapearAgregao
Atransformaodeagregaoemtabelabastantedireta.Considereoexemploabaixo.Atabelaparaorelacionamentoentrevistaincluiumacolunaparacadaatributodorelacionamento,umaparaachaveprimriadecandidatoeumaparaempresa.
entrevista={cod_candidato,CGC,entrevistador,data}
empresacandidato entrevistaNN
entrevistador data
cargo
encaminha
N
N
Cod_candidato CGC
encamiha={cod_candidato,CGC,cod_cargo}
Cod_cargo
141www.tiagodemelo.info
Exerccios Faaomapeamentoparaomodelorelacional
142www.tiagodemelo.info
Exerccios Faaomapeamentoparaomodelorelacional
143www.tiagodemelo.info
Exerccios Faaomapeamentoparaomodelorelacional
144www.tiagodemelo.info
Exerccios Faaomapeamentoparaomodelorelacional
145www.tiagodemelo.info
Exerccios Faaomapeamentoparaomodelorelacional
146www.tiagodemelo.info
DependnciaFuncional UmadependnciafuncionalumrelacionamentomuitosparaumentredoisconjuntosdeatributosdeumadeterminadarelaoR.
Elaumaespcieparticularmentecomumeimportantederestriodeintegridade.
147www.tiagodemelo.info
DependnciaFuncional SejamosseguintessubconjuntosdeatributosdeumesquemaT:
A=(A1,A2,...,An)eB=(B1,B2,...,Bn)
DizemosqueBdependentefuncionalmentedeumoutroatributoAcontidoemTseacadavalordeAexistirnaslinhasdarelaoT,emqueaparece,umnicovalordeB.
Notao:AB
148www.tiagodemelo.info
DependnciaFuncional Dependnciastriviaisenotriviais
Areduodoconjuntodedependnciasfuncionaisfeitoatravsdaeliminaodasdependnciastriviais.
Umadependnciatrivialsenopuderdeixardesersatisfeita.
Dependnciasnotriviaissoasmaisinteressantesparaoprojetodebancodedados,poiselassoasnicasquecorrespondemarestriesdeintegridadegenunas.
149www.tiagodemelo.info
F# CIDADE P# QDEF1 Londres P1 100F1 Londres P2 100F2 Paris P1 200F2 Paris P2 200F3 Paris P2 300F4 Londres P2 400F4 Londres P4 400F4 Londres P5 400
DependnciaFuncional Exemplodetabeladevendas
F#:chaveprimriadofornecedor Cidade:cidadedofornecedor P#:chaveprimriadoproduto QDE:quantidade
150www.tiagodemelo.info
DependnciaFuncional Exemplosdedependnciasfuncionaisvlidas:
{F#} { CIDADE } { F#, P#} { QDE } { F#, P#} { CIDADE } { F#, P#} { CIDADE, QDE } { F#, P#} { F# } { F#, P#} { F#, P#, CIDADE, QDE } { F# } { QDE } { QDE } { F# }
151www.tiagodemelo.info
DependnciaFuncional Propriedadesfuncionais SejamA,BeCsubconjuntosarbitrriosdoconjuntodeatributosdeumarelaoR,econsiderandoqueABusadaparaindicarauniodeAeB,teremosasseguintespropriedades: Reflexo:seBumsubconjuntodeA,entoA
B.
Aumento: se A B, ento AC BC.
Transitividade: se A B e B C, ento A C.
152www.tiagodemelo.info
DependnciaFuncional Autoderminao:A A.
Decomposio: se A BC, ento A B e A C.
Unio: se A B e A C, ento A BC.
Composio: se A B e C D, ento AC BD.
Teorema Geral da Unificao: se A B e C D, ento A U (C D) BD.
153www.tiagodemelo.info
DependnciaFuncional Exemplodeusodaspropriedades
ConsiderearelaoRcomosatributosA,B,C,D,E,FeasDFs:
A BC BE CDEFMostrequeaDFAD FvlidaparaRe,portanto,ummembrodofechodoconjuntodado.
154www.tiagodemelo.info
DependnciaFuncional Soluo:
1.A BC (dada)
2.A C (1,decomposio)
3.AD CD (2,aumento)
4.CD EF (dada)
5.AD EF (3e4,transitividade)
6.AD F (5,decomposio)
155www.tiagodemelo.info
Normalizao
OprocessodeNormalizao,propostoprimeiramenteporCodd,fazumasriedetestesparacertificarseumEsquemaRelacionalsatisfazaumaFormaNormal.
CadaRelaoavaliadaedecompostaemnovasRelaes,senecessrio.ProjetoRelacionalporAnlise.
Inicialmente,Coddpropstrsformasnormais.
156www.tiagodemelo.info
Normalizao
Conseqncias: Problemasdeanomaliaseinconsistnciasdiminuem. Relaessimplificadaseestruturaregular. Aumentodaintegridadedosdados. Necessidadederealizaodejunes. Eventualquedanaperformance.
157www.tiagodemelo.info
Normalizao1FormaNormal(1FN)
UmarelaoRestna1FNseesomentese,emtodovalorvlidodessarelao,cadatuplacontmexatamenteumvalorparacadaatributo.
TodoequalqueratributodevetervalorATMICOeINDIVISVEL,ouseja,nomodelorelacionalnopodehaveratributosmultivaloradosouconjuntosdeatributos.
EstaFNconsideradapartedadefiniodoModeloRelacional.
158www.tiagodemelo.info
Normalizao1FormaNormal(1FN)
1FN aslinhasdatabelasounvocas aslinhasnocontmitensrepetitivos osatributossoatmicos
159www.tiagodemelo.info
Tabela:PEDIDO(nonormalizada)NumPed DataEmis Fornecedor CGC End CodProd NomeProd Qtde Preo
3 Jan20 CasaSoftware 111111111 LapaRuaA 111 Prod1 10 R$100.00222 Prod2 44 R$150.00333 Prod3 50 R$120.00
4 Feb10 Computer 222222222 Itu49 222 Prod4 73 R$150.00333 Prod5 80 R$120.00
Tabela:PEDIDOsemitensrepetidos
NumPed DataEmis Fornecedor CGC End CodProd NomeProd QtdeProd PreoProd3 Jan20 CasaSoftware 111111111 LapaRuaA 111 Prod1 10 R$100.003 Jan20 CasaSoftware 111111111 LapaRuaA 222 Prod2 44 R$150.003 Jan20 CasaSoftware 111111111 LapaRuaA 333 Prod3 50 R$120.004 Feb10 Computer 222222222 Itu49 222 Prod4 73 R$150.004 Feb10 Computer 222222222 Itu49 333 Prod5 80 R$120.00
Normalizao1FN
160www.tiagodemelo.info
emcadatabelaeliminargruposrepetitivosgerandonovaslinhas,umaparacadaocorrnciadeitemrepetitivo,mantendoosvaloresdosdemaisitens
transformarosatributoscompostosematmicos
Processoparaobtenoda1FN
Normalizao1FN
161www.tiagodemelo.info
Tabela:PEDIDOcomAtributosAtmicos
NumPed DataEmis Fornecedor CGC Bairro Rua CodProd NomeProd QtdeProd3 Jan20 CasaSoftware 111111111 Lapa RuaA 111 Prod1 103 Jan20 CasaSoftware 111111111 Lapa RuaA 222 Prod2 443 Jan20 CasaSoftware 111111111 Lapa RuaA 333 Prod3 504 Feb10 Computer 222222222 Itu Rua49 222 Prod2 734 Feb10 Computer 222222222 Itu Rua49 333 Prod3 80
Tabela:PEDIDOsemitensrepetidos
NumPed DataEmis Fornecedor CGC End CodProd NomeProd QtdeProd PreoProd3 Jan20 CasaSoftware 111111111 LapaRuaA 111 Prod1 10 R$100.003 Jan20 CasaSoftware 111111111 LapaRuaA 222 Prod2 44 R$150.003 Jan20 CasaSoftware 111111111 LapaRuaA 333 Prod3 50 R$120.004 Feb10 Computer 222222222 ItuRua49 222 Prod2 73 R$150.004 Feb10 Computer 222222222 ItuRua49 333 Prod3 80 R$120.00
Normalizao1FN
162www.tiagodemelo.info
emcadatabelaeliminargruposrepetitivosgerandonovaslinhas,umaparacadaocorrnciadeitemrepetitivo,mantendoosvaloresdosdemaisitens
transformarosatributoscompostosematmicos
definiraschavescandidataseescolherachaveprimriadatabela(unicidadenaslinhas)
Processoparaobtenoda1FN
Normalizao1FN
163www.tiagodemelo.info
Tabela:PEDIDOcomChavePrimria:NumPed+CodProd
NumPed CodProd DataEmis Fornecedor CGC Bairro Rua NomeProd QtdeProd3 111 Jan20 CasaSoftware 111111111 Lapa RuaA Prod1 103 222 Jan20 CasaSoftware 111111111 Lapa RuaA Prod2 443 333 Jan20 CasaSoftware 111111111 Lapa RuaA Prod3 504 222 Feb10 Computer 222222222 Itu Rua49 Prod2 734 333 Feb10 Computer 222222222 Itu Rua49 Prod3 80
Normalizao1FN
164www.tiagodemelo.info
Normalizao1FN
DeveseobservarqueseumarelaoRestiverapenasna1FN(ouseja,noestejana2FN,eportantotambmnoestna3FN)temumaestruturaindesejvelporumasriederazes.
165www.tiagodemelo.info
Normalizao2FN
UmarelaoRestna2FNseesomenteseelaestem1FNetodoatributonochaveirredutivelmentedependentedachaveprimria.
166www.tiagodemelo.info
estna1FN
cadaumadascolunasnopertencenteschaveprimrianodependenteparcialdessachave
cadaatributonochavedependentedetodaachaveprimria.
adependnciaparcialdeumachavesserpossvelseestachavefordefinidacommaisdeumacoluna
dizemosqueumacolunaparcialmentedependentedachavese,paraqueseuvalorsejadeterminadononecessitamosconhecerachavecomoumtodo
SegundaFormaNormal(2FN)
Normalizao2FN
167www.tiagodemelo.info
ColunaA ColunaB ColunaC ColunaD ColunaE
CHAVE
CdependedeAeB
DdependesdeA
EdependesdeB
Tabela:nonormalizada
Normalizao2FN
168www.tiagodemelo.info
Tabela:normalizada
ColunaA ColunaB ColunaC
ColunaA ColunaD
ColunaB ColunaE
Normalizao2FN
169www.tiagodemelo.info
identificarascolunasquenoparticipamdachaveprimriadatabela
paracadaumadascolunasidentificadas,analisarseseuvalordeterminadoporparte,oupelatotalidadedachave
paraascolunasdependentesparcialmente:
criarnovastabelasondeachaveprimriaser(o)a(s)coluna(s)dachaveprimriaoriginalquedeterminouovalordacolunaanalisada
excluirdatabelaoriginalascolunasdependentesparcialmentedachave
Processoparaobtenoda2FN
Normalizao2FN
170www.tiagodemelo.info
NumPed CodProd DataEmis Fornecedor CGC Bairro Rua NomeProd QtdeProd PreoProd3 111 Jan20 CasaSoftware 111111111 Lapa RuaA Prod1 10 R$100.003 222 Jan20 CasaSoftware 111111111 Lapa RuaA Prod2 44 R$150.003 333 Jan20 CasaSoftware 111111111 Lapa RuaA Prod3 50 R$120.004 222 Feb10 Computer 222222222 Itu Rua49 Prod2 73 R$150.004 333 Feb10 Computer 222222222 Itu Rua49 Prod3 80 R$120.00
CodProd NomeProd PreoProd111 Prod1 R$100.00222 Prod2 R$150.00333 Prod3 R$120.00
Tabelana1FN:Pedido
Tabelana2FN:Pedido
Tabelana2FN:Produto
NumPed CodProd DataEmis Fornecedor CGC Bairro Rua QtdeProd3 111 Jan20 CasaSoftware 111111111 Lapa RuaA 103 222 Jan20 CasaSoftware 111111111 Lapa RuaA 443 333 Jan20 CasaSoftware 111111111 Lapa RuaA 504 222 Feb10 Computer 222222222 Itu Rua49 734 333 Feb10 Computer 222222222 Itu Rua49 80
Normalizao2FN
171www.tiagodemelo.info
Normalizao3FN
UmarelaoRestna3FNseesomenteseelaestna2FNetodoatributochavedependentedeformanotransitivadachaveprimria.
172www.tiagodemelo.info
estna2FN
nenhumacolunanopertencentechaveficadeterminadatransitivamenteporesta.
cadaatributonochavedependentenotransitivodachaveprimria.
adependnciatransitivadeumachavesserpossvelseatabelativerpelomenosduascolunasnopertencenteschave
umacolunadependetransitivamentedachaveseseuvalordeterminadopelocontedodeumacolunanochave
TerceiraFormaNormal(3FN)
Normalizao3FN
173www.tiagodemelo.info
Tabela:nonormalizada
ColunaA ColunaB ColunaC ColunaD ColunaE
AdeterminaB
AdeterminaC
AdeterminaE
CdeterminaD
Normalizao3FN
174www.tiagodemelo.info
ColunaA ColunaB ColunaC ColunaE
ColunaC ColunaD
Tabela:normalizada
Normalizao3FN
175www.tiagodemelo.info
CodProd NomeProd PreoProd111 Prod1 R$100,00222 Prod2 R$150,00333 Prod3 R$120,00
Tabelana2FN:Pedido
Fornecedor Bairro Rua111111111 CasaSoftware Lapa RuaA222222222 Computer It u Rua49
CGC
Tabelana3FN:Pedido
Tabelana3FN:Produto Tabelana3FN:Fornecedor
NumPed CodProd Dat aEm isFornecedor CGC Ba irro Rua Qt deProd3 111 20/Jan CasaSoftware 111111111 Lapa RuaA 103 222 20/Jan CasaSoftware 111111111 Lapa RuaA 443 333 20/Jan CasaSoftware 111111111 Lapa RuaA 504 222 10/Fev Computer 222222222 Itu Rua49 734 333 10/Fev Computer 222222222 Itu Rua49 80
NumPed CodProd Dat aEm is CGC Qt deProd3 111 20/Jan 111111111 103 222 20/Jan 111111111 443 333 20/Jan 111111111 504 222 10/Fev 222222222 734 333 10/Fev 222222222 80
Normalizao3FN
176www.tiagodemelo.info
Normalizao1FN(anomalias)
Matrcula Nome CodCargo NomeCargo CodProj DataFim Horas
120 Joo 1 Programador 01 17/07/95 37
120 Joo 1 Programador 08 12/01/96 12
121 Hlio 1 Programador 01 17/07/95 45
121 Hlio 1 Programador 12 21/03/96 107
270 Gabriel 2 Analista 08 12/01/96 10
270 Gabriel 2 Analista 12 21/03/96 38
273 Silva 3 Projetista 01 17/07/95 22
274 Abrao 2 Analista 12 21/03/96 31
ConsidereatabelaEmpregados,sendochaveprimriaoscamposMatrculaeCodProj.
177www.tiagodemelo.info
Normalizao1FN(anomalias)
Anomalias: Inserir:nopossvelinserirumempregadosemqueesteestejaalocadonumprojeto,neminserirumprojetosemquehajaumempregadotrabalhandonele.
Remover:sefornecessrioremoverumprojeto,asinformaesdeempregadoqueestiveremalocadosnaqueleprojetoseroperdidas.
Atualizar:seumempregadoforpromovidodecargo,teremosqueatualizarosatributosCodCargoeNomeCargoemtodasastuplasnasquaisaqueleempregadoestpresente.
178www.tiagodemelo.info
Normalizao2FN(anomalias)
Matrcula CodProj Horas120 01 37120 08 12121 01 45121 08 21121 12 107270 08 10270 12 78273 01 22274 12 31
Matrcula Nome CodCargo NomeCargo120 Joo 1 Programador121 Hlio 1 Programador270 Gabriel 2 Analista273 Silva 3 Projetista274 Abrao 2 Analista
CodProj DataFim01 17/07/9508 12/01/9612 21/03/96
EMPREGADO
PROJETOALOCAO
179www.tiagodemelo.info
Normalizao2FN(anomalias)
Anomalias: Inserir:spossvelcriarcargossehouverempregadosdesignadosparaeles.
Remover:seapagarmosumempregadoqueocupaunicamenteumcargonaempresa,perderemosainformaodocargo.
Atualizar:seumcargomudardenome,sernecessriomudartodasastabelasemqueestecargoaparece.
180www.tiagodemelo.info
Normalizao3FN(anomalias)
Matrcula Nome CodCargo120 Joo 1121 Hlio 1270 Gabriel 2273 Silva 3274 Abrao 2
CodCargo Nome1 Programador2 Analista3 Projetista
CARGO
EMPREGADO
181www.tiagodemelo.info
Passosparaoprojetodebancodedadosrelacionais1 Guiadopelobomsenso,construaumdiagramaER,agrupandoosatributosnastabelasquevorepresentarasentidadeseosrelacionamentosdoseubancodedados.
ConstruaodiagramadedependnciasfuncionaisparaastabelaspropostasnoMER(ouumnicodiagramadedependnciasfuncionaisconsiderandotodososatributosdoseubancodedados).
Elimineosatributosrepetitivos(sehouver),demodoaobterummodelodedadosna1FN.1.http://www.inf.ufsc.br/~fileto/
182www.tiagodemelo.info
Passosparaoprojetodebancodedadosrelacionais Elimineasdependnciasparciaisdachaveprimriaemsuastabelas(sehouver),obtendoumprojetona2FN.
Elimineasdependnciastransitivasnastabelas(sehouver),obtendoumesquemana3FN.
183www.tiagodemelo.info
Objetivo:
Apresentarferramentalivredebanco
dedados
FerramentadeModelagem
184www.tiagodemelo.info
DBDesigner4
Caractersticasgerais:Ferramentavisualparaprojetar,modelar,criaremanterumbancodedados.
FerramentadamesmacategoriadesoftwaresproprietrioscomoOracle'sDesigner,RationalRoseeERWin.
RodaemLinuxeWindows.LicenaGPL.Boadocumentaoonline.http://www.fabforce.net/dbdesigner4
185www.tiagodemelo.info
DBDesigner4Principal
186www.tiagodemelo.info
DBDesigner4EdiodeTabelas
187www.tiagodemelo.info
DBDesigner4EdiodeRelacionamentos
188www.tiagodemelo.info
DBDesigner4EdiodeTiposdeDados
189www.tiagodemelo.info
DBDesigner4ConexocomBancodeDados
190www.tiagodemelo.info
DBDesigner4MdulodeConsultas
191www.tiagodemelo.info
DBDesigner4MdulodeImpresso
192www.tiagodemelo.info
Objetivos:
ListarosrecursosdasinstruesSELECTSQL
ExecutarumainstruoSELECTbsica
CriandoInstruesSQLBsicas
193www.tiagodemelo.info
SeleoSeleo ProjeoProjeo
Tabela1Tabela1 Tabela2Tabela2
Tabela1Tabela1 Tabela1Tabela1JunoJuno
RecursosdasInstruesSELECTSQL
194www.tiagodemelo.info
SELECT [DISTINCT]{*,coluna[apelido],...}FROM tabela;
SELECTidentificaquecolunas.
FROMidentificaqualtabela.
InstruoSELECTBsica
195www.tiagodemelo.info
InstruesSQLnofazemdistinoentremaisculaseminsculas.
InstruesSQLpodemestaremumaoumaislinhas.
Palavraschavenopodemserabreviadasoudivididasentreaslinhas.
Normalmente,asclusulassocolocadasemlinhasseparadas.
Guiaseendentaessousadasparaaperfeioaralegibilidade.
CriandoInstruesSQL
196www.tiagodemelo.info
DEPTNODNAMELOC10ACCOUNTINGNEWYORK20RESEARCHDALLAS30SALESCHICAGO40OPERATIONSBOSTON
SQL>SELECT*2FROM dept;
SelecionandoTodasasColunas
197www.tiagodemelo.info
DEPTNOLOC10NEWYORK20DALLAS30CHICAGO40BOSTON
SQL>SELECTdeptno,loc2FROMdept;
SelecionandoColunasEspecficas
198www.tiagodemelo.info
Justificadadefault
Esquerda:Dadosdecaractereedata
Direita:Dadosnumricos
Exibiodefault:Letramaiscula
DefaultsdeCabealhodeColuna
199www.tiagodemelo.info
Operador
+
*
/
Descrio
Adicionar
Subtrair
Multiplicar
Dividir
CriarexpressescomdadosNUMBEReDATEusandooperadoresaritmticos
ExpressesAritmticas
200www.tiagodemelo.info
SQL>SELECTename,sal,sal+3002FROM emp;
ENAMESALSAL+300KING50005300BLAKE28503150CLARK24502750JONES29753275MARTIN12501550ALLEN16001900...14rowsselected.
UsandoOperadoresAritmticos
201www.tiagodemelo.info
** // ++ __
Amultiplicaoeadivisotmprioridadesobreaadioeasubtrao.
Osoperadorescomamesmaprioridadesoavaliadosdaesquerdaparaadireita.
Osparntesessousadosparaforaraavaliaoeparaesclarecerasinstrues.
PrecednciadoOperador
202www.tiagodemelo.info
SQL>SELECTename,sal,12*sal+1002FROMemp;
ENAMESAL12*SAL+100KING500060100BLAKE285034300CLARK245029500JONES297535800MARTIN125015100ALLEN160019300...14rowsselected.
PrecednciadoOperador
203www.tiagodemelo.info
SQL>SELECTename,sal,12*(sal+100)2FROMemp;
ENAMESAL12*(SAL+100)KING500061200BLAKE285035400CLARK245030600JONES297536900MARTIN125016200...14rowsselected.
UsandoParnteses
204www.tiagodemelo.info
ENAMEJOB SALCOMMKINGPRESIDENT5000BLAKEMANAGER 2850...TURNERSALESMAN1500 0...14rowsselected.
SQL>SELECTename,job,sal,comm2FROMemp;
Umvalornulonoestdisponvel,noatribudo,desconhecidoounoaplicvel.
Umvalornulonoomesmoqueumzeroouumespaoembranco.
DefinindoumValorNulo
205www.tiagodemelo.info
SQL>selectename,12*sal+comm2fromemp3WHEREename='KING';
ENAME12*SAL+COMMKING
Expressesaritmticascontendoumvalornulosoavaliadascomonulo.
ValoresNulosnasExpressesAritmticas
206www.tiagodemelo.info
Renomeiaumcabealhodecoluna
tilparaclculos
Segueimediatamenteonomedacoluna
PalavrachaveASopcionalentreonomedacolunaeoapelido
Necessitadeaspasduplascasocontenhaespaosoucaracteresespeciaisoufaadistinoentremaisculaseminsculas
DefinindoumApelidodeColuna
207www.tiagodemelo.info
SQL>SELECTenameASname,salsalary2FROMemp;
NAMESALARY
...
SQL>SELECTename"Name",2sal*12"AnnualSalary"3FROMemp;
NameAnnualSalary
...
UsandoApelidosdeColuna
208www.tiagodemelo.info
Concatenacolunasoustringsdecaractereaoutrascolunas
representadoporduasbarrasVerticais||
Criaumacolunaresultantequeumaexpressodecaracteres
OperadordeConcatenao
209www.tiagodemelo.info
SQL>SELECT ename||jobAS"Employees"2FROM emp;
EmployeesKINGPRESIDENTBLAKEMANAGERCLARKMANAGERJONESMANAGERMARTINSALESMANALLENSALESMAN...14rowsselected.
UsandoumOperadordeConcatenao
210www.tiagodemelo.info
Umaliteralumcaractere,umnmeroouumadataincludanalistaSELECT.
Osvaloresliteraisdec