SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
Bases de dados: identify e non-identify, Relações
[1:1], MySQL Workbench
Carlos Santos
LabMM 5 - NTC - DeCA - UA
Aula 05, 01-03-2012
Um para muitos [1:M] - identify

  • Cada cliente poderá realizar várias encomendas
  • Cada encomenda tem que ser realizada apenas por um cliente




[1:n] Identifying Relationship ________                   PK Composta

  • Não pode existir uma encomenda sem um cliente
  • FK Clientes_idCliente não pode conter nulos pois pertence à PK
  • Pode existir um cliente sem uma encomenda
  • PK IdCliente pode conter valores inexistentes na FK Clientes_idCliente

Identifying -> Existe dependência entre as entidades!
Um para muitos [1:M] - identify




           Clientes                            Encomendas
   idCliente     nomeCliente   nrEncomenda   dataEncomenda     Clientes_idCliente
      1                João         1         2010-­‐02-­‐23           1
      2               Maria         2         2010-­‐04-­‐11           2

      3               Manuel        3         2010-­‐03-­‐13           2
                                    4         2010-­‐05-­‐21           1

                                    1         2010-­‐06-­‐25           2

NÃO PODEM existir PARES REPETIDOS na PK composta da tabela Encomendas

MAS PODEM existir valores repetidos em cada uma das colunas que constituem a
PK composta... (qual o problema?)
Um para muitos [1:M] - identify

                                             PROBLEMA:
                                             Tal como é mostrado
                                             PODEM existir vários
                                             clientes a realizar a mesma
                                             encomenda!

           Clientes                              Encomendas
   idCliente     nomeCliente   nrEncomenda    dataEncomenda      Clientes_idCliente
      1                João         1           2010-­‐02-­‐23           1
      2               Maria         2           2010-­‐04-­‐11           2

      3               Manuel        3           2010-­‐03-­‐13           2
                                    4           2010-­‐05-­‐21           1

                                    1           2010-­‐06-­‐25           2




SOLUÇÃO: configurar nrEncomenda com AUTO INCREMENT (AI) ou com UNIQUE
Um para um [1:1]

Novo cenário: uma empresa tem necessidade de gerir a ocupação de
gabinetes por administradores, sendo que:
  • Cada administrador possui apenas um gabinete
  • Cada gabinete está atribuído apenas a um administrador


              Administradores                  Gabinetes
             idAdmin                       idGabinete
             NomeAdmin                     Localizacao
             ApelidoAdmin
Um para um [1:1]

  • Cada administrador possui apenas um gabinete
  • Cada gabinete está atribuído apenas a um administrador


                                                         FK que também é PK!




1:1 Identifying Relationship ________

  • Pode existir um administrador sem um gabinete
     • PK IdAdministrador pode conter valores que não existem ainda na FK
       Administradores_idAdministrador
  • Não pode existir um gabinete sem um administrador
     • FK Administradores_idAdministrador não pode conter nulos pois também
       é PK
Existe dependência entre os administradores e os gabinetes!
Um para um [1:1]

  • Cada administrador possui apenas um gabinete
  • Cada gabinete está atribuído apenas a um administrador


                                                          FK que também é PK!




Problema: O que acontece se existirem gabinetes vazios?
Um para um [1:1]

Solução: Criar uma tabela de relação que torne as entidades independentes.




Pode existir um administrador sem um gabinete
  • PK IdAdministrador pode conter valores que não existem ainda na FK
    Administradores_idAdministrador
Pode existir um gabinete sem um administrador
  • PK IdGabinete pode conter valores que não existem ainda na FK
    Gabinetes_idGabinete

A tabela de relação Administradores_has_Gabinetes conterá apenas as
situações em que a um administrador foi atribuído um gabinete
Um para um [1:1]

Para evitar valores repetidos nas FK que constituem a PK composta da
tabela de relação configura-se com o parâmetro UNIQUE na definição
dessas colunas




         Administradores
                                                                                            Gabinetes
   idAdministrador    NomeAdmin
                                                                                idGabinete        Localizacao
         1                  João                                                        1               101
         2                 Maria                                                        2               102
         3                 Manuel                                                       3               103

                                            Administradores_Gabinetes
                               Administradores_idAdministrador   Gabinetes_idGabinete
                                             1                            2
                                             2                            3
MySQL Workbench

Mais importante que tudo... o MySQL Workbench não é um SGBDR!

  • É uma aplicação com várias ferramentas qye facilitam algumas tarefas
    inerentes ao desenvolvimento e manutenação de BDs e SGBRs
  • O MySQL Server é que é um SGBDR

Ferramentas

  • Server Administration
  • Data Modeling
  • SQL Development
MySQL Workbench: Data modeling

Diagrama Enhanced Entity-Relationship (EER)

  • Modelação da BD: entidades, propriedades e suas relações

Physical Schemata

  • Schema: conjunto de objectos e regras que estruturam a BD
  • A ter em atenção:
     • Verificar se a Collation de todas as tabelas está definida como
       
   
 
 utf8 - utf8_general_ci (suporte caracteres PT)
     • Nome do schema deve ser igual ao nome da BD destino
     • Verificar se o Engine de todas as tabelas está definido como InnoDB

