Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 11 Disciplina Banco de Dados (BD)Disciplina Banco de Dados (BD) 99ªª Aula Aula -- Abordagem MER Abordagem MER -- IIII2013/1 2013/1 -- CCON4A CCON4A -- ENGN6CENGN6C IESB SulIESB Sul 2 Planejamento - BD I - 2013/1 - (previsão) D S T Q Q S S D S T Q Q S S 1 2 1 3 4 5 6 7 8 9 2 3 4 5 6 7 8 10 11 12 13 14 15 16 9 10 11 12 13 14 15 17 18 19 20 21 22 23 16 17 18 19 20 21 22 24 25 26 27 28 23 24 25 26 27 28 29 30 D S T Q Q S S D S T Q Q S S 1 2 1 2 3 4 5 6 3 4 5 6 7 8 9 7 8 9 10 11 12 13 10 11 12 13 14 15 16 14 15 16 17 18 19 20 17 18 19 20 21 22 23 21 22 23 24 25 26 27 24 25 26 27 28 29 30 28 29 30 31 31 D S T Q Q S S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 D S T Q Q S S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ABRIL MAIO JUNHO JULHO FEVEREIRO MARÇO LEGENDA Feriado / Recesso Aula Lançamento (P1, P2 e Subst) Início / Término Aulas Avaliação (P1, P2 e Subst) Edad 2 3 Banco de Dados (BD) Para assistir a aula: Para assistir a aula: éé necessnecessáário estar que o aluno esteja rio estar que o aluno esteja matriculado na disciplina matriculado na disciplina (deve estar na lista de chamada)(deve estar na lista de chamada) procurar a Coordenaprocurar a Coordenaçção do Curso ão do Curso para a solupara a soluçção de problemasão de problemas 4 LeiamLeiam CCóódigo de digo de ÉÉticatica ResoluResoluçção Conselho Superior não Conselho Superior nºº 02/201002/2010 de 12 de agosto de 2010de 12 de agosto de 2010 (dispon(disponíível na plataforma "vel na plataforma "BlackboardBlackboard")") Banco de Dados 3 5 BD Banco de Dados EE--mail para receber o material enquanto não mail para receber o material enquanto não estestáá dispondisponíível o site da disciplinavel o site da disciplina wpereira@cpovo.net BD - Enviar material 6 �� BIBLIOGRAFIABIBLIOGRAFIA �� Bibliografia bBibliografia báásica (ordem alfabsica (ordem alfabéética):tica): �� DATE, CHRISTOPHER JDATE, CHRISTOPHER J. . IntroduIntroduçção a Sistemas de Bancos ão a Sistemas de Bancos de Dadosde Dados. Rio de Janeiro: Campus, 2000. . Rio de Janeiro: Campus, 2000. �� HEUSER, Carlos AlbertoHEUSER, Carlos Alberto. . Projeto de banco de DadosProjeto de banco de Dados. 6.ed. . 6.ed. Porto Alegre: Porto Alegre: BookmanBookman, 2010, 2010 .. �� SILBERSCHATZ, Korth; SUDARSHANSILBERSCHATZ, Korth; SUDARSHAN. . Sistema de Banco Sistema de Banco de Dadosde Dados. 3. ed. São Paulo: Makron Books, 2005.. 3. ed. São Paulo: Makron Books, 2005. Banco de Dados (BD) 4 7 �� BIBLIOGRAFIABIBLIOGRAFIA �� Bibliografia complementar (ordem alfabBibliografia complementar (ordem alfabéética):tica): �� ELMASRI, R.; NAVATHE, S. BELMASRI, R.; NAVATHE, S. B. . Sistemas de Banco de DadosSistemas de Banco de Dados. 4. ed. São . 4. ed. São Paulo: Pearson Education do Brasil, 2005.Paulo: Pearson Education do Brasil, 2005. �� KROENKE, David MKROENKE, David M. . Banco de Dados: fundamentos, projeto e Banco de Dados: fundamentos, projeto e implementaimplementaççãoão. 6. ed. Rio de Janeiro: LTC, 1999.. 6. ed. Rio de Janeiro: LTC, 1999. �� MACHADO, Felipe Nery; ABREU, MauricioMACHADO, Felipe Nery; ABREU, Mauricio. . Projeto de Banco de Dados: Projeto de Banco de Dados: uma visão pruma visão prááticatica. 16. ed. São Paulo: . 16. ed. São Paulo: ÉÉrica, 2009.rica, 2009. �� MELO, Rubens NMELO, Rubens N. . Banco de Dados em AplicaBanco de Dados em Aplicaçções Clienteões Cliente--ServidorServidor. Rio . Rio de Janeiro: Infobook, 1997.de Janeiro: Infobook, 1997. �� SETZER, Valdemar W; SILVA, FlSETZER, Valdemar W; SILVA, Fláávio Soares Correavio Soares Correa. . Bancos de Dados: Bancos de Dados: aprenda o que são, melhore seu conhecimento, construa o seuaprenda o que são, melhore seu conhecimento, construa o seu. São Paulo: . São Paulo: Edgard BlEdgard Blüücher Ltda, 2005.cher Ltda, 2005. Banco de Dados (BD) 8 �� SITES PARA APROFUNDAMENTO E FERRAMENTAS:SITES PARA APROFUNDAMENTO E FERRAMENTAS: �� brModelo 2.0brModelo 2.0. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012.em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012. �� DBDesigner 4DBDesigner 4. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. �� MySQLMySQL. . Sistema Gerenciador de Banco de Dados MySQLSistema Gerenciador de Banco de Dados MySQL. Dispon. Disponíível vel em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. �� OracleOracle. . Sistema Gerenciador de Banco de Dados OracleSistema Gerenciador de Banco de Dados Oracle. Dispon. Disponíível em: vel em: <http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. <http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. �� Power DesignerPower Designer. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. dispon. disponíível vel em: em: <http://www.sybase.com/products/modelingdevelopment/powerdesigne<http://www.sybase.com/products/modelingdevelopment/powerdesigner>. r>. Acesso em Acesso em 29 jul. 2012.Acesso em Acesso em 29 jul. 2012. Banco de Dados (BD) 5 9 FIES 10 Plano de Ensino 6 11 Plano de Ensino 12 Banco de Dados Formem as equipes para o 1Formem as equipes para o 1°° TrabalhoTrabalho Equipes de Equipes de 0303 ou ou 0404 integrantesintegrantes 11°° Trabalho publicado diaTrabalho publicado dia 12 Mar 13 (ter12 Mar 13 (terççaa--feira)feira) Data de entrega do 1Data de entrega do 1ºº Trabalho:Trabalho: 10 Abr 13 10 Abr 13 -- antes de iniciar a P1antes de iniciar a P1 7 13 Roteiro da Apresentação � Introdução � Abordagem Entidade-Relacionamento � Relacionamento ternário � Generalização / Especialização � Entidade associativa ou agregação � Esquemas Gráfico e Textual de modelos Entidade-Relacionamento � Exercícios 14 Roteiro da Apresentação � Introdução � Abordagem Entidade-Relacionamento � Relacionamento ternário � Generalização / Especialização � Entidade associativa ou agregação � Esquemas Gráfico e Textual de modelos Entidade-Relacionamento � Exercícios 8 15 � Fases: Projeto de Banco de Dados Modelo conceitualModelo conceitual Modelo lógicoModelo lógico Esquema relacional Tipo_Produto (Codigo, Descricao) Produto (Codigo, Nome, Preco, Cod_Tipo) Cod_Tipo referencia Tipo_Produto) Esquema relacional Tipo_Produto (Codigo, Descricao) Produto (Codigo, Nome, Preco, Cod_Tipo) Cod_Tipo referencia Tipo_Produto) Modelo físicoModelo físico CODIGO DESCRICAO 1 COMPUTADOR 2 IMPRESSORA TIPO_PRODUTO CODIGO DESCRICAO PRECO COD_TIPO 1 DESKTOP DELL MODELO P III 2500 1 2 NOTEBOOK TOSHIBA L 1.7 3500 1 3 HP 692 C JATO DE TINTA 600 2 4 EPSON 1500 L LASER 1200 2 PRODUTO Banco de Dados BDBD 16 Abordagem Entidade-Relacionamento �� Entidade, Relacionamento e CardinalidadeEntidade, Relacionamento e Cardinalidade (0, n)(0, n) Relacionamento binário 9 17 Roteiro da Apresentação � Introdução � Abordagem Entidade-Relacionamento � Relacionamento ternário � Generalização / Especialização � Entidade associativa ou agregação � Esquemas Gráfico e Textual de modelos Entidade-Relacionamento � Exercícios 18 �� Relacionamento ternRelacionamento ternáário:rio: �� A abordagem ER permite a definiA abordagem ER permite a definiçção de relacionamentos de ão de relacionamentos de grau grau maior que 2maior que 2, ou seja, relacionamento , ou seja, relacionamento ternternááriorio,, quaternquaternááriorio, etc., etc. �� Em relacionamento de três entidades (Em relacionamento de três entidades (A, B, CA, B, C) a cardinalidade ) a cardinalidade mmááxima de xima de ““AA”” e e ““BB”” indica quantas ocorrências de indica quantas ocorrências de ““CC”” podem podem estar associadas a um par de ocorrências estar associadas a um par de ocorrências ““AA”” e e ““BB”” Abordagem Entidade-Relacionamento n n 1 1 ocorrência do par 1 ocorrência do par ((CIDADE,PRODUTOCIDADE,PRODUTO) esta ) esta associada, associada, obrigatoriamente, a uma e obrigatoriamente, a uma e somente uma ocorrência somente uma ocorrência de (de (DISTRIBUIDORDISTRIBUIDOR)) C B A 1 1 ProdutoProduto em 1 em 1 CidadeCidade ssóó pode ser distribupode ser distribuíído do por 1 por 1 DistribuidorDistribuidor 10 19 �� Relacionamento ternRelacionamento ternáário:rio: �� Em relacionamento de três entidades (Em relacionamento de três entidades (A, B, CA, B, C) a cardinalidade ) a cardinalidade mmááxima de xima de ““AA”” e e ““CC”” indica quantas ocorrências de indica quantas ocorrências de ““BB”” podem podem estar associadas a um par de ocorrências estar associadas a um par de ocorrências ““AA”” e e ““CC”” Abordagem Entidade-Relacionamento n n 1 1 ocorrência do par 1 ocorrência do par ((CIDADE,DISTRIBUIDORCIDADE,DISTRIBUIDOR) ) esta associada a uma ou esta associada a uma ou mais ocorrências de mais ocorrências de ((PRODUTOPRODUTO)) C B A 1 1 DistribuidorDistribuidor pode pode distribuir em 1 distribuir em 1 CidadeCidade muitos muitos ProdutosProdutos 20 C B A �� Relacionamento ternRelacionamento ternáário:rio: �� Em relacionamento de três entidades (Em relacionamento de três entidades (A, B, CA, B, C) a cardinalidade ) a cardinalidade mmááxima de xima de ““BB”” e e ““CC”” indica quantas ocorrências de indica quantas ocorrências de ““AA”” podem podem estar associadas a um par de ocorrências estar associadas a um par de ocorrências ““BB”” e e ““CC”” Abordagem Entidade-Relacionamento n 1 1 ocorrência do par 1 ocorrência do par ((DISTRIBUIDOR, PRODUTODISTRIBUIDOR, PRODUTO) ) esta associada a uma ou esta associada a uma ou mais ocorrências de mais ocorrências de ((CIDADECIDADE)) 1 1 DistribuidorDistribuidor pode distribuir pode distribuir 1 1 ProdutoProduto em muitas em muitas CidadesCidades n 11 21 Roteiro da Apresentação � Introdução � Abordagem Entidade-Relacionamento � Relacionamento ternário � Generalização / Especialização � Entidade associativa ou agregação � Esquemas Gráfico e Textual de modelos Entidade-Relacionamento � Exercícios 22 �� GeneralizaGeneralizaçção ão -- EspecializaEspecializaçção: ão: �� PodePode--se atribuir propriedades particulares a um subconjunto das se atribuir propriedades particulares a um subconjunto das ocorrências de uma entidade genocorrências de uma entidade genéérica (especializarica (especializaçção)ão) Abordagem Entidade-Relacionamento Quais são os tipos de CLIENTE que se pode ter ?? 12 23 �� GeneralizaGeneralizaçção ão -- EspecializaEspecializaçção: ão: �� PodePode--se atribuir propriedades particulares a um subconjunto das se atribuir propriedades particulares a um subconjunto das ocorrências de uma entidade genocorrências de uma entidade genéérica (especializarica (especializaçção)ão) Abordagem Entidade-Relacionamento Quais são os tipos de CLIENTE que se pode ter ?? 24 �� GeneralizaGeneralizaçção ão -- EspecializaEspecializaçção: ão: �� PodePode--se atribuir propriedades particulares a um subconjunto das se atribuir propriedades particulares a um subconjunto das ocorrências de uma entidade genocorrências de uma entidade genéérica (especializarica (especializaçção)ão) �� HeranHerançça de propriedadesa de propriedades: a ocorrência especializada, al: a ocorrência especializada, aléém de m de suas propriedades prsuas propriedades próóprias herda, tambprias herda, tambéém, as propriedades da m, as propriedades da ocorrência da entidade genocorrência da entidade genéérica correspondenterica correspondente Abordagem Entidade-Relacionamento Especialização Generalização 13 25 �� GeneralizaGeneralizaçção ão -- EspecializaEspecializaçção:ão: �� Tipos:Tipos: �� TotalTotal: para cada ocorrência da entidade gen: para cada ocorrência da entidade genéérica existe rica existe sempre uma ocorrência em uma das entidades especializadassempre uma ocorrência em uma das entidades especializadas �� ParcialParcial: nem toda ocorrência da entidade gen: nem toda ocorrência da entidade genéérica possui uma rica possui uma ocorrência correspondente em uma entidade especializadaocorrência correspondente em uma entidade especializada Abordagem Entidade-Relacionamento TodoTodo CLIENTE ou CLIENTE ou éé PESSOA FPESSOA FÍÍSICA ou SICA ou PESSOA JURPESSOA JURÍÍDICADICA Nem todoNem todo CLIENTE CLIENTE éé PESSOA FPESSOA FÍÍSICA ou SICA ou PESSOA JURPESSOA JURÍÍDICADICA 26 Roteiro da Apresentação � Introdução � Abordagem Entidade-Relacionamento � Relacionamento ternário � Generalização / Especialização � Entidade associativa ou agregação � Esquemas Gráfico e Textual de modelos Entidade-Relacionamento � Exercícios 14 27 �� Entidade: Entidade: �� Exemplo: Exemplo: MMéédicodico -- PacientePaciente -- MedicamentoMedicamento �� ““Identificar os medicamentos prescritos pelos mIdentificar os medicamentos prescritos pelos méédicos a cada dicos a cada paciente e em que consulta foram receitadospaciente e em que consulta foram receitados”” Abordagem Entidade-Relacionamento O médico MD1 prescreveu, ao paciente P2, qual medicamento ??? (MC1, MC2, MC3, todos ou nenhum ???) Este modelo não responde a pergunta formulada !!! 28 �� Entidade: Entidade: �� AssociativaAssociativa: : éé a redefinia redefiniçção de um relacionamento que passa a ser ão de um relacionamento que passa a ser tratado como se fosse, tambtratado como se fosse, tambéém, uma entidadem, uma entidade �� Exemplo: Exemplo: MMéédicodico -- PacientePaciente -- MedicamentoMedicamento �� ““Identificar os medicamentos prescritos pelos mIdentificar os medicamentos prescritos pelos méédicos a cada dicos a cada paciente e em que consulta foram receitadospaciente e em que consulta foram receitados”” Abordagem Entidade-Relacionamento 15 29 �� Entidade: Entidade: �� AssociativaAssociativa: : éé a redefinia redefiniçção de um relacionamento que passa a ser ão de um relacionamento que passa a ser tratado como se fosse, tambtratado como se fosse, tambéém, uma entidadem, uma entidade Abordagem Entidade-Relacionamento 30 �� Entidade: Entidade: �� AssociativaAssociativa: : ““funcionamentofuncionamento”” Abordagem Entidade-Relacionamento O médico MD1 prescreveu, ao paciente P2, qual medicamento ??? (MC1, MC2, MC3, todos ou nenhum ???) MD1,P1 MD1,P2 MD1,P1, MC1 MD1,P2, MC3 MD1,P1, MC2 Este modelo responde a pergunta formulada !!! 16 31 �� Entidade: Entidade: �� AssociativaAssociativa: representa: representaççõesões Abordagem Entidade-Relacionamento 32 Roteiro da Apresentação � Introdução � Abordagem Entidade-Relacionamento � Relacionamento ternário � Generalização / Especialização � Entidade associativa ou agregação � Esquemas Gráfico e Textual de modelos Entidade-Relacionamento � Exercícios 17 33 Entidade associativa Generalização / Especialização Relacionamento identificador Atributo identificador Atributo Relacionamento Entidade SímboloConceito � Esquemas Gráfico e Textual de modelos de ER � Esquema Gráfico: Abordagem Entidade-Relacionamento 34 � Esquemas Gráfico e Textual de modelos de ER � Esquema Textual: Abordagem Entidade-Relacionamento Esquema Gráfico Esquema:EMP_DEP Entidade: EMPREGADO Atributos: Código: inteiro Nome: texto(50) Identificadores: Código Entidade: DEPENDENTE Atributos: Número_sequencia Nome: texto(50) Identificadores: EMPREGADO via EMP_DEP Número_sequencia Relacionamentos: EMP_DEP Entidades: (1,1) EMPREGADO (0,n) DEPENDENTE Esquema: EMP_DEP Entidade: EMPREGADO Atributos: Código: inteiro Nome: texto(50) Identificadores: Código Entidade: DEPENDENTE Atributos: Número_sequencia Nome: texto(50) Identificadores: EMPREGADO via EMP_DEP Número_sequencia Relacionamentos: EMP_DEP Entidades: (1,1) EMPREGADO (0,n) DEPENDENTE Esquema Textual 18 35 Roteiro da Apresentação � Introdução � Abordagem Entidade-Relacionamento � Relacionamento ternário � Generalização / Especialização � Entidade associativa ou agregação � Esquemas Gráfico e Textual de modelos Entidade-Relacionamento � Exercícios 36 Exercício - Aeroclube Para se tornar um piloto, os alunos do aeroclube são treinados pelos instrutores de vôo do aeroclube. Existem dois tipos de alunos no aeroclube: os sócios e os visitantes. Os instrutores são contratados por tempo certo e dispensados ao final do contrato. Todos os alunos do aeroclube são identificados por um número de matrícula único, e caracterizados pelo nome, endereço, data de nascimento e telefone. Dos alunos que são sócios registra-se, também, a data que se tornou sócio, enquanto dos alunos visitantes guarda-se a identidade e o CPF. Cada instrutor possui um código único, nome, endereço, data de obtenção do diploma, bem como a instituição em que realizou o curso de pilotagem. Sobre o contrato registra-se o seu número, o valor, a data de início e a data de término. Um instrutor pode ter mais de um contrato. Sabe- se, entretanto, que um contrato refere-se a apenas um instrutor do aeroclube. Para ser considerado aluno, uma pessoa deve ser treinada, no mínimo, por um instrutor. Um instrutor pode ministrar aulas práticas de pilotagem de avião para vários alunos do aeroclube, sendo que, de cada uma destas aulas guarda- se a data do vôo, a quantidade de horas do vôo e o parecer do instrutor sobre o vôo realizado pelo aluno. Deve ser possível registrar os dados dos instrutores independentemente da necessidade de se guardar quaisquer outros dados a que esteja associado. Deseja-se modelar o banco de dados de modo que seja possível gerar diversos relatórios diferentes, como, por exemplo, os instrutores que ministraram aulas para um determinado aluno e, também, os contratos e os respectivos instrutores.
Compartilhar