Bases de Dados
Clara Ferreira
Ficheiros, Registos e Campos
Há 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 Nota
1 Adérito Ferreira 3
2 André Curto 3
3 Carlos Santos 4
4 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ível
Conceptual
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ível
Visualizaçã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 Nota
1 Adérito Ferreira 3
2 André Curto 3
3 Carlos Santos 4
4 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
CodDepart
Departamento
Orçamento
Departamentos
NºEncomenda
CodArtigo
Quantidade
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
CodDepart
Departamento
Orçamento
Departamentos
Chave Primária
NºEmpregado
Nome
Vencimento
CodDepart
Empregados
CodDepart
Departamento
Orç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çamento
1 Vendas 300.000 €
2 Marketing 250.000 €
3 Recursos Humanos 200.000 €
NºEmpregado Nome Vencimento CodDepart
1 Paulo Reis 1.200 € 4
2 André Ferreira 2.000 € 1
3 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 Cargos
1 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 Produtos
N 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 lados
Professores Clubes
1 1
Alunos Código Postal
1 N
Bases de Dados
Clara Ferreira
Normalização
Dados não normalizados
1ª Forma Normal
Todos 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 Normal
A tabela já se encontra na 1FN
Todos os atributos não chave são
funcionalmente dependentes da chave na sua
totalidade e não apenas de parte da chave
3ª Forma Normal
A tabela já se encontra na 2FN
Nenhum atributo não chave depende
funcionalmente de nenhum outro atributo não
chave
Analisar a informação e elaborar de tabelas
Procurar incluir todos os atributos importantes
Impedir que seja possível incluir mais que um valor em cada campo de uma tabela
Eliminar atributos repetidos
Identificar a chave de uma entidade
Se a chave só tem um atributo, e a tabela já está na 1FN, então, também está na 2FN
Se a chave é concatenada, analisam-se as dependências dos outros atributos
Se 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 funcionais
Se 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

Bases de Dados - Conceitos introdutórios

  • 1.
    Bases de Dados ClaraFerreira Ficheiros, Registos e Campos Há 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 Nota 1 Adérito Ferreira 3 2 André Curto 3 3 Carlos Santos 4 4 Cátia Ferreira 3 Registo Campo
  • 2.
    Bases de Dados ClaraFerreira 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
  • 3.
    Bases de Dados ClaraFerreira 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ível Conceptual
  • 4.
    Bases de Dados ClaraFerreira 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ível Visualização
  • 5.
    Bases de Dados ClaraFerreira 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
  • 6.
    Bases de Dados ClaraFerreira Modelo E-R • O Modelo Entidade-Relacionamento é muito útil para definir o esquema geral de uma BD.
  • 7.
    Bases de Dados ClaraFerreira 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 Nota 1 Adérito Ferreira 3 2 André Curto 3 3 Carlos Santos 4 4 Cátia Ferreira 3 Registo Atributo Entidade
  • 8.
    Bases de Dados ClaraFerreira 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
  • 9.
    Bases de Dados ClaraFerreira 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
  • 10.
    Bases de Dados ClaraFerreira Modelo E-R • As Relações Binárias podem ser: • Um para Um • Um para Muitos • Muitos para Muitos
  • 11.
    Bases de Dados ClaraFerreira Modelo E-R • Os relacionamentos podem ter Participação: • Obrigatória em ambas as entidades • Obrigatória numa só entidade • Não obrigatória
  • 12.
    Bases de Dados ClaraFerreira 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 CodDepart Departamento Orçamento Departamentos NºEncomenda CodArtigo Quantidade ItensEncomen
  • 13.
    Bases de Dados ClaraFerreira 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 CodDepart Departamento Orçamento Departamentos Chave Primária NºEmpregado Nome Vencimento CodDepart Empregados CodDepart Departamento Orçamento Departamentos 1 M Chave Externa
  • 14.
    Bases de Dados ClaraFerreira 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
  • 15.
    Bases de Dados ClaraFerreira Modelo E-R • Integridade Referencial – Um valor de uma chave externa tem que existir obrigatoriamente onde essa chave é primária CodDepart Departamento Orçamento 1 Vendas 300.000 € 2 Marketing 250.000 € 3 Recursos Humanos 200.000 € NºEmpregado Nome Vencimento CodDepart 1 Paulo Reis 1.200 € 4 2 André Ferreira 2.000 € 1 3 Mafalda Batalha 1.800 € 2
  • 16.
    Bases de Dados ClaraFerreira 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
  • 17.
    Bases de Dados ClaraFerreira 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 Cargos 1 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
  • 18.
    Bases de Dados ClaraFerreira 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 Produtos N N
  • 19.
    Bases de Dados ClaraFerreira 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 lados Professores Clubes 1 1 Alunos Código Postal 1 N
  • 20.
    Bases de Dados ClaraFerreira Normalização Dados não normalizados 1ª Forma Normal Todos 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 Normal A tabela já se encontra na 1FN Todos os atributos não chave são funcionalmente dependentes da chave na sua totalidade e não apenas de parte da chave 3ª Forma Normal A tabela já se encontra na 2FN Nenhum atributo não chave depende funcionalmente de nenhum outro atributo não chave Analisar a informação e elaborar de tabelas Procurar incluir todos os atributos importantes Impedir que seja possível incluir mais que um valor em cada campo de uma tabela Eliminar atributos repetidos Identificar a chave de uma entidade Se a chave só tem um atributo, e a tabela já está na 1FN, então, também está na 2FN Se a chave é concatenada, analisam-se as dependências dos outros atributos Se 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 funcionais Se 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
  • 21.
    Bases de Dados ClaraFerreira 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