Vous êtes sur la page 1sur 40

Access

susana.pimentel@aeportugal.pt Susana Pimentel @2018


O que é uma Base de Dados?
Uma base de dados é uma coleção de informação relacionada
entre si, à volta de um determinado tema ou domínio.

De uma forma simples podemos definir uma base de dados


como sendo uma colecção de dados, como por exemplo as
coordenadas dos clientes, as características dos produtos,
vendas de serviços, etc.
O que é um Sistema de Gestão de Base de
Dados (SGBD)?
• É uma ferramenta construída para gerir a informação que se
encontra armazenada numa base de dados.
• Permite-lhe encontrar exactamente a informação pretendida.
• Deve disponibilizar um conjunto de tarefas para:
• permitir a definição dos dados a armazenar, isto é, criar a estrutura da base
de dados;
• receber e armazenar a informação corretamente, por forma a evitar a sua
redundância;
• disponibilizar ferramentas de atualização dos dados (inserção, alteração e
eliminação);
• facultar mecanismos de consulta e listagem/impressão da informação;
• estabelecer medidas de segurança e níveis de acesso à informação;
Modelos de Base de Dados
• 1ª geração
• Modelo Hierárquico
• Modelo em Rede

• 2ª geração
• Modelo Relacional

• 3ª geração
• Modelo Orientado a Objetos
Base de Dados Relacional
• Os dados são organizados em conjuntos relacionados
logicamente entre si

• O utilizador pode consultar a Base de Dados sem ter


necessidade de saber a forma como os dados estão
fisicamente armazenados

• Permite efetuar consultas sobre os dados armazenados


Dados vs Informação
• Os dados representam um conjunto de factos

• Os dados só se transformam em informação quando


relacionados ou interpretados de alguma forma

• A tomada de decisão é baseada em informação e não em


dados

• A informação é uma necessidade diária em qualquer ato de


gestão
Modelo ER (Entidade-Relação)
• Modelo de fácil compreensão que reflete uma situação real
• Identificamos Objetos (Entidades) com as suas propriedades
(Atributos), e a forma como se relacionam (Relações)

NCliente Nome NIF NProd Descrição VUnit

Cliente Compra Produto


ACCESS como SGBD

• Permite manipular bases de dados de diversos tipos;

• Permite a interatividade com outros produtos Office;

• Pode trabalhar em rede (ambiente multi-utilizador);

• Os ficheiros criados pelo Access possuem a extensão MDB ou


ACCDB
Ambiente ACCESS

1. Menu File
2. Menu Home
3. Menu Create
4. Menu External Data
5. Menu Database Tools
Objetos do ACCESS

• Tables (Tabelas) são o armazém dos dados. Vistos como listas de registos

• Queries (Consultas) são utilizadas para filtrar a informação existente nas tabelas

• Forms (Formulários) são janelas que se apresentam aos utilizadores de uma base
de dados para que possam manipular de forma fácil e amigável os dados

• Reports (Relatórios) são formatos de apresentação dos dados para gerar cópias
impressas da informação registada na base de dados

• Macros são ferramentas de automatização das tarefas que se pretendem a


realizar

• Code (Código) conjunto de instruções e procedimentos do Visual Basic


guardados, que permitem efetuar rotinas específicas (validações, cálculos, etc.)
Tabelas (Tables)

• Objeto principal de recolha e armazenamento de dados

• Cada Tabela deve representar, na Base de Dados, uma Entidade

• Os Atributos ou Caraterísticas da Entidade são representados por


Campos, graficamente vistos como Colunas

• Cada Instância da Entidade é definida como Registo


Tabelas (exemplo)
Campo
Tabela Clientes
Dado
Chave

NumCliente NIF Nome Localidade Telefone Email


1 111111111 Manel & Manel, Lda Porto 919999999 manel@manel.pt
2 222222222 Maria Irene Martins Matosinhos 928888888 maria@maria.pt
3 333333333 João Francisco Silva Sra Hora 917777777 joao@joao.pt
4 444444444 Manuel Saraiva Pinto Maia 936666666 saraiva@saraiva.pt

