Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Informática II – Cap. 5-2
Bases de Dados - MsAccess
•Filipe Caldeira - 2001
Informática II
1
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Introdução
Porquê a utilização de Sistemas de
Bases de Dados (SBD)?
– Armazenamento dos dados de uma forma
consistente ( a informação não deve conter
informação divergente sobre o mesmo facto), de
fácil acesso usando linguagens de consultas e
com mecanismos de segurança para o acesso à
informação
Informática II
2
1
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Dados vs Informação
• Dados só se transformam em informação
relacionados ou interpretados de alguma forma.
quando
• As pessoas, ao tomarem decisões, utilizam a informação e
não os dados.
• A informação é uma necessidade diária em qualquer acto de
gestão e tem um papel fundamental na previsão de
actividades e resultados futuros de uma empresa.
Informática II
3
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Sistemas de Bases de Dados
Funções de um SGBD
Aplicação
A
Aplicação
B
Aplicação
C
• Descrição
• Manipulação
⇒Consulta
⇒Inserção
⇒Actualização
• Controlo
⇒Confidencialidade
⇒Segurança
Informática II
SGDB
Base de
Dados
SGBD
Sistema de Gestão de Bases de Dados
4
2
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Funcionalidades de um SGBD
• Conjunto de programas para aceder aos dados
• Evitar redundâncias e inconsistências
• Facilitar o acesso aos dados
• Permitir acesso simultaneo à informação
• Garantir a segurança dos dados
• Garantir integridade da
restrições pré-definidas
informação, de acordo com
Informática II
5
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Exemplo
Um banco quer guardar a informação dos seus
clientes e das contas.
Para além de guardar a informação, o banco
precisa de programas para
• Fazer débitos e créditos numa conta
• Abrir e fechar contas
• Ver o saldo de uma conta
• Fazer os estratos das contas
Informática II
6
3
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Vantagens
• Facilidade de partilha dos dados
• Diminuição dos custos de utilização e de pesquisa
• Diminuição dos custos de manutenção e de exploração
• Prevenção da redundância e da ambiguidade dos dados
• Consistência na formatação dos dados
• Suporte à criação de múltiplas formas de visualização da
informação
Informática II
7
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Tabelas
Os dados estão armazenados em forma de
tabelas nas diferentes bases de dados, como
o ORACLE e o ACCESS.
Para o desenho e a construcção de SBDs são
utilizados modelos conceptuais, como o
modelo Entidade-Relações
O objectivo principal é o de providenciar um
modelo independente do método de
armazenamento e acesso de dados.
Informática II
8
4
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Modelo Entidade-Relação (ER)
Identificação das “coisas” de maior importância
num dado sistema do mundo real: as
entidades, as propriedades das entidades (os
atributos), e a forma como se relacionam
entre si (as relações)
São fácilmente compreendidos pelos nãoespecialistas
O diagrama ER é o ponto de partida para o
desenho da base de dados.
Informática II
9
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Conceitos do modelo ER (1)
Entidades
– Um conjunto de
(identificar)
objectos
que
se podem
distinguir
– Exemplo:
⇒O conjunto de todos os clientes do banco.
⇒O conjunto de todas as contas do banco.
Atributos
– Propriedades de um entidade
– Exemplos: Nome, telefone e morada dos cliente
Informática II
10
5
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Conceitos do modelo ER (2)
Relações
• Conjunto de associações entre várias entidades
Conta
Cliente
33
22
Maria
11
Manuel
193710
11111
100.000$00
Lisboa
3847101
11112
50.000$00
Beja
168389
11113
60.000$00
relação
entidade
conjunto entidade
Informática II
11
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Tipos de relações
Relação “um para um” (1:1)
– Uma pessoa só tem um nº de bilhete de identidade.
Relação “um para muitos” (1:N)
– Uma turma tem vários alunos, mas um aluno só
pertence a uma turma.
Relação “muitos para muitos” (N:M)
– Uma conta bancária pode pertencer a vários clientes
e vice-versa.
Informática II
12
6
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Como distinguir entidades?
Chaves
– Um ou mais atributos que permitem distinguir entre entidades, i.e
permitem identificar (inequivocamente) cada uma das entidades
de um conjunto de entidades.
– Exemplo:
• O atributo nº de cliente da entidade clientes.
Nas relações a chave corresponde à união das
chaves das entidades associadas à relação
Informática II
13
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Exemplo de um modelo ER
d a ta
nº
M :N
c lie n te s
nº
s a ld o
c o n ta s
c lien te s /c o n ta s
nom e
m o ra d a
Informática II
te lef o n e
14
7
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Modelo Relacional /Tabelas
Como implementar o modelo ER?
– No modelo relacional em forma de tabelas
• Dado um diagrama ER, que tabelas se devem
criar?
⇒A cada conjunto entidade, e a cada conjunto
relação, vai corresponder um tabela.
• Com que atributos?
Informática II
15
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Elaborar um modelo de dados
Determinar o alcance (suas fronteiras) da análise
Identificar as entidades
Identificar as relações entre as entidades
Identificar os atributos das entidades e das
relações
Identificar a chave de cada entidade
Informática II
16
8
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Entidades
Conjunto entidade E com n
atributos a1,…,an
nome
– Deve criar-se uma tabela
com n colunas, uma para
cada atributo.
clientes
morada
telefone
clientes
...
nome morada telefone
Informática II
17
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Relações
Conjunto relação R
entre entidades
E1,…,Em com k
atributos
adicionais
a1,…,ak.
Então os atributos
da relação
correspondem às
chaves das
entidades mais
os k atributos
adicionais
a1,…,ak.
data
clientes
contas
M:N
clientes/contas
nome
morada
telefone
atributo(
R)
clientes/conta
chave(E1)
Informática II
saldo
nº cliente data
chave(E2)
18
9
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Tabelas
Clientes
Conta
Conta/
C lientes
núm ero
141
142
nom e
João
M aria
morada
Évora
Lisboa
telefone
12635
61623918
núm ero
saldo
100 200.000$00
200 50.000$00
300 100.000$00
Núm ero
cliente
141
142
142
Núm ero
Data
C onta
100
21.10.1998
100
22.10.1998
200
27.11.1998
Informática II
19
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Criação de Tabelas em Access
•Criar uma Base de Dados nova, em que se irá inserir as tabelas.
–Ficheiro > Nova > Base de Dados -> Dar nome ao ficheiro e especificar a
pasta onde ficará
Criar tabela
•Criar tabela
Informática II
20
10
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Criação de Tabelas em Access
•Cria-se uma nova tabela em Vista de Estrutura
•Zonas no ecrã para a construcção de tabelas
– Nome do Campo
•Poderão ser 64 caracteres incluindo espaços
– Tipo de Dados
•Texto (alfanumérico), Número (dados numéricos que podem ser utilizados
para cálculos), Data/Hora, Moeda, Númeração Automática (para as chaves,
autoincrementável), Sim/Não (booleana)
–Descrição (Descrição do campo)
–Propriedades do Campo (Geral ou Pesquisa)
•Para permitir alterar tamanho dos campos, controlos de verificação, buscas
em outras tabelas, etc.
Informática II
21
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Tabelas
Nome da tabela
gravar com
Ficheiro > Guardar
como
Chave
Se não fôr
indicada
nenhuma chave
primária, então o
Access propõe a
criação de uma
chave.
Informática II
22
11
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Lookup Lists (Listas de Pesquisa) - 1
•Automatização a nível da tabela para a selecção de
informação de um atributo (coluna)
–Criar tabela auxiliar para armazenar as actividades económicas
Informática II
23
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Lookup Lists (Listas de Pesquisa) - 2
–Regressar à tabela
“Clientes” e aceder às
propriedades Pesquisa
do campo “Actvidade
Económica” e alterálas como se mostra ao
lado
–Agora não é mais
preciso inserir os
conteudos deste
campo, mas sim
seleccioná-los.
Informática II
24
12
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Inserção de mais duas tabelas
–Tabela auxiliar “Tipos de Cursos”
–Tabela “Cursos
Facturados”
Informática II
25
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Como é feita a inserção com
Pesquisa na Tabela
Informática II
26
13
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Definir Relações entre as Tabelas
–Aceder ao menu
“Ferramentas” e
seleccionar “Relações”
ou botão
–Em mostrar tabela, adicioná-las
todas
Criar ligação
–Arrastar e largar
o rato do campo
na tabela “um”
para o resp. campo na tabela
“muitos”
Informática II
27
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Criar Relações entre Tabelas
Informática II
28
14
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Tabelas Criadas
Informática II
29
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Estruturação de bases de dados Access
•Determinar as tabelas necessárias à base de dados
•Determinar os atributos de cada tabela
•Determinar os atributos com valores exclusivos, i.e.,
os atributos chaves
•Determinar as relações entre as tabelas
•Aperfeiçoar a estrutura
•Adicionar os dados
Informática II
30
15
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consultas
•Não basta armazenar os dados.
−Há que, pelo menos, poder consultar os dados
armazenados.
•O que são consultas?
−Analisar a informação nas tabelas para obter um
conjunto filtrado de informação
·Que tipo de consultas existem?
−Selecção, Projecção, Junção, ...
Informática II
31
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consultas assistidas em Access
•Consultas mais usadas
–seleccionar um conjunto de campos de uma
ou várias tabelas (projecção)
–criar condições que permitam filtrar um
conjunto de registos (selecção)
–operações estatísticas sobre os registos
Informática II
32
16
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consulta de Selecção
Seleccionar Consultas > Criar consulta na vista de estrutura
Seleccionar quais as tabelas
necessárias à consulta
pretendida
Informática II
33
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Selecção de Campos
Arrastar os campos
pretendidos para as colunas da
consulta p/ a zona (QBE)
Informática II
Zona Query-byExample (QBE) onde
são especificadas
características
específicas da consulta
34
17
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Executar Consulta
–Activar a consulta seleccionando no menu Consulta >
Executar ou através do botão
Informática II
35
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Assistente de Consulta
Informática II
36
18
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consultas com Condição Simples
•Exemplo:
–Seleccionar as empresas com actividades em Informática
Indicar
critério
Resultado
Informática II
37
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consultas com Condição Múltipla
•Exemplo:
–Seleccionar as empresas com actividades em Indústria ou estejam em
Cascais
–Utilizar o LIKE para a selecção de substrings
Informática II
38
19
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consultas entre Tabelas
–Obter um conjunto de registos constituídos
por dados provenientes de várias tabelas,
havendo a necessidade de relacioná-las.
–A relação tem por base um campo comum
(p.e. o Nº de Cliente)
Informática II
39
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Exemplo: Junção das Tabelas Clientes e
Cursos Facturados
Informática II
40
20
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consultas com Campos Calculados
–Calcular “Total Curso”, ou seja multiplicar o “Nº de Participantes” e o “Custo
por Participante”
•Ao criar uma Query seleccionar ambas as tabelas “Clientes” e Cursos Facturados”
•Seleccionar os registos (veja em baixo)
•Inserir no campo
Total Curso: [Nº de participantes] * [Custo por Participante]
Informática II
41
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Operações Estatísticas
– Como, por exemplo, o
somatório ou a média
– Exemplo:
Seleccionar Σ para agrupar
• Total gasto por cada
cliente em cursos
Total Curso: Soma([Nº
de
participantes]*[Custo
por Participante])
• Agrupar pela empresa
(Group By)
Informática II
42
21
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Consultas em SQL
•Linguagem comercial padrão para consultas no
modelo relacional
•As consultas em SQL são feitas sempre segundo um
esquema
Uma pergunta típica em SQL tem a forma
select A1, A2, ... , Am
from E1, E2, ... , En
where condition
atributos
Entidades (tabelas)
Informática II
43
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Selecção
•selecção de tuplos, ou linhas, com as seguintes
condições {=
=, ≠ , <, ≤, >, ≥}
•Exemplo:
select *
from Clientes
where Nº de Clientes > 2
Informática II
44
22
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Projecção
•selecção de colunas
•Exemplo:
select Clientes.Empresa
from Clientes
Informática II
45
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Junção
•De mais de uma tabela, por exemplo as
tabelas “Clientes” e “Cursos Facturados”
select Clientes.Nº de Cliente,
Clientes.Empresa, Cursos Facturados.Designação
from Clientes, Cursos Facturados
where Designação = “Access 2000”
Informática II
46
23
Instituto Superior Politécnico de VISEU
Escola Superior de Tecnologia
Mais Exemplos
Nº de Cliente, Empresa em Lisboa
select Nº de Cliente, Empresa
from Clientes
where Morada like “Access 2000”
Total do Curso agrupado pelas empresas
select c.Empresa, cf.”Nº de participantes”,
“Nº de participantes” * “Custo por Participante”
from Clientes c, Cursos Facturados cf
group by c.Empresa
Informática II
47
24
Download

Informática II - Escola Superior de Tecnologia