1 / 101

BANCOS DE DADOS

BANCOS DE DADOS. ProfessoR rafael silva. OBJETIVOS DA DISCIPLINA. Apresentar os principais conceitos de bancos de dados Compreender a importância da utilização de bancos de dados Ensinar técnicas para projetos e modelagem de bancos de dados Apresentar a linguagem SQL

aelwen
Download Presentation

BANCOS DE DADOS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BANCOS DE DADOS ProfessoRrafael silva

  2. OBJETIVOS DA DISCIPLINA • Apresentar os principais conceitos de bancos de dados • Compreender a importância da utilização de bancos de dados • Ensinar técnicas para projetos e modelagem de bancos de dados • Apresentar a linguagem SQL • Apresentar o SGBD MySql, permitindo a criação e manipulação de bancos de dados

  3. INTRODUÇÃO • O que é banco de dados? • Existem vários conceitos para o que chamamos de bancos de dados, mas todos remetem à mesma ideia: Uma coleção compartilhada de dados, inter-relacionados, projetados para atender as necessidades dos múltiplos tipos de usuários. • Dado x informação: • Dado: valor “solto” na natureza, cujo significado depende do contexto. • Ex: -1, 3.14, 853, prata • Informação: É um valor para determinado objetivo, acrescenta conhecimento ao fato analisado. Pode ser extraída de um banco de dados • Ex: “A temperatura na cidade X foi de -1 grau”, “Meu carro é prata”, “3.14 é o valor de pi”

  4. IMPORTÂNCIA DOS BDs • O mundo hoje é totalmente informatizado • Pessoas e empresas são cada vez mais dependentes da informática • Tudo gira em torno de dados (vendas, operações bancárias, gerenciamento de empresas, escolas e/ou órgãos públicos, etc.) • Os bancos de dados permitem o armazenamento destas informações, considerando aspectos fundamentais como segurança, rapidez no acesso e confiabilidade.

  5. VANTAGENS DE UM BD • Controle de redundância • Compartilhamento entre múltiplos usuários • Restrição de acesso aos dados • Diferentes tipos de interface para diferentes usuários • Representação dos dados com um nível grande de complexidade • Garante a restrição de integridade (manter dados íntegros) • Mecanismos de backup e recuperação de dados • Flexibilidade na mudança das estruturas de dados

  6. SISTEMAS DE BANCOS DE DADOS • Envolvem quatro elementos: • Dados : são os elementos essenciais (afinal de contas, o banco de dados é um repositório) • Hardware: composto por volumes de armazenamento (discos), processadores de HD e memória (dar suporte à execução dos SGBDs) • Software: programas usados para criar e gerenciar os bancos de dados; também entram os utilitários, ferramentas de desenvolvimento, geradores de relatórios, etc • Usuários: pessoas que usarão os bancos de dados

  7. TIPOS DE USUÁRIOS • Programadores: criam programas para acessar os bancos de dados • Usuários finais: acessam os bancos de dados interativamente • Profissionais: usuários com conhecimentos específicos sobre bancos de dados. Podem ser: • Administrador de dados: responsável pelos dados, decidem o que deve ser armazenado • DBA: Responsável pela implementação das decisões do administrador; cria os bancos de dados e implementa controles necessários

  8. SGBDS • Sigla para Sistemas Gerenciadores de Bancos de Dados. São softwares que tem como objetivos permitir a criação e manutenção de banco de dados, além da manipulação dos dados armazenados. • Alguns SGBDs: • Access, • SQLServer • Oracle • MySQL • PostGre

  9. LINGUAGEM SQL • Linguagem padronizada para manipulação de bancos de dados, usadas nos SGBDs • Dividida em: • DDL - Linguagem de Definição de Dados • DML - Linguagem de Manipulação de Dados • DCL - Linguagem de Controle de Dados • DTL - Linguagem de Transação de Dados • DQL - Linguagem de Consulta de Dados

  10. ABSTRAÇÃO DE DADOS • Nível de visões do usuário ou externo: descreve partes do banco de dados, de acordo com as necessidades de cada usuário, individualmente. • Nível conceitual ou lógico: descreve quais dados estão armazenados e seus relacionamentos. Neste nível, o banco de dados é descrito através de estruturas relativamente simples, que podem envolver estruturas complexas no nível físico. • Nível físico: nível mais baixo de abstração. Descreve como os dados estão realmente armazenados, englobando estruturas complexas de baixo nível.

  11. INSTÂNCIAS E ESQUEMAS • Instância: Os dados atuais armazenados no Banco de Dados em um momento particular. Também chamado estado do banco de dados. • Esquema: Descrição da estrutura de um Banco de Dados. Pode ser textual ou gráfico. Conhecido também como o projeto geral do banco de dados.

  12. INDEPENDÊNCIA DE DADOS • Capacidade de modificar os esquemas de um banco de dados sem afetar um esquema de nível superior. Existem dois níveis de independência: • Física: capacidade de modificar o esquema físico sem que haja qualquer necessidade de reescrever alguma aplicação. Usada para promover melhorias no desempenho. • Lógica: capacidade de modificar o esquema lógico sem que haja qualquer necessidade de reescrever alguma aplicação. Necessárias quando uma estrutura lógica é alterada (ex: inserção de novas moedas num sistema)

  13. MODELO DE DADOS • Conceituais (Alto Nível) • Entidade-Relacionamento • Objeto-Relacional (BDII) • Orientado a Objeto (BDII) • Implementação (Lógicos) • Relacional • Rede (BD mais antigos) • Hierárquico (BD mais antigos) • Físicos

  14. MODELO ENTIDADE-RELACIONAMENTO • Modelo proposto por Peter Chen, baseado na percepção do mundo real. • Formado por um conjunto de objetos básicos denominados entidades e nos relacionamentos entre tais objetos. • Tal modelo permite especificar a estrutura lógica do banco de dados.

  15. MODELO ENTIDADE-RELACIONAMENTO • O Diagrama Entidade-Relacionamento (DER) permite representar graficamente a estrutura lógica de um banco de dados. • De um modo geral, para nos auxiliar na elaboração de um DER, podemos dizer que os substantivos de uma frase são as entidades e os verbos são os relacionamentos entre as entidades.

  16. MODELO ENTIDADE-RELACIONAMENTO

  17. MODELO ENTIDADE-RELACIONAMENTO • Entidade: Podemos definir uma entidade como sendo um objeto do mundo real, com significado próprio e identificação distinta. Pode ser pessoa, animal, conta bancária, produto, veículo, etc. – depende do contexto. • Entidade fraca: Entidade cuja existência depende obrigatoriamente de outra entidade. Por exemplo, em um clube, não existe dependente sem um sócio. Assim, a entidade dependente é fraca.

  18. MODELO ENTIDADE-RELACIONAMENTO • Atributo: Toda entidade é descrita sob a forma de atributos. É simplesmente um item que ajuda a descrever entidade. Por exemplo, uma entidade chamada ALUNO pode ter os seguintes atributos: matrícula, nome, data de nascimento, nota. • Atributo chave: Chave primária é um atributo de uma entidade, cuja função principal é identificar uma instância unicamente; deve ser um valor não nulo que não se repete dentre as instâncias de uma mesma entidade. Por exemplo, para a entidade ALUNO, a matrícula seria a chave primária, já que não podemos ter dois ou mais alunos com a mesma matrícula.

  19. MODELO ENTIDADE-RELACIONAMENTO Outros tipos de chaves: • Superchave: Conjunto de um ou mais atributos que, tomado coletivamente, permite-nos identificar unicamente uma instância de entidade. • Chaves candidatas: Chaves com unicidade em uma instância: Ex: CPF, RG, título eleitoral. Todos os atributos que conseguem identificar uma instância. • Chave secundária: Chave sem unicidade em uma instância. Ex: idade, sexo, endereço.

  20. MODELO ENTIDADE-RELACIONAMENTO • Atributo multivalorado: Atributo que pode ocorrer diversas vezes para uma mesma instância de entidade. Como exemplo, para a entidade ALUNO, podemos ter mais de um email. • Atributo composto: Atributo que pode ser desmembrado em outros atributos. Como exemplo, o atributo telefone da entidade ALUNO (formado por DDD + número do telefone). • Atributo derivado: atributo cujo valor é calculado a partir do valor de outro atributo. Ex: o atributo idade de entidade ALUNO é derivado, já que pode ser obtido a partir do valor do atributo data de nascimento.

  21. MODELO ENTIDADE-RELACIONAMENTO • Relacionamento: Termo usado para representar a associação entre entidades. • Deve ser identificado por um verbo. • Os relacionamentos possuem cardinalidade, identificação de quantas ocorrências de uma entidade têm correspondência na entidade relacionada.

  22. CARDINALIDADE Tipos de cardinalidade: • 1:1 (um para um) – cada ocorrência de uma entidade está relacionada a apenas uma ocorrência da outra entidade. • 1:N (um para muitos) - cada ocorrência de uma entidade está relacionada a várias ocorrências da outra entidade. • N:N (muitos para muitos) - cada ocorrência de uma entidade está relacionada a várias ocorrências da outra entidade e vice-versa. Este tipo de relacionamento dá origem a outra entidade.

  23. EXEMPLOS Relacionamento 1:1 Um coordenador cuida de apenas uma disciplina e cada disciplina é de responsabilidade de apenas um coordenador

  24. EXEMPLOS Relacionamento 1:N Um curso pode ter vários alunos, mas cada aluno só pode estar matriculado em um curso

  25. EXEMPLOS Relacionamento N:N Um aluno faz cursa várias disciplinas e cada disciplina pode ter vários alunos Obs: Este tipo de entidade tem representação diferente e é conhecido como ENTIDADE ASSOCIATIVA

  26. Cursa Disciplinas Aluno EXEMPLO O relacionamento CURSA descrito a seguir será transformado em entidade associativa. Nome Código RA Nome Nota

  27. AUTO RELACIONAMENTOS Tipo de situação onde uma instância de uma entidade tem relação com outra instância da mesma entidade. É fundamental saber o papel de cada instância da entidade.

  28. Casado 1 Funcionário 1 Funcionário AUTO RELACIONAMENTOS Casado Marido Funcionário 1 Esposa

  29. Generalização/Especialização • Em algumas situações, uma entidade pode conter instâncias com atributos diferentes. • Neste caso, é possível visualizar uma herança de propriedades • Para situações como essa, usamos os conceitos de generalização e especialização

  30. Cliente Código Nome P. Física P. Jurídica CNPJ CPF EXEMPLO

  31. EXEMPLO • Neste caso, a entidade CLIENTE é de um nível superior ou genérico (GENERALIZAÇÃO). • As entidades PESSOA FÍSICA e PESSOA JURÍDICA são entidades de nível inferior (ESPECIALIZAÇÃO) • Os atributos descritos na entidade CLIENTE são comuns às entidades PESSOA FÍSICA e PESSOA JURÍDICA

  32. EXEMPLO – DER (Consultório) Um médico trata de pacientes. Do médico deseja-se saber CRM, nome e suas especializações. O paciente é tratado por vários médicos. Do paciente necessitamos saber o nome, endereço e idade. O médico pede exames para o paciente. Para cada pedido de exame está associado um único tipo de exame. Tal pedido se faz com uma justificativa.

  33. CRM Nome Nome Código Endereço Trata Médico Paciente M N Especializações M N Data Nasc. Idade Pede Exames Justificativa Data Pedido 1 Tipo Exame Código Nome

  34. EXEMPLO - DER (Pizzaria) Um cliente faz pedidos. Cada pedido possui diversos itens de pedido. Cada pedido é entregue por um motoboy. Cada item corresponde a um produto.

  35. Motoboy Cód. Motoboy Entrega Nome Cód. Cliente Nome Data Pedido Cód. Pedido Faz Cliente Pedido 1 N 1 Endereço Telefone Possui Cód. Item Corresponde Produto 1 Valor N Item Cód. Produto N Descrição Quantidade

  36. EXEMPLO – DER(Empresa) Um funcionário trabalha para um departamento. Cada funcionário possui diversos dependentes. Um departamento controla diversos projetos, sendo que um projeto só é controlado por um único departamento. Diversos funcionários participam por um certo número de horas em um projeto.

  37. Código Nome Nome Código Trabalha para Funcionário Departamento N 1 N 1 1 CPF Controla Possui Qtd. Horas Participa Data Início Código Nome N Dependente N Projeto M Data Término Nome Código

  38. EXERCÍCIOS Elabore o DER considerando as seguintes regras de negócio de uma Construtora : • Uma obra possui vários Engenheiros mas um Engenheiro só pode trabalhar em apenas uma obra até a sua conclusão. • Um obra utiliza vários materiais e um material pode ser utilizado em várias obras. • Em uma obra trabalham vários pedreiros e um pedreiro pode ser escalado para trabalhar em várias obras

  39. EXERCÍCIOS • Elabore o DER considerando as seguintes regras de negócio de uma Escola : - Uma classe possui vários alunos mas um aluno só pode estudar em apenas uma classe- Um professor pode lecionar várias matérias e uma matéria pode ser lecionada por vários professores- Uma classe possui apenas um professor responsável mas um professor pode ser responsável por várias classes

  40. EXERCÍCIOS • Elabore o DER considerando as seguintes regras de negócio de uma Clínica médica : - Um médico atende vários pacientes e um paciente pode ser atendido por vários médicos.- Podem existir vários médicos de uma especialidade médica mas cada médico trabalha com apenas uma especialidade- Um médico pode ser credenciado em vários convênios e um convênio pode ter vários médicos da clínica credenciados.

  41. EXERCÍCIOS • Elabore um DER para uma biblioteca, considerando as seguintes regras de negócio: - Uma editora publica vários livros e um livro pertence apenas uma editora. - Um escritor pode escrever vários livros e um livro por vários escritores - Uma editora possui vários escritores filiados e um escritor durante sua vida Profissional pode ter se filiado a várias editoras

  42. EXERCÍCIOS • Elabore o DER considerando as seguintes regras de negócio - Em um turno estudam vários alunos e um aluno só estuda em um turno. - Em um turno trabalham vários professores e um professor pode trabalhar em vários turnos. - Cada turno tem uma coordenadora, que pode coordenar mais de um turno

  43. EXERCÍCIOS • Elabore um DER para uma empresa, considerando as seguintes regras de negócio: - Um gerente coordena vários departamentos e um departamento só tem um gerente. - Em um departamento trabalham vários funcionários e um funcionário trabalha só em um departamento. - Um dependente só pode ser relacionado a um funcionário, mas um funcionário pode ter vários dependentes

  44. EXERCÍCIOS Elabore o DER considerando as seguintes regras de negócio: - Um departamento pode requisitar vários materiais. E um material pode ser requisitado por vários departamentos. - Um fornecedor pode fornecer vários materiais, e um material pode ser fornecido por diversos fornecedores. - Um representante pode representar vários fornecedores e um fornecedor pode ser representado por vários representantes.

  45. EXERCÍCIOS Elabore o DER considerando as seguintes regras de negócio - Um professor de educação física pode ter formação para várias modalidades esportivas. E uma modalidade esportiva pode ser ensinada por vários professores. - Uma modalidade esportiva pode ser oferecida em vários turnos. E um turno pode ter várias modalidades. - Um turno pode ter várias turmas, mas cada turma pertence apenas a um turno. - Um professor leciona para várias turmas e uma turma tem vários professores

  46. EXERCÍCIOS • Elabore o DER considerando as seguintes regras de negócio  - Um professor pode lecionar em várias classes e em uma classe podem lecionar vários professores. - Um aluno pode frequentar várias classes e uma classe é frequentada por vários alunos. - Um professor é habilitado para várias disciplinas e uma disciplina tem vários professores habilitados. - Um aluno é pontuado em várias disciplinas e cada disciplina pontua vários alunos

  47. MODELO RELACIONAL • Criado por Edgar Codd (1970) • É um modelo intermediário entre os modelos conceitual e físico. • O modelo relacional é um esquema lógico bem próximo ao físico, também dependente do SGBD escolhido. • Deve ser criado conforme as definições do modelo conceitual • A maioria dos SGBDs atuais são relacionais

  48. MODELO RELACIONAL • Principais características de uma relação(tabela) • As tuplas são armazenadas na ordem em que estas forem sendo inseridas no BD • A ordem dos valores em uma tuplasegue a ordem dos atributos na definição de um esquema • O valor de cada atributo é atômico(único), não pode ser composto

  49. CodCliente Cliente Entidade: Atributos Nome Telefone MODELO RELACIONAL

  50. MODELO RELACIONAL • Relacionamentos N:N darão origem a uma nova tabela com 2 relacionamentos 1:N; • Deve-se propagar o atributo identificador (chave primária) para a tabela na qual a cardinalidade do relacionamento seja N (chave estrangeira); • Atributos multivalorados em geral dão origem a uma nova entidade/tabela (fraca).

More Related