Banco de Dados
Banco de Dados Básico
Unicamp – Centro de Computação
Banco de Dados
Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir o modelo físico de uma base de dados
1
Banco de Dados
Banco de dados É uma coleção de dados inter-relacionados, representando informações sobre um domínio específico
Exemplos : Lista Telefônica Fichas do acervo de uma biblioteca
Banco de Dados
Sistema de Banco de Dados Consiste em uma coleção de dados inter-relacionados e uma coleção de programas para prover o acesso a esses dados. O objetivo principal de um sistema de banco de dados é possibilitar um ambiente que seja adequado e eficiente para uso na recuperação e armazenamento de informações.
2
Níveis de abstração
Banco de Dados
Seres,Objetos, Organismos, Fatos
Informações Informais
Mundo Real
Representa organização e suas alterações
MODELO DESCRITIVO
Descrição de Estruturas e Procedimentos
Informações Formais
MODELO CONCEITUAL
Estruturas de Informações e Definições de Manipulação
Dados
MODELO OPERACIONAL
Estruturas Externas de Dados
Bits e Bytes
MODELO INTERNO
Estruturas Internas de Arquivos
Banco de Dados
Dados Dado - conjunto de símbolos “arranjados” a fim de representar a informação fora da mente humana. Elemento de Dado - subconjunto de símbolos que compõem um dado com significado específico, mas não representa a informação completa. No exemplo : O número de alunos matriculados na disciplina mate01 no primeiro semestre / 97 é 57. Quais são os elementos de dados?? Disciplina Período Matriculados
: mate01 : primeiro semestre /97 : 57
3
Banco de Dados
Modelo de Dados Entidade
objeto” do mundo real : um ser, um fato, coisa, organismo social, etc.
Atributo
informações que se deseja guardar sobre o objeto
Relacionamento
associação existente entre elementos de entidades
Cardinalidade
número de ocorrências possíveis de cada entidade envolvida num relacionamento
Banco de Dados
Exemplos
Departamentos
Departamentos
1
1
N Alunos
lotação
chefia
matrí cula
N Funcionários
1
Funcionários
N Disciplinas
4
Banco de Dados
Dados Cadastrais do Funcionário Matrícula: Matrícula
Nome:
Data Nasc:
Nacionalidade:
Sexo:
Est.Civil:
RG:
CIC:
Endereço:
Telef:
Data Admissão: Cargos Ocupados Cargo:
Dt Início:
Dt Fim:
Cargo:
Dt Início:
Dt Fim:
Departamentos de lotação Depto: Depto:
Dt Início:
Dt Fim:
Dt Início:
Dt Fim:
Dependentes Nome: Nome:
Data Nasc: Data Nasc:
Banco de Dados
N
N
lotação
Departamentos Código depto Descrição
Matrícula Código Depto Dt Inicio Dt fim
Funcionários Matricula Nome Data Nasc Nacionalidade Sexo Estado civil Rg Cic Endereço Telefone Data Admissão
N ocupação
N
Cargos Código cargo Descrição
Matrícula Código Cargo Dt Inicio Dt fim
1 tem
N Dependentes
Matrícula Nome Dependente Dt Nascimento
5
Banco de Dados
Sistema Gerenciador de Banco de Dados São softwares que permitem a definição de estruturas para armazenamento de informações e fornecimento de mecanismos para manipula-las.
Exemplos : Access DB2 Oracle
Características de um SGBD Integridade
Banco de Dados
Restrições
Segurança/Privacidade
Restauração
Reorganização
Eficiência
6
Banco de Dados
Principais Objetos de um SGBD
Tabelas
Visões
Índices
Tabela Objeto criado para armazenar os dados fisicamente
Banco de Dados
Os dados são armazenados em linhas (registros) e colunas (campos)
Os dados de uma tabela normalmente descrevem um assunto tal como clientes, vendas, etc.
7
Exemplo
Banco de Dados
• Tabela de Clientes
linhas
RG
colunas
Nome
Cidade
Telef
12345
João da Silva
Campinas
2639900
89476
Maria Barreto
São Paulo
5764928
27489
José Buscapé
Valinhos
9913421
Banco de Dados
Chave Primária Permite a classificação única de cada registro de uma tabela
Exemplos de chave primária:
RG CPF Matrícula RA
8
Tabelas Resultantes Lotação Departamentos
Banco de Dados
Funcionários Matricula Nome Data Nasc Nacionalidade Sexo Estado civil Rg Cic Endereço Telefone Data Admissão
Matrícula Código Depto Dt Inicio Dt fim
Código depto Descrição
Ocupação Matrícula Código Cargo Dt Inicio Dt fim
Cargos Código cargo Descrição
Dependentes Matrícula Nome Dependente Dt Nascimento
Banco de Dados
Visões
Tabela lógica de um banco de Dados, não contém dados
9
Tipos de Visão Visão Idêntica
Banco de Dados
Visão
Tabela A
B
C
A
B
C
Tipos de Visão
Banco de Dados
Visão por Seleção de Colunas Visão
Tabela A
B
C
A
C
10
Tipos de Visão Visão por seleção de Linhas
Banco de Dados
Visão
Tabela A
B
C
A
B
C
Tipos de Visão
Banco de Dados
Visão por Seleção de Linhas e Colunas Visão
Tabela A
B
C
A
B
11
Tipos de Visão
Visão por junção de Tabelas
Banco de Dados
Tabela 1 A
B
C
Visão A
Tabela 2 A
X
B
C
X
Y
Y
Índice É uma ferramenta usada pelo gerenciador de Banco de Dados para facilitar a busca de linhas dentro de uma tabela
Banco de Dados
Índice Único Índice criado a partir da chave primária, não permite a inclusão de linhas duplicadas Índice de Performance Facilita a busca de linhas na tabela
12
No exemplo Lotação Departamentos
Funcionários
Matrícula Código Depto Dt Inicio
Banco de Dados
Matricula Nome Data Nasc Nacionalidade Sexo Estado civil
Código depto Descrição
Dt fim
Rg
Ocupação
Cic Endereço Telefone Data Admissão
Matrícula Código Cargo Dt Inicio Dt fim
Cargos
Código cargo Descrição
Dependentes
Matrícula Nome Dependente Dt Nascimento
Ficha Médica Número paciente:
Banco de Dados
Data Nasc:
Nome: Sexo:
Est.Civil:
Convênio:
RG:
Telef:
Endereço: Consultas Núm Consulta
Data
Médico
Diagnóstico
Exames Núm Consulta
Exame
Data
Resultados
13
Banco de Dados
Modelo de dados N
Paciente
1
1
pertence
agenda
Convênio
N Consulta
N
1 N Exame
atende solicita
1 Médico
Tabelas Banco de Dados
Paciente num-pac nome-pac sexo data-nasc cod-convênio endereço RG est-civil telefone
Consulta
Exame
num-consulta num-pac cod-médico data diagnóstico
num-consulta tipo-exame data resultado
Médico
Convênio
cod-médico nome
cod-convênio nome
14