Registo
Tipos de Dados
SHORT TEXT
Permite uma sequência de caracteres de tamanho limitado.
O limite máximo é de 255 carateres e define-se nas propriedades do campo.
O tamanho pode ser definido na Janela de Propriedades (Field Properties)

LONG TEXT
Permite uma sequência de caracteres de tamanho 65 535.
Uma das vantagens é a de se poder utilizar este tipo campo de dados para ir
armazenando informações pertinentes ou importantes.
A grande desvantagem é não permitir algumas operações, como ordenação,
agrupamento…
Tipos de Dados
NUMBER

Este campo permite um número inteiro ou real.

Usado normalmente para cálculos matemáticos.

Por predefinição este campo é do tipo Long Integer (valores entre -2147483648 e
2147483647)

Existem diversos tamanhos e precisões: Byte, Integer, Simple, Double, Replication ID,
Decimal

São definidos nas Propriedades do campo, opção Formatar.


Tipos de Dados
DATE/TIME
Este campo permite introduzir uma Data, Hora ou ambos.
Existem diversos formatos de data e hora que podem ser definidos nas
Propriedades do campo, opção Formatar.

CURRENCY
Este campo permite um número com formato monetário.
Trata-se de um valor numérico real com formato específico para a manipulação
de valores monetários.
Utiliza o separador de milhares; mostra os números negativos entre parênteses.
O valor predefinido da propriedade é de 2 casas decimais e (€).
O formato desejado é definido nas Propriedades do campo.
Tipos de Dados
AUTO NUMBER

Este tipo de campo é um contador automático sequencial (com incremento de


uma unidade, por defeito).
Trata-se de um valor numérico que o sistema gera automaticamente para cada
registo de maneira que nunca existirão dois registos na mesma tabela com o
mesmo valor num campo deste tipo.

YES/NO
Neste tipo de campo valida-se um valor lógico.
O campo pode ter um de dois valores: Yes/No; True/False; On/Off.
A expressão de validação é definida nas Propriedades do campo
Tipos de Dados
OBJETO OLE (Object Linked Embebed)
Este campo permite usar um objeto de outra aplicação.
Esta relação pode existir através de uma ligação a um ficheiro ou pode mesmo ser
inserida na tabela. Exemplos: ficheiro de áudio, uma imagem, um vídeo, um
gráfico, um documento de texto, uma folha de Excel, etc…

HIPERLIGAÇÃO
Este tipo de campo permite por exemplo, uma ligação a um documento externo.
Isto é, um caminho para um destino, tal como um objeto, um documento, ou
página Web.
Um endereço para este tipo de campo, Hiperligação, pode ser um caminho de
Rede, um endereço para um ficheiro localizado numa rede local, ou um URL
(endereço para um site da Internet ou da Intranet).
Tipos de Dados
ATTACHMENT
Este campo permite inserir na BD um ou mais ficheiros (funcionamento análogo ao
do email)
Os ficheiros guardados com esta tecnologia poderão ser visualizados e editados
posteriormente.

CALCULATED
Não é um tipo de dados, mas sim a construção de uma fórmula que preencha
automaticamente o campo