Exportar o schema da BD
  • File -> Export -> Forward Engineer SQL CREATE Script…
  • Gera um ficheiro SQL com o código necessário para a criação da BD
MySQL Workbench: Data modeling: Export




                           Antes de criar, apaga objetos que já
                           existam com o mesmo nome




                    Mostra eventuais mensagens de erro/
                    alerta durante o processo de criação


              Permite inserir dados na BD no
              momento da sua criação
MySQL Workbench: Data modeling: Export

                              O que é e para que serve?
MySQL Workbench: SQL Development

Para que serve?

  • Ligação a uma base de dados
  • Executar SQL Queries
  • Executar SQL Scripts
  • Editar dados de tabelas
     • alternativa: phpMyAdmin

Weitere ähnliche Inhalte

Mehr von Carlos Santos

Is AI the Spice of our future?
Is AI the Spice of our future?Is AI the Spice of our future?
Is AI the Spice of our future?Carlos Santos
 
Mentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantesMentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantesCarlos Santos
 
1º Encontro Científico TCEdu
1º Encontro Científico TCEdu1º Encontro Científico TCEdu
1º Encontro Científico TCEduCarlos Santos
 
Tecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicialTecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicialCarlos Santos
 
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunosAVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunosCarlos Santos
 
AVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunosAVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunosCarlos Santos
 
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...Carlos Santos
 
Tecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho práticoTecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho práticoCarlos Santos
 
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Carlos Santos
 
SAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentSAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentCarlos Santos
 
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusRepensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusCarlos Santos
 
A technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectA technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectCarlos Santos
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoCarlos Santos
 
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCARepensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCACarlos Santos
 
T20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidT20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidCarlos Santos
 
T19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificaçãoT19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificaçãoCarlos Santos
 
T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)Carlos Santos
 

Mehr von Carlos Santos (20)

Is AI the Spice of our future?
Is AI the Spice of our future?Is AI the Spice of our future?
Is AI the Spice of our future?
 
Mentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantesMentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantes
 
1º Encontro Científico TCEdu
1º Encontro Científico TCEdu1º Encontro Científico TCEdu
1º Encontro Científico TCEdu
 
Tecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicialTecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicial
 
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunosAVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
 
AVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunosAVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunos
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
 
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
 
Tecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho práticoTecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho prático
 
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
 
SAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentSAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning Environment
 
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusRepensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
 
A technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectA technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus project
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativo
 
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCARepensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
 
T20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidT20_LM3: APIs e Scoreoid
T20_LM3: APIs e Scoreoid
 
T19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificaçãoT19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificação
 
T18_LM3: Ajax
T18_LM3: AjaxT18_LM3: Ajax
T18_LM3: Ajax
 
T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)
 

Kürzlich hochgeladen

DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfIedaGoethe
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfIedaGoethe
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfErasmo Portavoz
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxSlides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxLuizHenriquedeAlmeid6
 
Doutrina Deus filho e Espírito Santo.pptx
Doutrina Deus filho e Espírito Santo.pptxDoutrina Deus filho e Espírito Santo.pptx
Doutrina Deus filho e Espírito Santo.pptxThye Oliver
 
FCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirFCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirIedaGoethe
 
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 anoAdelmaTorres2
 
Atividade com a letra da música Meu Abrigo
Atividade com a letra da música Meu AbrigoAtividade com a letra da música Meu Abrigo
Atividade com a letra da música Meu AbrigoMary Alvarenga
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISVitor Vieira Vasconcelos
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
Gerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalGerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalJacqueline Cerqueira
 
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...LizanSantos1
 

Kürzlich hochgeladen (20)

DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdfDIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
DIA DO INDIO - FLIPBOOK PARA IMPRIMIR.pdf
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdf
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdf
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
 
treinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppttreinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppt
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxSlides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
 
Doutrina Deus filho e Espírito Santo.pptx
Doutrina Deus filho e Espírito Santo.pptxDoutrina Deus filho e Espírito Santo.pptx
Doutrina Deus filho e Espírito Santo.pptx
 
FCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirFCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimir
 
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
 
Atividade com a letra da música Meu Abrigo
Atividade com a letra da música Meu AbrigoAtividade com a letra da música Meu Abrigo
Atividade com a letra da música Meu Abrigo
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGIS
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
Gerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalGerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem Organizacional
 
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
Intolerância religiosa. Trata-se de uma apresentação sobre o respeito a diver...
 

