Banco de Dados O que Banco de Dados
Banco de Dados
O que é Banco de Dados?
Definições - Banco de Dados Sistema computadorizado, cujo objetivo é armazenar informações estruturadamente e permitir ao usuário localizar e manipular essas informações quando solicitado;
Conceitos Básicos - BD Um CAMPO é a menor divisão de uma tabela permite armazenar um tipo específico de informação Ex. : Jose, 3341 -1555, ze@ig. co m Nome Fone E-mail
Conceitos Básicos - BD Registro: – coleção de itens de dados – ex. : um registro de Cliente – um registro é dividido em vários campos: • - um campo pode ser um nome, um numero ou uma combinação de caracteres; Nome Fone Zé 33465555 E-mail ze 2008@ig. c om
Conceitos Básicos - BD Arquivo/Tabela/Entidade: Estrutura bidimensional formada por linhas e colunas para armazenar dados. L 2 C 2 = 9926 -6633 L 5 C 3 = rita@ig. com Nome Fone E-mail Zé 33465555 99266633 3346 - ze@ig. com 5555 33995522 12345678 chico@ig. com rita@ig. com Ana Paulo Chico Rita ana@ig. com ppr@ig. com
Conceitos Básicos - BD Banco de Dados Formado por várias tabelas
Conceitos Básicos - BD Um Banco de Dados representará sempre aspectos do Mundo Real. A forma mais comum de interação Usuário e Banco de Dados, é através de sistemas específicos que acessam as informações através da linguagem SQL.
Conceitos Básicos - BD Os Administradores de Banco de Dados (DBA) são responsáveis pelo controle ao acesso aos dados e pela coordenação da utilização do BD. Os Analistas e Programadores de desenvolvimento, criam sistemas que acessam os dados da forma necessária ao Usuário Final, que é aquele que interage diretamente com o Banco de Dados.
Conceitos Básicos - BD Tipos de Bancos de Dados: Não Relacional – ou banco de dados de arquivos, todos os dados armazenados em uma só tabela gravada em um arquivo Banco de único Dados
Conceitos Básicos - BD Tipos de Bancos de Dados: Relacional – Estruturado com várias tabelas cujos campos exercem uma relação com campos de outras tabelas Banco de – Atualmente é o mais utilizado Dados
Conceitos Básicos - BD Tipos de Bancos de Dados: Distribuído – Usa uma rede de computadores para armazenar arquivos relacionando-os para manter sincronismo entre os dados. Banco de Dados
Sistemas de Arquivos Credito/Debito Arquivo 1 Inclusão de Conta Arquivo 2 Saldo Arquivo 3
Sistemas de Arquivos Exemplo – programas escritos em respostas às necessidades • novos programas são adicionados na medida em que as necessidades aparecem • podem ser criados novos arquivos permanentes – como podem ser programadores diferentes • arquivos podem ser de formatos diferentes • linguagens de programação podem ser diferentes – isto é um sistema de processamento de
Sistemas de Arquivos Desvantagens Redundância de dados e inconsistência – uma vez que os arquivos e programas são criados por diferentes programadores • mesma informação pode estar duplicada em diversos arquivos (ex. endereço do cliente) – maior custo de armazenamento – potencial inconsistência de dados
Sistemas de Arquivos Desvantagens Dificuldade do acesso a dados – usualmente não há um programa específico – não permite retirar dados de maneira eficaz e conveniente
Sistemas de Arquivos Desvantagens Isolamento dos dados – dados são espalhados em vários arquivos de diferentes formatos – é difícil escrever novos programas para retirada conveniente dos dados Múltiplos usuários – pode resultar em dados inconsistente – supervisão deve ser mantida no sistema
Sistemas de Arquivos Desvantagens Problemas de segurança – nem todo usuário deve ser autorizado a acessar todos os dados • caixa deveria acessar dados correntistas • departamento pessoal deveria acessar os dados funcionários – como os programas são adicionados ao sistema de forma aleatória • é difícil garantir segurança
Sistemas de Arquivos Desvantagens Problemas de integridade – valores armazenados devem satisfazer certos tipos de restrições de consistência • exemplo: saldo de uma conta nunca deve estar abaixo de um valor pré-especificado – restrições devem ser garantidas pelo sistema • pode ser conseguida colocando código apropriado nos diversos programas – mas quando novas restrições são inseridas • fica difícil alterar os programas para garanti-la – mais complicado se restrições envolvem diversos dados de diferentes arquivos
Sistemas de Arquivos Desvantagens Conduziu ao desenvolvimento de sistemas gerenciadores de banco de dados
Sistema Gerenciador de Banco de Dados Projetado para gerenciar grandes quantidades de informação Banco de Dados Aplicativos que permitem criar, alterar e excluir componentes da estrutura dos Bancos de Dados, bem como inserir, alterar e excluir os dados.
Sistema Gerenciador de Banco de Dados Os mais utilizados são Banco de Dados – ACCESS (Microsoft) – usado em banco de dados pessoais. Menos robusto. – SQL Server, ORACLE – que são usados em projetos mais volumosos banco de dados corporativos - SGBDR(Relacionais).
Sistema Gerenciador de Banco de Dados Aplicação 1 SGBD Aplicação 2 Aplicação 3 Banco de Dados
Definições - SGBD É o software responsável pelo gerenciamento: criar, manter, armazenar, recuperar os dados no Banco de Dados. Faz a integração entre BD físico e os usuários
Sistema Gerenciador de Banco de Dados Gerenciamento de banco de dados envolve: – definição de estruturas para o armazenamento da informação – provisão de mecanismos para a manipulação da informação – Segurança das informações armazenadas – Garantia da integridade e Controle de concorrência
Exemplos de operações que podem ser realizadas pelos usuários do sistema de banco de dados Acrescentar novos arquivos, vazios; Inserir novos dados em arquivos existentes; Buscar dados de arquivos existentes; Alterar dados em arquivos existentes; Eliminar dados de arquivos existentes;
Sistema Gerenciador de Banco de Dados Bancos de Dados Relacionais Bancos com várias tabelas relacionadas entre si. Ex. : Locadora de Vídeo – tabela de Clientes, Fornecedores, Locação, Fitas/DVDs Clinica Veterinária – tabela de Clientes, Animais, Consultas, Medicamentos, Financeiro. Em cada tabela será definido um campo para ser indexador da tabela, a CHAVE PRIMÁRIA ( a informação deste campo não pode ser repetida nem nula, pode haver mais de um campo com chave primária na tabela.
Sistema Gerenciador de Banco de Dados Relacionamentos: são as ligações entre campos, de tabelas diferentes, em um BD Relacional. São usados para evitar redundância, e para haver integridade.
Exemplo de Banco de Dados Veterinário 1 1 N N • Na tabela Tab. Animal não tem o nome do dono, mas no campo Dono tem um número (o código do cliente). • Este código permite que vc tenha acesso a todas as informações do cliente sem ter que armazenar tudo novamente.
Sistema Gerenciador de Banco de Dados Relacionamentos: 1 N Um para muitos (1 -N) é a relação entre a chave primaria da tabela e um campo comum em outra. Um registro na Tabela Tab. Cliente pode ter muitos registro coincidentes na Tab. Animal. Um registro na Tab. Animal só tem um registro coincidente na Tab. Cliente
Sistema Gerenciador de Banco de Dados Relacionamentos: 1 Tab. CPF 1 Um para Um (1 -1) Cada registro na Tabela A só pode ter um registro coincidente na Tabela B. Um registro na Tab. Cliente só tem um registro coincidente na Tab. CPF.
Sistema Gerenciador de Banco de Dados Relacionamentos: N N • Para este relacionamento é necessária a criação de uma terceira tabela (tabela União). Muitos para Muitos (NN) Um registro na Tabela Tab. Animal pode ter muitos registro coincidentes na Tab. Medicamento. Um registro na Tabela Tab. Medicamento pode ter varios registros coincidentes na
Sistema Gerenciador de Banco de Dados CHAVE PRIMÁRIA Campo indexador da tabela (a informação deste campo não pode ser repetida nem nula, pode haver mais de um campo com chave primária na tabela). CHAVE Estrangeira Campo da tabela B com quem a Chave primaria se relaciona.
Sistema Gerenciador de Banco de Dados Integridade Referencial: Conjunto de regras impostas pelo BD para que se mantenha a integridade entre os dados que serão inseridos ou apagados. Ex. : Cadastrar um animal comum código de Dono que não existe na tabela Tab. Cliente. Quando um registro for apagado da Chave Primária, deverão ser apagados todos os registros da Chave Estrangeira coincidentes. Ex. : Se um cliente for excluído da tabela Tab. Cliente, todos os animais pertencentes aquele cliente deverão ser excluídos também.
Sistema Gerenciador de Banco de Dados Linguagem de Consulta SQL: Usamos a linguagem de consulta para selecionar e manipular dados específicos do Banco, aumentando sua utilidade e flexibilidade (funções do SGBD).
Sistema Gerenciador de Banco de Dados Linguagem de Consulta SQL: Usamos a linguagem de consulta para selecionar e manipular dados específicos do Banco, aumentando sua utilidade e flexibilidade (funções do SGBD). É um conjunto de instruções que permitem ao usuário manipular os dados armazenados nas tabelas e a própria estrutura do banco.
Sistema Gerenciador de Banco de Dados Linguagem de Consulta SQL: A linguagem de consulta mais usada atualmente em qualquer que seja o SGBD é o SQL. Existem 2 tipos de instruções no SQL: DDL – Linguagem de Definição de Dados. – Consulta, Inserção, Alteração e Exclusão na estrutura do Banco (criação de tabelas e campos) DML – Linguagem de Manipulação de Dados. – Criação, Alteração e Exclusão de Registros.
Sistema Gerenciador de Banco de Dados DDL: CREATE Cria tabelas. CREATE TABLE Tab. Animal (Nome text(20), Sexo text(5), Dono number(5))
DDL: ALTER Sistema Gerenciador de Banco de Dados Altera a estrutura de uma tabela criada a partir da instrução CREATE TABLE. Com esta instrução podemos criar, modificar e excluir. ALTER TABLE Tab. Animal ADD COLUMN Especie text(20) ALTER TABLE Tab. Animal ALTER COLUMN Sexo text(1) ALTER TABLE Tab. Animal DROP COLUMN Sexo
Sistema Gerenciador de Banco de Dados DML: DROP EXCLUIR uma tabela do Banco de Dados DROP Tab. Animal
Sistema Gerenciador de Banco de Dados DML: Select Seleciona registro e campos específicos de uma tabela SELECT * FROM Tab. Animal WHERE Sexo = “macho”. O sinal * indica que todos os campos do registro serão mostrados.
Sistema Gerenciador de Banco de Dados DML: Select SELECT * FROM Tab. Animal WHERE Sexo = “macho” ORDER BY Nome. FROM- indica de que tabela(s) os campos serão selecionados. WHERE- critério de seleção (filtro) ORDER BY- ordenação para resultado da consulta. Ex. : ORDER BY DESC Nome
Sistema Gerenciador de Banco de Dados DML: Select SELECT Nome, Data. Nasc, Especie FROM Tab. Animal WHERE Sexo = “macho” AND Idade < 2 ORDER BY Nome.
Sistema Gerenciador de Banco de Dados DML: Insert Into Permite inserir dados nas tabelas do BD INSERT INTO Tab. Animal (Nome, Idade, Dono, Sexo) VALUES (“Rex”, 1, 0123, “macho”. O comando INSERT INTO insere um novo registro no final da Tabela.
Sistema Gerenciador de Banco de Dados DML: UPDATE Permite alterar os valores em um ou vários registros da tabela. UPDATE Tab. Animal SET Espécie = “felino” WHERE Dono = 0123.
Sistema Gerenciador de Banco de Dados DML: DELETE Permite excluir um ou vários registros da tabela. DELETE * FROM Tab. Animal WHERE Espécie = “felino”. Esta opção exclui o registro inteiro da Tabela.
Exemplo de busca: Select NOME, RAÇA, IDADE From Tab. Animal Where Dono = 00150; Resultado: Nome Raça Rex Apolo Kaos Pit Bull Poodle Labrador Idade 2 1 5
- Slides: 47