Banco É o armazenamento estruturado de um conjunto de fatos que possibilitam produção de informação. Na prática, é um ‘módulo acoplado’ à linguagem de programação que ‘apenas’ armazena as informações. Pode ser considerado um banco de dados Agenda telefônica Lista de Pedidos Catálogo de Produtos Não de Dados pode ser considerado um banco de dados Calculadora Gerador de cartelas de bingo Linguagem Realiza os cálculos, manipula os textos, controla interface gráfica e mostra as informações Operações: soma, se (if) enquanto (while) Banco de Programação de Dados Principalmente guarda as informações Operações: Inserir novas informações, Apagar informações já armazenadas, coletar informações armazenadas, atualizar informações armazenadas. Dado Valor atômico Registro de um fato isolado Não tem significado claro Importante para o usuário Menor unidade de informação Conteúdo do campo Exemplo: 4 Campo Descreve o significado de um dado Exemplo: NumeroCarro Registro ou Tupla Conjunto de campos Exemplo: Número Equipe Piloto 4 Mercedes GP Petronas F1 Team Nico Rosberg Arquivo Conjunto de registros Número Equipe Piloto 4 Mercedes GP Petronas F1 Team Nico Rosberg 10 AT&T Williams Nico Hulkenberg 11 Renault F1 Team Robert Kubica 24 Virgin Racing Timo Glock Banco de dados Armazenamento físico dos arquivos Sistema gerenciador de Banco de Dados (SGBD) Software responsável pelo armazenamento e recuperação de dados no banco de dados Décadas 50 e 60 Dados armazenados em fitas magnéticas e cartões perfurados. Década de 70 Armazenamento em discos rígidos Nascimento do banco de dados hierárquico Paciente 1 Dr João Paciente 2 Hospital Dr Antônio Dr Luis Década de 80 Surgimento do banco de dados relacional IBM System R e IBM SQL/DS Oracle V2 Década de 90 Explosão da WEB Banco de dados voltados para consultas rápidas Funcionamento 24/7 Projetos de banco de dados orientados à objeto. Anos 2000 XQUERY, um novo conceito em banco de dados Banco de dados mais confiáveis Expansão do Open Source Visão Interna É aquela vista pelo responsável da manutenção do banco de dados. Deve se preocupar com características técnicas estritas do BD, como a forma em que os dados são armazenados, como o software do banco se interage com o sistema. É a visão do desenvolvedor do banco de dados. Visão Conceitual É aquela vista pelo analista/desenvolvedor e pelo administrador do banco de dados. Deve se preocupar com segurança, confiabilidade, velocidade e qualidade do banco de dados. Esta é a nossa visão. Visão Externa É a visão do usuário final do sistema que utiliza banco de dados. Deve ser extremamente simples. O ideal é que o usuário apenas veja os dados e os comandos fiquem transparentes para ele. Externa Conceitual Interna Sistema Armazena diversos arquivos sem lógica padrão Inseguro e lento Sem padronização Redundância (dados repetidos) Somente um acesso simultâneo Banco tradicional de armazenamento: de Dados Armazena arquivos indexados (ordenados) Seguro (Senha, permissões, níveis) e mais rápido Dados padronizados Repetições controladas Vários acessos simultâneos Dado é uma informação abstrata, você consegue ler, mas não sabe onde e como se aplica. 40 kg Leite desnatado 20 dias Informação é algo que você compreende e sabe seu significado e utilidade. João pesa 40 kg Pedi para comprar leite desnatado. A promoção dura 20 dias O banco de dados serve para armazenar os dados de um programa; Uma linguagem de programação é compatível com vários bancos de dados. Um banco de dados é compatível com várias linguagens de programação. Um banco de dados pode servir a mais de um programa Um programa pode ter mais de um banco de dados. Ao analisar um caso e a partir dele montar um modelo de banco de dados, devemos observar: Entidades Atributos Relacionamentos Cardinalidade Tipos de Dados Objetos ou conceitos que possuem um conjunto de características comuns, compostas ou caracterizadas por um conjunto de atributos. Corresponde a uma tabela de um Banco de Dados. Nome Idade RG CPF Peso Altura Cor do Cabelo Tamanho calçado Um portal de fãs de esportes gostaria de registrar as novas informações sobre a temporada 2011 de fórmula 1. Os fãs gostariam de saber as informações sobre os novos carros e seus pilotos. Quais entidades podemos encontrar nesse modelo? Uma revendedora de veículos gostaria de um sistema para registrar os carros de seu estoque. Você como analista contratado, deve encontrar as entidades para montar o banco de dados. Características comuns aos objetos ou conceitos definidos pela Entidade. É qualquer propriedade de uma Entidade. Corresponde aos campos de uma tabela. Um portal de fãs de esportes gostaria de registrar as novas informações sobre a temporada 2011 de fórmula 1. Os fãs gostariam de saber as informações sobre os novos carros e seus pilotos. Sabendo que Piloto e Carro são entidades, quais os atributos? Nome: MVR-02 Motor: Consworth CA2011 Pneus: Pirelli Rodas: BBS Nome: R31 Motor: Renault RS272011 Pneus: Pirelli Rodas: OZ Nome: Timo Glock País: Alemanha Idade: 28 Estréia na F1: 2008 Nome: Jerome D’Ambrosio País: Bélgica Idade: 25 Estréia na F1: 2011 Uma revendedora de veículos gostaria de um sistema para registrar os carros de seu estoque. Você como analista contratado, deve encontrar as entidades para montar o banco de dados. Sabendo que Carro é uma entidade, quais seus atributos? Atributos importantes para revenda Em grupos de 3 alunos identifiquem ao menos três entidades presentes no grupo e façam, para cada uma, uma lista de atributos.