Sistemas de Gestão de Bases de Dados:
Introdução ao Microsoft Access.
Uma base de dados é uma colecção de dados estruturados
de forma a permitir a sua consulta, actualização e
processamento.
Ou seja, uma base de dados é um contentor de dados
agrupados.
BASE DE DADOS (I)
Ivan Sousa Coutinho
Com uma base de dados digital podemos encontrar
rapidamente, qualquer informação relevante sobre
determinado assunto.
O telemóvel é um exemplo de uma base de dados onde se
pode guardar informação sobre amigos.
BASE DE DADOS (II)
Ivan Sousa Coutinho
Quefunções são importantes numa
base de dados?
Ordenar os registos com base em um ou
mais critérios
Consultar os dados, um registo de cada vez
Aplicar critérios de consulta e de filtragem
para procurar e visualizar apenas os dados
que nos interessam
Organizar relatórios a partir de
agrupamentos de dados com base num dos
campos
Exemplo: relatório dos produtos mais vendidos;
relatório com os clientes que vivem em Lisboa;
etc.
OPERAÇÕES PRETENDIDAS
Ivan Sousa Coutinho
Sistema de Gestão de Bases de Dados
Software que gere e permite a utilização de uma
base de dados, isto é, serve de interface entre os
vários utilizadores e a BD
Um Sistema de Gestão de Bases de Dados está
organizado em camadas
(como quase tudo em Informática)
SGBD
Ivan Sousa Coutinho
Camada de
Visualização
Camada SGBD
Conceptual
Camada Física
SGBD
Ivan Sousa Coutinho
A Camada Física (ou Camada de Persistência)
trata do armazenamento dos dados em discos
rígidos. Esta camada é responsável por:
Guardar os dados no disco de forma segura
Evitar erros causados por falhas do software
Gerir concorrência (utilização dos dados por dois
programas diferentes)
CAMADA FÍSICA
Ivan Sousa Coutinho
A Camada Conceptual (ou Camada de
Negócio) trata da organização e estruturação
dos dados, e é responsável por:
Gerir as tabelas e as relações entre tabelas
Garantir a integridade (coerência) dos dados
Permitir a organização dos dados em relatórios e
em consultas
CAMADA CONCEPTUAL
Ivan Sousa Coutinho
A Camada de Visualização (ou Camada de
Interface) trata da apresentação dos dados aos
utilizadores e é responsável por:
Disponibilizar interfaces gráficas que permitem aos
utilizadores inserir, alterar e consultar dados da
base de dados
Tornar essas tarefas fáceis de executar para todo
o tipo de utilizadores
CAMADA DE VISUALIZAÇÃO
Ivan Sousa Coutinho
Camada de
Visualização
SGBD
Camada
Conceptual
Camada Física
SGBD
Ivan Sousa Coutinho
Um SGBD fornece funções dos seguintes tipos:
Segurança
deve proteger a BD de utilizadores não autorizados;
Integridade dos dados
proteger a BD de utilizadores autorizados, evitando
que estes executem tarefas que ponham em risco a
integridade da informação (não permite, por
exemplo, que se apague dados de um sítio que são
necessários noutro sítio da BD)
TIPOS DE OPERAÇÕES (I)
Ivan Sousa Coutinho
Um SGBD fornece funções dos seguintes tipos:
Controlo e acesso aos dados
num sistema com muitos utilizadores, a partilha de
dados tem de ser feita de modo a que cada
utilizador a use como se estivesse sozinho
Recuperação e tolerância a falhas
sempre que ocorram falhas, por exemplo do
disco, de hardware ou de software, o SGBD tem
de reconstruir a BD até ao momento em que
ocorreu a falha;
TIPOS DE OPERAÇÕES (II)
Ivan Sousa Coutinho
Os dados podem estar agrupados de várias
formas, mas a mais comum é a organização em
Tabelas.
Uma organização em Tabela permite separar os
dados segundo o tipo de entidades que
representam.
NOÇÕES DE BASE DE DADOS
Ivan Sousa Coutinho
TABELA
Uma Tabela é uma estrutura de dados que
os organiza em registos e campos.
Tabela Campo
Nome Código Postal Telefone
Registo José Pedro 1100-346 91 123 45 67
José Rainho 1600-186 93 111 22 33
José Cid 3400-999 96 044 55 66
Ivan Sousa Coutinho
Dados
elementos que caracterizam uma entidade
(pessoas, objetos ou organização). Numa BD,
uma entidade corresponde a uma tabela
Campo
característica
ou atributo individual,
representado em colunas de uma tabela
Registo
linhade uma tabela com a informação de cada
elemento de uma entidade
NOÇÕES DE BASE DE DADOS (I)
Ivan Sousa Coutinho
Tabela
elemento suporte da BD, que se estrutura
segundo campos (colunas) e registos (linhas)
Relação
agrupamento de dados sem repetição,
armazenado como uma tabela num SGBD
relacional
Associação
representa a forma como duas ou mais
entidades se relacionam entre si
NOÇÕES DE BASE DE DADOS (II)
Ivan Sousa Coutinho
Uma tabela cujos registos são contactos de uma
agenda
Quais os campos apropriados?
Uma tabela cujos registos são artigos
comercializados por uma loja
Quais os campos apropriados?
EXEMPLOS
Ivan Sousa Coutinho
Um dos campos de uma tabela será a
chave primária da tabela
Chave primária: identifica univocamente um
registo
Dois registos não podem ter a mesma chave
primária
Recomenda-se que a chave primária seja um
número
Exemplo: numa tabela cujos registos sejam
alunos de uma turma, a chave primária
poderá ser o número de aluno
CHAVE PRIMÁRIA
Ivan Sousa Coutinho
Nos SGBD relacionais as unidades
fundamentais de uma BD são as tabelas, e
cada tabela representa um tipo de informação
independente que, relacionada com outras,
mediante um conjunto de associações
especificas, permite obter a finalidade
pretendida. Ou seja BD constituídas por
tabelas e relacionadas entre si.
MODELO RELACIONAL
Ivan Sousa Coutinho
Os relacionamentos entre tabelas
podem ser de 3 tipos:
1 – 1:1 (um –para-um)
2 – 1:∞ (um-para-muitos)
3 - ∞:∞ (muitos-para-muitos)
Nota: O relacionamento do tipo 3 é partido
em dois relacionamentos do tipo 2, criando
uma tabela de ligação
RELACIONAMENTOS
Ivan Sousa Coutinho
Ao normalizarmos a informação estamos a
garantir:
A não existência de redundâncias (cada dado
deve ser armazenado uma única vez e numa
única localização);
Consistência da Informação - Qualquer operação
de manipulação da informação (Inserção,
Alteração, Destruição) deve afectar uma só
ocorrência de um dado;
1ª, 2ª e 3ª Formas Normais
NORMALIZAÇÃO (I)
Ivan Sousa Coutinho
1º Forma Normal:
Visa eliminar a existência de grupos de
valores repetidos, isto é, a uma
ocorrência da chave, só pode
corresponder uma ocorrência dos outros
atributos não chave.
Exemplo:
Tabela Funcionário (Código, Nome, Sexo,
Categoria, AnosCat)
Na 1FN:
Tabela Funcionário (Código, Nome, Sexo)
Tabela Categorias (Código, Categoria,
AnosCat)
NORMALIZAÇÃO (II)
Ivan Sousa Coutinho
2º Forma Normal:
Diz-se que um agrupamento está na 2ªFN se,
e só se, estiver na 1ªFN e se cada atributo
não chave depender funcionalmente da
totalidade da chave
Exemplo:
Tabela Fornecedor (CodForn, CodArt, NomeForn,
MoradaForn, PreçoArt)
Na 2FN:
Tabela Fornecedor (CodForn, NomeForn,
MoradaForn)
Tabela Preços (CodForn, CodArt, PreçoArt)
NORMALIZAÇÃO (III)
Ivan Sousa Coutinho
3º Forma Normal:
Diz-se que um agrupamento esta na 3FN se
já estiver na 2FN e nenhum dos seus atributos
depender funcionalmente de atributos não
chave
Exemplo:
Tabela Funcionários (CodFunc, NomeFunc,
Vencimento, CodProjecto, DataEntrega)
Na 3FN:
Tabela Funcionários (CodFunc, NomeFunc,
Vencimento, CodProjecto)
Tabela Projectos (CodProjecto, DataEntrega)
NORMALIZAÇÃO (IV)
Ivan Sousa Coutinho
O diagrama entidades-relacionamentos
assenta numa convenção gráfica que tem
como intuito apresentar rápida e claramente as
entidades envolvidas e como é que as mesmas
se relacionam entre si.
Num Diagrama E-R as entidades são
representadas por retângulos e os
relacionamentos por linhas entre esses
retângulos. Nos retângulos colocam-se os
nomes das diferentes entidades. As linhas
apresentam setas que definem o sentido da
relação e cuja forma caracteriza o tipo de
relacionamento existente entre duas entidades.
DIAGRAMA ENTIDADE
RELACIONAMENTO (E/R) (I)
Ivan Sousa Coutinho
Professor Estágio Aluno [Link]
Nome
Cod. Docente Cod. Estágio
Morada
Nome Nome
Telefone
Morada Data Inicio
Cod. Estágio
Telefone Data Fim
Departamento Número de Alunos
Cod. Docente
Nº Requisição Requisição Material Referência
Cod. Aluno Designação
Data Qt. Mínima
Qt. Stock
Material
Requisitado
DIAGRAMA E/R (II) Nº Requisição
Referência
Qt. Requisitada
Ivan Sousa Coutinho