LOOKUP WIZARD…
Este tipo de campo permite ir buscar dados a outro campo de outra tabela ou
construir uma consulta.
Propriedades dos Campos
Propriedades dos Campos
Field Size
O tamanho do campo varia conforme o tipo de dados. Se for texto refere-se ao nº
máximo de carateres para inserção (255 para o tipo Short Text). Se for numérico,
está relacionado com a interpretação do nº de algarismos possível (de Byte a Long
Integer e de Single a Decimal)
Byte: para números inteiros que variam de 0 a 255.
Integer: para números inteiros que variam de -32.768 a +32.767.
Long Integer: para números inteiros que variam de -2.147.483.647 a +2.147.483.647.
Single: para valores de ponto flutuante numérico que variam de -3,4 x 1038 a +3,4 x 1038 e até sete
dígitos significativos (nºs irracionais)
Double: para valores de ponto flutuante numérico que variam de -1,797 x 10308 a +1,797 x 10308 e até
quinze dígitos significativos (nºs irracionais – dízimas infinitas) – cálculos mais rápidos que no decimal
Replicação ID: para armazenar um GUID obrigatório para replicação de bases de dados distribuidas.
Decimal: para valores de ponto flutuante numérico que variam de -9,999... x 1027 a +9,999... x 1027.
Propriedades dos Campos
Format
No caso dos campos numéricos, temos os seguintes formatos disponíveis
Valor Valor
Formato Descrição
introduzido exibido
General Number Exibe o nº sem alteração 1234,567 1234,567
Apresenta o símbolo de moeda e o formato conforme
Currency
especificado nas definições regionais do Windows. -1234,567 (1.234,57)€
Aplica-se o símbolo do euro (€) para dados numéricos.
Euro Caso contrário, utiliza o formato de moeda
especificado nas definições regionais do Windows. 1234,567 1.234,57 €
Apresenta os números arredondado para o inteiro
Fixed
mais próximo 1234,567 1235
Apresenta os números com separadores de milhares e
duas casas decimais. Se o valor no campo contiver
mais de duas casas decimais, o Access arredondar por
Standard defeito o número com duas casas decimais. 1234,567 1.234,57
Apresenta os números como percentagens com duas
casas decimais e um sinal de percentagem à direita. Se
Percent
o valor subjacente contiver mais de quatro casas
decimais, o Access arredondar por defeito o valor. 0,123 12,30%
Apresenta os números com notação científica
Scientific
(exponencial). 1234,5 1,23E+03
Propriedades dos Campos
Format
No caso dos campos de texto, temos os seguintes formatos disponíveis
Símbolo Descrição

@
É obrigatório um carater de texto (um carater ou um espaço).
& O carater de texto não é obrigatório.
< Faz com que todos os carateres fiquem em minúsculas.

> Faz com que todos os carateres fiquem em maiúsculas.


Propriedades dos Campos
Format
No caso dos campos do tipo Data/Hora, temos os seguintes formatos disponíveis
Formato Descrição Exemplo
(Predefinição) Apresenta valores de data como números e valores de hora
como horas, minutos e segundos, seguido de AM ou PM. Para ambos os
tipos de valores, o Access utiliza os separadores de data e hora especificados 28-11-2016 03:30:00
General Date
nas definições regionais do Windows. Se o valor não apresentar um PM
componente de hora, o Access apresenta apenas a data. Se o valor não
apresentar um componente de data, o Access apresenta apenas a hora
Apresenta apenas valores de data, conforme especificado pelo formato segunda-feira, 28 de
Long Date
"Data por extenso", nas definições regionais do Windows. novembro de 2016
Apresenta a data como dd/mmm/aa, mas utiliza o separador de data
Medium Date 28-nov-16
especificado nas definições regionais do Windows.
Apresenta valores de data, conforme especificado pelo formato "Data
Short Date 28-11-2016
abreviada" nas definições regionais do Windows.
Apresenta as horas, minutos e segundos, seguido de AM ou PM. O Access
Long Time utiliza o separador especificado na definição Hora das definições regionais 3:30:00 PM
do Windows.
Apresenta as horas e minutos, seguido de AM ou PM. O Access utiliza o
Medium Time separador especificado na definição Hora das definições regionais do 3:30 PM
Windows.
Apresenta apenas horas e minutos. O Access utiliza o separador especificado
Short Time 15:30
na definição Hora das definições regionais do Windows.
Propriedades dos Campos
Input Mask
As máscaras de introdução destinam-se a facilitar e a controlar a entrada de dados
nos campos através de predefinições
Propriedades dos Campos
Input Mask
Caracter Explicação
0 É necessário introduzir um dígito (de 0 a 9)
9 Pode introduzir um dígito (de 0 a 9) Exemplos:
Pode introduzir um dígito, espaço, sinal de adição ou subtração nesta
#
posição. Se ignorar esta posição, o Access introduz um espaço em branco
L É necessário introduzir uma letra 0000-999 – Código Postal – 4primeiros dígitos
? Pode introduzir uma letra obrigatórios e os 3 restantes opcionais
A É necessário introduzir uma letra ou um dígito
a Pode introduzir uma letra ou um dígito #999 - Qualquer número positivo ou negativo,
& É necessário introduzir um carater ou um espaço máximo de quatro carateres, e sem separador de
C Pode introduzir carateres ou espaços milhares nem casas decimais
Marcadores de posição decimais e de milhares, separadores de data e
.,:;-/ hora. O carater seleccionado depende das definições regionais do
ISBN 0-&&&&&&&&&-0 - Número de livro com o
Microsoft Windows
> Converte todos os carateres seguintes em maiúsculas texto literal, primeiro e último dígitos obrigatórios e
< Converte todos os carateres seguintes em minúsculas qualquer combinação de letras e caracteres entre
Faz com que a máscara de introdução seja preenchida da esquerda para a esses dígitos
!
direita e não da direita para a esquerda
\ Os carateres imediatamente a seguir serão apresentados literalmente
"" Os carateres entre aspas serão apresentados literalmente
Propriedades dos Campos
Caption
Corresponde ao título que o campo assume.
Por predefinição é assumido o nome dado ao campo

