bases de dados - conceitos introdutórios
TRANSCRIPT
Bases de Dados
Clara Ferreira
Ficheiros, Registos e CamposHá dois tipos de ficheiros que devemos considerar:• Programas• Ficheiros de Dados
• Podem ser Bases de Dados – conjunto de registos estruturados em campos• No Excel podemos guardar informação sob a forma de Base de Dados. Só há um problema,
não conseguimos relacionar tabelas entre si…
Nº Nome Nota1 Adérito Ferreira 32 André Curto 33 Carlos Santos 44 Cátia Ferreira 3
Registo
Campo
Bases de Dados
Clara Ferreira
Ficheiros, Registos e Campos
• A uma Base de Dados (BD), podemos fazer diversas operações:• Ordenar registos• Consultar registos• Introduzir filtros a uma consulta• Apagar e acrescentar campos• Elaborar relatórios
Bases de Dados
Clara Ferreira
Principais tipos de Operações com um SGBD• Operações de definição e alteração da estrutura de uma
BD:
• Criação de uma nova BD• Criação de um novo Ficheiro ou tabela• Alteração da estrutura de campos de uma tabela• Criação e alteração de ficheiros e índices• Eliminação de dados
NívelConceptual
Bases de Dados
Clara Ferreira
Principais tipos de Operações com um SGBD• Operações de manipulação de
dados
• Consultas de dados• Inserção de novos dados• Alteração de dados existentes• Eliminação de dados
NívelVisualização
Bases de Dados
Clara Ferreira
Principais tipos de Operações com um SGBD• Operações de controlo de dados
• Atribuição ou supressão de direitos de acesso aos dados pelos utilizadores
Nível Visualização – pelo Administrador da BD
Bases de Dados
Clara Ferreira
Modelo E-R• O Modelo Entidade-Relacionamento é muito útil para definir o
esquema geral de uma BD.
Bases de Dados
Clara Ferreira
Modelo E-R
• No Modelo E-R:• Entidade é uma tabela• Atributos são campos• Registos são os vários elementos de uma entidade
Nº Nome Nota1 Adérito Ferreira 32 André Curto 33 Carlos Santos 44 Cátia Ferreira 3
Registo
Atributo
Entidade
Bases de Dados
Clara Ferreira
Modelo E-R
• Os atributos (campos) contêm valores que pertencem a um domínio:• Texto (<=256)• Número • Numeração automática (gera automaticamente um número único para cada registo à
medida que este é adicionado a uma tabela. Podem ser gerados três tipos de números: sequencial, aleatório e ID de replicação)
• Data/Hora• Memo (> 255 caracteres e <= 65.536 caracteres)• OLE (textos formatados e imagens)• Hiperligação
Bases de Dados
Clara Ferreira
Modelo E-R
• Tipos de relacionamentos (quanto ao número de entidades na relação):
• Relações Unárias
• Relações Binárias
• Relações Ternárias
Empregados
Fornecedores Produtos
Empregados Departamentos
Projectos
Bases de Dados
Clara Ferreira
Modelo E-R
• As Relações Binárias podem ser:• Um para Um
• Um para Muitos
• Muitos para Muitos
Bases de Dados
Clara Ferreira
Modelo E-R
• Os relacionamentos podem ter Participação:• Obrigatória em ambas as entidades
• Obrigatória numa só entidade
• Não obrigatória
Bases de Dados
Clara Ferreira
Modelo E-R
• Chaves• Atributo ou conjunto de atributos que permite identificar sem nenhuma
dúvida cada registo de uma tabela• Podem ser:
• Simples – um só atributo
• Concatenada – mais que um atributo
CodDepartDepartamentoOrçamento
Departamentos
NºEncomendaCodArtigoQuantidade
ItensEncomen
Bases de Dados
Clara Ferreira
Modelo E-R
• Chaves• Quando queremos relacionar tabelas, é através das suas chaves• Chave Primária – Chave de uma tabela
• Chave Externa – Chave incluída numa tabela para efeitos de relacionamento
CodDepartDepartamentoOrçamento
Departamentos
Chave Primária
NºEmpregadoNomeVencimentoCodDepart
Empregados
CodDepartDepartamentoOrçamento
Departamentos
1
M Chave Externa
Bases de Dados
Clara Ferreira
Modelo E-R
• Regras:• Numa BD, cada tabela tem um nome único• Cada atributo tem um nome único dentro de uma tabela• As chaves não podem receber registos com valores nulos• Numa tabela, não podem haver linhas iguais
Bases de Dados
Clara Ferreira
Modelo E-R• Integridade Referencial – Um valor de uma chave externa tem que
existir obrigatoriamente onde essa chave é primária
CodDepart Departamento Orçamento1 Vendas 300.000 €2 Marketing 250.000 €3 Recursos Humanos 200.000 €
NºEmpregado Nome Vencimento CodDepart1 Paulo Reis 1.200 € 42 André Ferreira 2.000 € 13 Mafalda Batalha 1.800 € 2
Bases de Dados
Clara Ferreira
Análise do E_R
• Situação em que é necessária uma tabela:• Relacionamento Unário
• Relacionamento Binário – Um para Um – participação obrigatória de ambos os lados
Empregados
Empregados Departamentos
Imaginemos uma empresa pequena com apenas um empregado por Departamento
1 1
Bases de Dados
Clara Ferreira
Análise do E_R
• Situação em que são necessárias duas tabelas:• Relacionamento Binário – Um para Um – participação obrigatória de um lado
• Relacionamento Binário – Um para Vários – participação obrigatória do lado vários
Sócios Cargos
Imaginemos uma instituição onde os sócios podem ou não ter cargos, mas cada cargo tem que ser ocupado por um sócio
1 1
Sócios Cargos1 N
Imaginemos uma instituição onde os sócios podem ou não ter cargos, mas os cargos têm que ser ocupados pelos sócios
Bases de Dados
Clara Ferreira
Análise do E_R
• Situação em que são necessárias três tabelas:• Relacionamento Ternário
• Relacionamento Binário – Vários para Vários
Empregados Departamentos
Projectos
Fornecedores ProdutosN N
Bases de Dados
Clara Ferreira
Análise do E_R
• Situação em que são necessárias três tabelas (cont.):• Relacionamento Binário – Um para Vários – sem participação do lado vários
• Relacionamento Binário – Um para Um – sem participação dos dois ladosProfessores Clubes1 1
Alunos Código Postal1 N
Bases de Dados
Clara Ferreira
NormalizaçãoDados não normalizados
1ª Forma NormalTodos os atributos estão definidos em domínios.Não há conjuntos de atributos repetidos para um determinado género de característica.
2ª Forma NormalA tabela já se encontra na 1FNTodos os atributos não chave são funcionalmente dependentes da chave na sua totalidade e não apenas de parte da chave
3ª Forma NormalA tabela já se encontra na 2FNNenhum atributo não chave depende funcionalmente de nenhum outro atributo não chave
Analisar a informação e elaborar de tabelasProcurar incluir todos os atributos importantes
Impedir que seja possível incluir mais que um valor em cada campo de uma tabelaEliminar atributos repetidos
Identificar a chave de uma entidadeSe a chave só tem um atributo, e a tabela já está na 1FN, então, também está na 2FNSe a chave é concatenada, analisam-se as dependências dos outros atributosSe algum ou alguns dos outros atributos dependem de uma parte da chave, a tabela deverá ser decomposta, por forma a que cada atributo dependa apenas da totalidade da chave.
Analisar todos os atributos não chave e procurar dependências funcionaisSe existir algum conjunto de atributos que tenha uma dependência funcional em relação a um outro atributo, então, decompõem-se a tabela até que não haja qualquer dependência funcional entre os atributos não chave
Bases de Dados
Clara Ferreira
Fases da Criação de uma BD Relacional• Análise da situação• Elaboração da estrutura geral – ER• Definição exacta das entidades – Atributos, Domínios e Chaves• Determinação de Relacionamentos• Normalização• Criação da BD• Criação dos Formulários, Consultas, Relatórios e Procedimentos