293
1 www.tiagodemelo.info Banco de Dados I Curso de Graduação em Engenharia da Computação Segundo quadrimestre de 2008 Prof. Msc. Tiago Eugenio de Melo [email protected] ou [email protected] A primeira versão deste material foi elaborada pelo professor Alexandre Guimarães.

Banco de Dados I-bd-2008

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