Default Value
Valor introduzido automaticamente sempre que se insere um novo registo
Propriedades dos Campos
Validation Rule
Definição de uma condição que tem que ser respeitada no preenchimento do
campo
Alguns operadores utilizados nas regras de validação:

Símbolo Significado
> Maior
< Menor
= Igual
>= Maior ou igual
<= Menor ou igual
<> Diferente de
between "valor1"
Entre valor1 e valor2
and "valor2"
Propriedades dos Campos
Required
Se estiver com No é um campo de introdução facultativa. Caso contrário é um
campo de introdução obrigatória.
Allow Zero Length
Se estiver com a indicação Yes pode ficar vazio.
Indexed
A indexação permite a pesquisa mais rápida dos registos dentro da base de dados.

Unicode Compression
A compressão Unicode corresponde a um padrão internacional de codificação
adotado no Microsoft Office. No caso da compressão estar ativa o conteúdo dos
campos de tipo Memo e Texto podem ser comprimidos ocupando menos espaço
mas garantindo a correta apresentação do respetivo conteúdo.
Relações
One-to-one (1<->1)
Cada registo da 1ª tabela apenas pode ter um registo correspondente
na 2ª tabela (normalmente relaciona 2 chaves primárias)
One-to many (1<->∞)
Cada registo da 1ª tabela pode ter n registos correspondentes na 2ª
tabela
Many-to many (∞ <->∞)
Um conjunto de registos da 1ª tabela corresponde a um conjunto de
registos da 2ª tabela. Por norma existe uma 3ª tabela de união entre as
2 anteriores que, na prática, transforma uma relação de muitos para
muitos em 2 relações de 1 para muitos.
Integridade Referencial
Ao criar uma relação com Integridade Referencial, garante-se a coerência e
consistência da informação, já que a informação existente na tabela dependente
(filha) tem que existir obrigatoriamente na tabela principal (mãe) com a qual tem
uma relação.

A opção “Cascade Update Related Fields” indica à BD que se alterar a chave da


tabela principal, todos os registos relacionados na tabela dependente serão
automaticamente atualizados.

A opção “Cascade Delete Related Fields” indica à BD que se eliminar um registo da


tabela principal, todos os registos relacionados na tabela dependente serão
automaticamente eliminados (PERIGOSO)
Queries (Consultas)

Query Wizard
Assistente de apoio à construção de consultas.
Destacam-se:
• Find Duplicates Query Wizard – identificação de
registos duplicados numa determinada tabela
• Find Unmatched Query Wizard – encontra registos
numa tabela que não estão relacionados com outra
Query Design

Query Setup: Show/Hide:


