Banco de Dados Fundamentos Básicos Informações e Dados INFORMAÇÃO: acrescenta algo ao conhecimento da realidade. DADO: é um registro da informação. O tratamento das INFORMAÇÕES dá origem a vários tipos de dados, porém o DADO deve registrar apenas os aspectos realmente relevantes da informação. Modelagem Conceitual Registro de um modelo que descreva o comportamento da realidade. Observação Analista REALIDADE Descreve MODELO Organiza Idéias Minimundo Modelos Modelo Conceitual: Representa ou descreve a realidade do ambiente do problema. Modelo Lógico: Define o tipo de abordagem que será utilizada na implementação do sistema (hierárquico, rede ou relacional). Modelo Físico: Define as estruturas que serão utilizadas para armazenar os dados. Termos Relacionados Tabela: É um arquivo que contém dados relacionados. Possui linhas e colunas. Linha: Dados sobre um item - REGISTRO. Campo: Cada dado armazenado em um registro. Banco de Dados: Coleção de tabelas que armazenam os dados. Refletem os aspectos de interesse da Realidade. Projeto de Banco de Dados Projeto Conceitual Projeto Lógico Projeto Físico Modelo EntidadeRelacionamento Modelo E.R.: foi definido por Peter Chen em 1976, baseado na teoria relacional criada por E.F. Codd (1970). A visão de uma dada realidade baseiase no relacionamento entre entidades. Entidade é um objeto que é distinguível de outros por um conjunto específicos de atributos. Entidades É um objeto que existe e é distinguível dos outros objetos. João Conta Corrente N Conjuntos-Entidade É um conjunto de entidades do mesmo tipo. C/C1 C/C2 C/C3 C/C4 Atributos Uma entidade é representada por um conjunto de atributos. Ex.: atributos de um conjunto-entidade Clientes podem ser nome-cliente, RGcliente, rua e cidade-cliente. Outro Ex.: atributos do conjuntoentidade Contas são nº-conta e saldo. Relacionamentos É uma associação entre diversas entidades. CLIENTES CONTAS Mapeamento de Cardinalidade Expressa o número de entidades as quais outra entidade pode ser associada por um relacionamento. Tipos de Mapeamento 1 Um-para-um: Uma entidade A está associada no máximo a uma entidade B e B está associada no máximo a uma entidada A. MARIDO ESPOSA Tipos de Mapeamento 2 Um-para-muitos: Uma entidade A está associada a qualquer número de entidades B. No entanto, B só pode estas associada e úma única entidade A. PAI DEPENDENTES Tipos de Mapeamento 3 Muitos-para-um: Uma entidade A está associada no máximo a uma entidade B. B, entretanto, pode estar associada a qualquer número de entidades A. Conta Corrente 1 Conta Corrente 2 CLIENTE Tipos de Mapeamento 4 Muitos-para-muitos: Uma entidade A está associada a qualquer número de entidades B e uma entidade B está associada a qualquer número de entidades A. VENDEDORES CLIENTES Chaves É o conjunto de atributos que permite identificar unicamente uma entidade no conjunto-entidade. Conta Corrente Nome Endereço Chave CLIENTE Chave Primária É uma chave-candidata que permite identificar uma entidade dentro do conjunto entidade. Nome Conta Corrente Chave Primária CLIENTE Chaves estrangeiras Quando a chave primária de uma tabela aparece como um campo de chave não primária em outra tabela, ela é chamada de chave estrangeira. CodEstado NomeEstado Tabela ESTADO CodEmpresa Nome Cidade Tabela EMPRESA CodEstado Chave estrangeira Integridade dos Bancos de Dados Mantém os dados coerentes, evitando que os bancos de dados contenham más informações que levam a resultados imprecisos. Diagrama EntidadeRelacionamento Um diagrama E-R consiste nos seguintes componentes: RETÂNGULOS: conjunto-entidade ELIPSES: atributos LOSANGOS: conjunto-relacionamento LINHAS: ligam atributos a conjunto-entidade e conjunto-entidade a conjunto-relacionamento Diagramas E-R: Exemplo R.G. Número Nome Data Saldo Cidade CLIENTE Endereço CLIENTE CONTA CONTA Normalizando Dados Quantas tabelas o sistema deve conter? Quais campos elas devem possuir? Quais as relações que deverão existir entre essas tabelas? Normalização de Banco de Dados Ajudam a criar Banco de Dados mais robustos, eficientes e mais facilmente modificados. Desenvolvimento mais fácil da interface com o usuário. O Sistema será mais flexível, permitindo mudanças. SQL Structured Query Language - Linguagem Estruturada de Consulta. 1974 - SEQUEL Structured English Query Language - D.D. Chamberlin. 1977 - Revisão SEQUEL - nome alterado para SQL. SQL e SGBDs SQL/DS e DB2 (IBM) ZIM (Sterling Software) ORACLE (Oracle) RDB (Digital) SYBASE (Sybase INC) SQL SERVER (Microsoft) INTERBASE (Borland/Inprise) SQL e SGBDs DDL criar (create) destruir (drop) modificar (alter) Implementação Ambiente SQL Segurança Controle Administração DML Consultar(select) Inserir(insert) Apagar(delete) Atualizar(update)