05 LabMM4 - Bases de dados

  • 1. Bases de dados: identify e non-identify, Relações [1:1], MySQL Workbench Carlos Santos LabMM 5 - NTC - DeCA - UA Aula 05, 01-03-2012
  • 2. Um para muitos [1:M] - identify • Cada cliente poderá realizar várias encomendas • Cada encomenda tem que ser realizada apenas por um cliente [1:n] Identifying Relationship ________ PK Composta • Não pode existir uma encomenda sem um cliente • FK Clientes_idCliente não pode conter nulos pois pertence à PK • Pode existir um cliente sem uma encomenda • PK IdCliente pode conter valores inexistentes na FK Clientes_idCliente Identifying -> Existe dependência entre as entidades!
  • 3. Um para muitos [1:M] - identify Clientes Encomendas idCliente nomeCliente nrEncomenda dataEncomenda Clientes_idCliente 1 João 1 2010-­‐02-­‐23 1 2 Maria 2 2010-­‐04-­‐11 2 3 Manuel 3 2010-­‐03-­‐13 2 4 2010-­‐05-­‐21 1 1 2010-­‐06-­‐25 2 NÃO PODEM existir PARES REPETIDOS na PK composta da tabela Encomendas MAS PODEM existir valores repetidos em cada uma das colunas que constituem a PK composta... (qual o problema?)
  • 4. Um para muitos [1:M] - identify PROBLEMA: Tal como é mostrado PODEM existir vários clientes a realizar a mesma encomenda! Clientes Encomendas idCliente nomeCliente nrEncomenda dataEncomenda Clientes_idCliente 1 João 1 2010-­‐02-­‐23 1 2 Maria 2 2010-­‐04-­‐11 2 3 Manuel 3 2010-­‐03-­‐13 2 4 2010-­‐05-­‐21 1 1 2010-­‐06-­‐25 2 SOLUÇÃO: configurar nrEncomenda com AUTO INCREMENT (AI) ou com UNIQUE
  • 5. Um para um [1:1] Novo cenário: uma empresa tem necessidade de gerir a ocupação de gabinetes por administradores, sendo que: • Cada administrador possui apenas um gabinete • Cada gabinete está atribuído apenas a um administrador Administradores Gabinetes idAdmin idGabinete NomeAdmin Localizacao ApelidoAdmin
  • 6. Um para um [1:1] • Cada administrador possui apenas um gabinete • Cada gabinete está atribuído apenas a um administrador FK que também é PK! 1:1 Identifying Relationship ________ • Pode existir um administrador sem um gabinete • PK IdAdministrador pode conter valores que não existem ainda na FK Administradores_idAdministrador • Não pode existir um gabinete sem um administrador • FK Administradores_idAdministrador não pode conter nulos pois também é PK Existe dependência entre os administradores e os gabinetes!
  • 7. Um para um [1:1] • Cada administrador possui apenas um gabinete • Cada gabinete está atribuído apenas a um administrador FK que também é PK! Problema: O que acontece se existirem gabinetes vazios?
  • 8. Um para um [1:1] Solução: Criar uma tabela de relação que torne as entidades independentes. Pode existir um administrador sem um gabinete • PK IdAdministrador pode conter valores que não existem ainda na FK Administradores_idAdministrador Pode existir um gabinete sem um administrador • PK IdGabinete pode conter valores que não existem ainda na FK Gabinetes_idGabinete A tabela de relação Administradores_has_Gabinetes conterá apenas as situações em que a um administrador foi atribuído um gabinete
  • 9. Um para um [1:1] Para evitar valores repetidos nas FK que constituem a PK composta da tabela de relação configura-se com o parâmetro UNIQUE na definição dessas colunas Administradores Gabinetes idAdministrador NomeAdmin idGabinete Localizacao 1 João 1 101 2 Maria 2 102 3 Manuel 3 103 Administradores_Gabinetes Administradores_idAdministrador Gabinetes_idGabinete 1 2 2 3
  • 10. MySQL Workbench Mais importante que tudo... o MySQL Workbench não é um SGBDR! • É uma aplicação com várias ferramentas qye facilitam algumas tarefas inerentes ao desenvolvimento e manutenação de BDs e SGBRs • O MySQL Server é que é um SGBDR Ferramentas • Server Administration • Data Modeling • SQL Development
  • 11. MySQL Workbench: Data modeling Diagrama Enhanced Entity-Relationship (EER) • Modelação da BD: entidades, propriedades e suas relações Physical Schemata • Schema: conjunto de objectos e regras que estruturam a BD • A ter em atenção: • Verificar se a Collation de todas as tabelas está definida como utf8 - utf8_general_ci (suporte caracteres PT) • Nome do schema deve ser igual ao nome da BD destino • Verificar se o Engine de todas as tabelas está definido como InnoDB Exportar o schema da BD • File -> Export -> Forward Engineer SQL CREATE Script… • Gera um ficheiro SQL com o código necessário para a criação da BD
  • 12. MySQL Workbench: Data modeling: Export Antes de criar, apaga objetos que já existam com o mesmo nome Mostra eventuais mensagens de erro/ alerta durante o processo de criação Permite inserir dados na BD no momento da sua criação
  • 13. MySQL Workbench: Data modeling: Export O que é e para que serve?
  • 14. MySQL Workbench: SQL Development Para que serve? • Ligação a uma base de dados • Executar SQL Queries • Executar SQL Scripts • Editar dados de tabelas • alternativa: phpMyAdmin