Tipo de Vista da Construção do Query: Tipo de Query a definir: Ativa/desativa as várias
Design View – construção gráfica Consulta (select, Crosstab, Union, Pass-Through, Disponibiliza ajudas na
construção do Query zonas de construção do
SQL View – Construção através da Data Definition) query
linguagem SQL (Structured Query Ação (Make Table, Append, Update, Delete)
Language)

Lista de colunas que se pretente mostrar no conjunto de resultados

Tabela à qual pertence cada uma das colunas


Definição de agrupamentos e funções agregadoras para a informação a disponibilizar
Ordenação ascendente ou descendente da informação (sempre feita da esquerda para a direita)
Indicação se a coluna é ou não mostrada no conjunto de resultados
Condições para a pesquisa da informação
Queries – Criteria (condições)
As condições servem para filtrar a informação.
Utilizam a lógica bivalente para serem conjugadas.

AND – condicionamos um conjunto de campos a valores que têm que existir em


simultâneo num registo
Ex: NomeCliente like “A*” AND LocalidadePostal = “Porto” – retorna todos os
registos de clientes cujo nome começa por A e localizam-se no Porto

OR – condicionamos a informação ao conjunto de registos que satisfaz pelo menos


uma das condições
Ex: NomeCliente like “A*” OR LocalidadePostal = “Porto” - retorna todos os
registos de clientes que começam por A ou se localizam no Porto. Assim, neste
conjunto de resultados podems obter um António do Porto, um Abel de Lisboa ou
ainda um Baltazar do Porto
Queries – Criteria (condições)
Graficamente, condições simultâneas (AND) colocam-se em colunas e condições
cumulativas (OR) dispõe-se pelas linhas

Comparando com as operações matemáticas, AND corresponde à multiplicação e


OR corresponde à soma. Assim, e por analogia, AND tem prioridade sobre o OR
Queries – Criteria (condições)
Quando se condiciona uma determinada coluna a mais do que um valor, pode-se
usar 3 métodos distintos para conjugar as condições com o operador OR
Queries – Critérios campos de texto
Ao condicionarmos colunas cujo tipo de dados é texto, usa-se muitas vezes
carateres especiais com um significado particular:

* - simboliza qualquer sequência de carateres de qualquer tamanho (0 inclusivé)


? – simboliza um qualquer carater que possa existir naquela posição da sequência
Condição Critério

"António"
Nome do cliente seja exatamente António
= "António"
Nome do cliente não seja exatamente António Not "António"
<> "António"
Nome do Cliente começa por A Like "A*"

Cliente contém no nome Silva Like "*Silva*"

O último nome do cliente é Costa Like "*Costa"

Contém valores nulos (ou em falta) Is Null

Não contém valores nulos Is Not Null

Nome do cliente ser António mas retorna nas situações em que tem
Like "Ant?nio"
acento e não tem acento
Queries – Critérios campos numéricos
Condição Critério

Registos cujo valor seja exatamente 100 =100

Not 1000
Registos cujo valor não seja 1000

<> 1000
Registos cujo valor é menor que 100

< 100
Registos cujo valor é menor ou igual que 100
<= 100

Registos cujo valor seja maior que 99,99 >99.99

Registos cujo valor seja maior ou igual a 99,99 >=99.99

>=49.99 and <=99.99


Registos cujo valor se encontra entre 49,99 e 99,99
between 49,99 and 99,99
Queries – Critérios campos de data

Nos campos de data aplicam-se os mesmos operadores que nos campos


numéricos.
Apenas se utiliza o símbolo # para englobar a data.

Ex: #2016-12-12#
Queries – Resumo com agregação

Nestas consultas, a informação é apresentada de forma agrupada, através de


funções de agregação: soma, média, mínimo, máximo, primeiro, último,
contagem…
Importação e Exportação de Informação

O Access permite a ligação a informação de fontes externas, como ficheiros de texto,


Excel, outras BD’s Access. A informação pode ser importada, passando a fazer parte
integrante desta BD Access, ou apenas ligada (Link Tables), sendo acedível a partir
desta BD Access, mas mantendo-se exclusivamente na origem