introdução ao microsoft access - idigital.fea.usp.br i... · ... num campo tipo numérico os...
TRANSCRIPT
EAD657 – Tecnologia de Informação
Introdução
ao
Microsoft Access 2007
Prof. Hiroo Takaoka
Prof. Ronaldo Zwicker
Introdução ao Microsoft Access 2007
1
Introdução ao Microsoft Access 2007
INTRDUÇÃO
O Microsoft Access é um software para desenvolvimento de banco de dados relacional. Em
um banco de dados relacional, o usuário organiza os dados em tabelas relacionadas entre si.
Cada tabela é um conjunto de dados sobre um assunto específico, como aluno, curso,
disciplina, professor, sala de aula etc. Utilizar uma tabela separada para cada assunto
significa armazenar os dados somente uma vez, o que torna o banco de dados mais eficiente
e reduz os erros de entrada de dados.
O banco de dados Access é constituído de sete objetos: Tabelas, Consultas, Formulários,
Relatórios, Macros e Módulos. No presente texto não serão tratados os dois últimos
objetos, isto é, Macros e Módulos.
Além disso, esse texto não pretende de forma alguma esgotar todos os recursos e
possibilidades dos primeiros cinco objetos. Foram abordados apenas os tópicos que têm
utilidade mais imediata. Os detalhes podem ser obtidos usando Ajuda on-line do Access.
Também, não é objetivo deste texto apresentar nenhum método de projeto de banco de
dados.
Ao longo do texto será utilizado um exemplo de banco de dados muito simples sobre
Registro Acadêmico composto de quatro tabelas: Aluno, Curso, Disciplina e
Aproveitamento.
As tabelas do exemplo acima possuem certas características listadas a seguir:
a tabela Curso possui os seguintes campos: Código [texto (3)] e Nome [texto(30)];
a tabela Disciplina tem os seguintes campos: Código [texto(6)], Nome [texto(30)] e
Número de créditos [byte];
a tabela Aluno possui os seguintes campos: Número de matrícula [inteiro], Nome
[texto(30)], Data de nascimento [data] e Código do curso [texto(3)] a que pertence;
a tabela Aproveitamento tem os seguintes campos: Código da disciplina [texto(6)],
Número de matrícula do aluno [inteiro], Nota 1 [simples] e Nota 2 [simples] (Obs.
cada nota varia de 0 a 10).
Observamos que os valores entre colchetes que seguem os campos indicam o tipo de dados
e seu tamanho. Por exemplo, [texto (3)] indica que o campo é do tipo texto com tamanho 3.
Entre as tabelas há seguintes relacionamentos:
relacionamento um-para-muitos entre as tabelas Curso e Aluno;
relacionamento um-para-muitos entre as tabelas Aluno e Aproveitamento;
relacionamento um-para-muitos entre as tabelas Disciplina e Aproveitamento.
Introdução ao Microsoft Access 2007
2
COMO INICIAR MICROSOFT ACCESS
Quando você inicia o Access, é apresentada a janela Microsoft Access como mostra a
Figura 1:
Figura 1 – Janela Microsoft Office Access
Para criar um novo banco de dados:
1. Selecione a opção Banco de Dados em Branco.
2. A caixa de diálogo Banco de Dados em Branco será apresentada na tela.
3. Selecione o diretório onde o novo banco de dados vai ser armazenado e no campo
Nome do arquivo digite o nome que deseja atribuir a ele.
4. Clique em Criar.
Uma vez criado o banco de dados, não há necessidade de salvá-lo no final da sessão, pois
na medida em que os objetos que compõem o banco de dados são criados, eles têm que ser
salvos. Portanto, o banco de dados é salvo por parte ao longo do desenvolvimento num
único arquivo de extensão accdb.
Introdução ao Microsoft Access 2007
3
Para trabalhar com um Banco de Dados existente:
1. Selecione na opção Abrir Banco de Dados Recente o banco de dados desejado.
2. Clique em Mais... e selecione o banco de dados desejado.
3. Clique duas vezes no nome do banco de dados desejado.
CRIAÇÃO DE BANCO DE DADOS
Para criar um banco de dados, recomenda-se seguir os passos abaixo:
1. Especificar a estrutura de todas as tabelas que compõem o banco de dados;
2. Definir os relacionamentos com integridade referencial entre as tabelas para ter um
certo grau de proteção em operações de atualização destas tabelas;
3. Alimentar as tabelas.
Apesar de ser possível alimentar as tabelas antes de definirmos os relacionamentos,
recomendamos alimentá-las após a definição dos relacionamentos. Se as tabelas já
estiverem com os dados, ao impor a integridade referencial na definição dos
relacionamentos, a existência de qualquer erro nestas tabelas (por exemplo, tipos diferentes
de dados, dados faltantes etc.) fará com que o Access recuse a definição.
ESPECIFICAÇÃO DA ESTRUTURA DE TABELAS
Noções básicas sobre a tabela Vimos que uma tabela armazena dados sobre algum assunto, por exemplo, uma relação de
alunos como mostra a Figura 2. Os dados de cada aluno constituem um registro. Um
determinado dado constitui um campo. Cada campo possui características próprias. Por
exemplo, na tabela Aluno podemos identificar campo tipo numérico como o campo Número
de matrícula, campo tipo alfanumérico ou textual como o campo Nome do aluno e campo
tipo data como o campo Data de nascimento. Assim, cada campo armazena dados de um
determinado tipo.
Além do tipo, cada campo possui propriedades adicionais que dependem do seu tipo. Por
exemplo, um campo tipo textual possui um comprimento máximo em números de
caracteres. Por outro lado, num campo tipo numérico os números são armazenados em
diferentes formatos internos do computador: número inteiro, número inteiro de dupla
precisão, número fracionário ou número fracionário de dupla precisão. Todas estas
propriedades devem ser especificadas na criação de uma nova tabela no banco de dados.
Além disso, é necessário especificar para cada tabela qual o campo (ou conjunto de
campos) que identifica univocamente cada registro. Este campo (ou conjunto de campos) é
denominado chave primária. Na tabela Aluno do nosso exemplo, a chave primária é o
campo Número de matrícula já que nunca teremos dois alunos com o mesmo número de
matrícula. O campo Nome do aluno não seria boa escolha porque podemos ter homônimos
na tabela. Assim, a chave primária determina a ordem padrão segundo a qual os registros
são listados na tela e impede o armazenamento de dois registros com chaves idênticas.
Introdução ao Microsoft Access 2007
4
Número de
matrícula
Nome do aluno Data de
nascimento
Código do
curso
10 Pedro Albino 1/5/1984 EAD
17 Bill Clinton 23/7/1983 EAD
43 Ari Barroso 13/11/1980 EAC
52 Fernanda das Neves 20/6/1984 EAE
64 Akio Morita 3/10/1985 EAC
Figura 2 – Tabela Aluno
Criar nova tabela
Uma tabela recém criada é um compartimento vazio de dados, estruturada para conter o
tipo específico de dados que você deseja armazenar.
A criação de uma nova tabela é feita a partir da página MS Office Access da Figura 3.
Figura 3 – Página MS Office Access
Aluno
Nome do campo
Registro
Campo
Texto(30) Número Inteiro
Texto(3) Data
Chave primária
Tipo/tamanho do campo
Nome da tabela
Faixa de Opções
Introdução ao Microsoft Access 2007
5
Para criar uma nova tabela:
1. Selecione a guia de comando Criar da Faixa de Opções.
2. Selecione a opção Design da Tabela.
Em resposta, a janela Tabela onde devem ser especificados todos os campo da
tabela será apresentada na tela como mostra a Figura 4.
Figura 4 – Janela Tabela
Para especificar um campo:
1. Digite o nome do campo na coluna Nome do campo.
Ao adicionar um campo, o Access atribui automaticamente o tipo de dados Texto.
Se você quiser que o campo tenha um tipo de dados diferente abra a caixa de
combinação de tipo de dados clicando a seta para baixo que aparece no lado direito
da coluna Tipo de dados. A Figura 5 mostra a lista de tipos de dados.
Introdução ao Microsoft Access 2007
6
2. Selecione um tipo de dados da lista.
Figura 5 – Caixa de combinação de Tipo de dados
Os tipos de dados são:
Texto. Para caracteres alfanuméricos (até 255 caracteres).
Memorando. Para textos longos (até 64.000 caracteres).
Número. Para números (ocupa 1, 2, 4 ou 8 bytes).
Data/Hora. Para datas entre os anos 100 e 9999 (ocupa 4 bytes).
Moeda. Para valores monetários (ocupa 8 bytes).
Auto/Numeração. Para numeração automática (incremento automático de 1 a cada
novo registro e ocupa 4 bytes).Sim/não. Para valores booleanos (verdadeiro ou
falso).
Objeto OLE. Para planilhas, sons, documentos, imagens, etc. vinculados ou
incorporados.Assistente de pesquisa. Para criar campo para escolha de valores em
lista ou outras tabelas.
Para cada campo é necessário especificar as propriedades adicionais na caixa de diálogo de
Propriedades do campo. As propriedades dos campos incluem:
Tamanho do campo. Usada para ajustar o tamanho de um campo Texto ou Número.
Formato. Usada para especificar o formato de exibição. Os formatos apenas atuam
sobre a forma como o dado é mostrado na tela sem alterar a forma de
armazenamento interno.
Casas decimais. Exibe um certo número de algarismos decimais ao usar um formato
para um campo Número.
Máscara de entrada. Usada para facilitar a entrada de dados. Exibe caracteres de
inserção em um campo para que eles não tenham que ser inseridos e garante que os
dados inseridos se ajustem na máscara.
Legenda. Para ser usada como cabeçalho no lugar do Nome do campo em
Consultas, Formulários e Relatórios.
Valor padrão. Um valor que é inserido automaticamente no campo.
Introdução ao Microsoft Access 2007
7
Regra de validação. Expressão que verifica a consistência do dado alimentado. Por
exemplo, a expressão (>0 E < 100) indica que o número deve ser maior do que 0 e
menor do que 100.
Texto de validação. Mensagem de erro a ser apresentada quando a regra de
validação não for satisfeita.
Requerido. Indica que este campo exige entrada de algum dado. Se não for
requerido, o campo admitirá o valor nulo (pressionar a tecla Enter).
Comprimento zero. Indica se a cadeia vazia (“”) para campos texto constitui ou não
uma entrada válida.
Indexado. Permite definir o campo como sendo um índice para acelerar o acesso às
informações da tabela.
Para definir uma propriedade de campo:
1. Clique no campo para o qual deseja definir propriedades.
O Access exibe as propriedades desse campo na parte inferior da janela Tabela. As
propriedades que podem ser definidas dependem do tipo de dados do campo.
2. Clique na propriedade de campo que você deseja definir.
3. Digite uma definição para a propriedade. Ou, se aparecer uma seta no lado direito,
clique na seta para escolher a partir de uma lista de definições para a propriedade.
Tamanho do campo numérico
Os campos tipo número podem ter tamanho variado conforme o Quadro 1.
Tamanho Bytes Variação
byte 1 0 a 255
inteiro 2 -32.768 a 32.767
inteiro longo 4 -2.147.483.648 a 2.147.483.647
simples 4 -3,402823E38 a 3,402823E38
duplo 8 -1,79769... E308 a 1,79769... E308
Quadro 1 Tamanho do campo tipo número
Formato do campo tipo Numero
Além disso, os números podem ter diversos formatos de exibição. Os formatos apenas
atuam sobre a forma como o dado é exibido na tela sem alterar a forma de armazenamento
interno. O número de casas decimais também pode ser escolhido pelo usuário:
Número geral. Exibe o número no formato padrão
Unidade Monetária. Separa milhares, mostra negativos entre parênteses, com duas
casas decimais
Fixo. Exibe no mínimo 1 dígito com dois decimais
Padrão. Idem, mas separa em milhares
Introdução ao Microsoft Access 2007
8
Porcentagem. Multiplica por 100 e acrescenta sinal %
Científico. Usa notação mantissa/expoente
Formato do campo tipo Data/Hora
As datas e horas podem ter os seguintes formatos de exibição:
Data geral. 16/06/2007 17:34:23.
Data completa. Domingo, 16 de junho de 2007.
Data normal. 16-Jun-2007.
Data abreviada. 16/06/2007.
Hora complete. 17:34:23.
Hora normal. 05:34.
Hora abreviada. 17:34.
Chave Primária
Deve-se informar para cada tabela quais os campos que constituem a sua chave primária.
Um ou mais campos é candidato a ser chave primária se permitir a identificação única de
cada registro da tabela. Para definir uma chave primária, realize as seguintes operações:
1. Selecione os campos que serão a chave primária;
2. Clique no botão da Chave primária.
Para alterar o campo chave, simplesmente reposicione sobre outro campo e clique o botão
Chave primária.
Na tabela Aluno, o campo Número de matrícula é o candidato mais natural pois define
precisamente cada aluno. O campo Nome do aluno seria um candidato se tivéssemos
certeza de que não ocorressem homônimos na tabela.
Salvar a tabela
Podemos salvar a tabela acionando o Botão Office e opção Salvar. Se desejarmos salvá-la
com outro nome, utilizar a opção Salvar como. Também será salva a tabela se fechamos a
janela através do botão de fechamento do Windows. Observar que podemos minimizar a
janela Tabela via botão de minimização Windows. Deve ficar claro que a operação de
salvamento salva tanto a estrutura quanto o conteúdo (dados) da tabela.
As estruturas de outras tabelas que constituem o banco de dados estão apresentadas na
Figura 6.
Introdução ao Microsoft Access 2007
9
Figura 6a – Tabela Curso
Figura 6b – Tabela Disciplina
Introdução ao Microsoft Access 2007
10
Figura 6c – Tabela Aproveitamento
DEFINIÇÃO DE RELACIONAMENTOS
É comum que dados de uma tabela estejam associados com dados de outras tabelas. Neste
caso podemos estabelecer um relacionamento entre as duas tabelas. É através do
relacionamento que o Access consegue, a partir de dados numa tabela, obter dados
registrados na outra tabela. Existem três tipos de relacionamentos entre duas tabelas A e B:
um-para-um, um-para-muitos e muitos-para-muitos.
Relacionamento um-para-um
O relacionamento um-para-um ocorre quando um registro na tabela A possui no máximo
um registro associado na tabela B e um registro na tabela B possui no máximo um registro
associado na tabela A.
Relacionamento um-para-muito
O relacionamento um-para-muitos ocorre quando um registro na tabela A pode ter mais de
um registro associado na tabela B, entretanto, um registro da tabela B possui no máximo
um registro associado na tabela A.
Este relacionamento está presente no código do curso entre a tabela Curso e a tabela Aluno.
Para cada código do curso na tabela Curso identificamos vários registros com este código
na tabela Aluno, entretanto, para cada código de curso na tabela Aluno identificamos no
máximo um registro na tabela Curso.
Introdução ao Microsoft Access 2007
11
Relacionamento muitos-para-muitos
O relacionamento muitos-para-muitos ocorre quando um registro na tabela A pode ter mais
de um registro associado na tabela B e, analogamente, um registro na tabela B pode ter
mais de um registro associado na tabela A.
As disciplinas cursadas por um aluno constituem um relacionamento desta natureza. Cada
aluno cursa várias disciplinas e uma disciplina tem vários alunos. Neste relacionamento fica
aparente que ao par disciplina/aluno estarão associados outros dados, por exemplo, as notas
que o aluno obteve na disciplina em questão.
Relacionamentos do tipo muitos-para-muitos não podem ser especificados diretamente em
Access. É necessário criar uma tabela intermediária que no caso poderia ser chamado de
Aproveitamento. Cada registro nesta tabela seria composto de quatro campos: Número de
matrícula do aluno, Código da disciplina, Nota 1 e Nota 2. Como se observa, criou-se um
relacionamento um-para-muitos entre a tabela Aluno e a tabela Aproveitamento e,
analogamente, outro relacionamento um-para-muitos entre a tabela Disciplina e a tabela
Aproveitamento. Portanto um relacionamento muitos-para-muitos é convertido em dois
relacionamentos um-para-muitos. Observamos que a chave primária da tabela
Aproveitamento é formada pelos campos Número de matrícula e Código da disciplina.
Criação de relacionamentos
Em Access, podemos criar relacionamentos localizados, utilizados numa consulta
específica, ou relacionamentos globais que têm um uso mais geral.
Relacionamentos de uso geral são mais úteis porque podem ser usados automaticamente em
novas consultas, facilitam a geração de subformulários e subrelatórios e permitem um certo
grau de proteção em operações de atualização ao se impor a integridade referencial para os
relacionamentos como será visto adiante.
A criação e edição de relacionamentos são feitas na janela Relações. Nesta janela mostra-se
o diagrama de relacionamentos entre as tabelas. Para cada tabela são mostrados os seus
campos e linhas de associação com campos de outras tabelas. Estas linhas representam os
relacionamentos.
Para criar os relacionamentos:
1. Selecionar a guia de comandos Ferramentas de Banco de Dados da Faixa de
Opções.
Em resposta, aparece a janela Relações acompanhada da janela Mostrar tabela
contendo uma lista de tabelas como mostra a Figura 7. Se a janela Mostrar tabela
não aparecer, basta clicar no botão Mostrar tabela.
2. Adicionar as tabelas da lista. Para tanto, selecione as tabelas (para selecionar mais
de uma tabela marque as tabelas pressionando simultaneamente a tecla CTRL) e
clique no botão Adicionar. Após adicionar as tabelas, clique no botão Fechar.
Em resposta, aparece na janela Relações as tabelas adicionadas como mostra a
Figura 8. Estas tabelas podem ser arrastadas e redimensionadas até que fiquem
visualmente legíveis.
Introdução ao Microsoft Access 2007
12
Figura 7 – Janela Mostrar tabela
Figura 8 – Janela Relações apenas com as tabelas
Para criar o relacionamento entre a tabela Curso e a tabela Aluno, clica-se sobre o campo
Código do curso na tabela Curso e arrasta-se até o campo Código do curso na tabela Aluno.
Em resposta, surge a caixa de diálogo Editar Relações como mostra a Figura 9 para que
sejam fornecidas mais especificações sobre o relacionamento em questão. Para alterar estas
especificações basta dar duplo clique sobre a linha de relacionamento, isto faz aparecer a
caixa de diálogo Editar Relações.
No caso deseja-se impor a integridade referencial para impossibilitar o cadastramento de
alunos em cursos inexistentes na tabela Curso. Ao ligar esta opção passa a ser necessário
especificar também qual é o tipo de relacionamento. O tipo um-para-muitos já aparece
selecionado porque é o padrão do Access.
Além disso, é necessário indicar se deseja a opção Propagar atualização dos campos
relacionados (atualização em cascata) e a opção Propagar exclusão dos registros
relacionados (exclusão em cascata). A atualização em cascata ocorre quando se altera o
código de um curso na tabela Curso e automaticamente todos os códigos correspondentes
Introdução ao Microsoft Access 2007
13
na tabela Aluno são atualizados. A exclusão em cascata ocorre no caso da exclusão de um
curso da tabela Curso. Em resposta, são excluídos todos os registros correspondentes da
tabela Aluno.
Figura 9 – Caixa de diálogo Editar relacionamentos
Em seguida, criar o relacionamento com integridade referencial entre as tabelas Aluno e
Aproveitamento, clicando sobre o campo Número de matrícula na tabela Aluno e arrastando
até o campo Número de matrícula na tabela Aproveitamento. Finalmente, criar o
relacionamento com integridade referencial entre as tabelas Disciplina e Aproveitamento,
clicando sobre o campo Código da disciplina na tabela Disciplina e arrastando até o campo
Código da disciplina na tabela Aproveitamento.
A Figura 10 mostra a janela Relações contendo relacionamentos entre as tabelas.
Figura 10 – Janela Relações com relacionamentos
Ao fechar a janela Relações o sistema pergunta se deseja salvar as alterações feitas no
layout desta janela. Convém salvá-lo se a nova distribuição das tabelas for visualmente
mais adequada. Deve-se observar que o diagrama dos relacionamentos indica se ele é do
tipo um-para-muitos (algarismo 1 e símbolo de infinito) ou um-para-um (algarismo 1 e 1).
As bordas mais grossas da linha de união indicam que a integridade referencial foi imposta
para o relacionamento.
Introdução ao Microsoft Access 2007
14
Remoção de relacionamentos
Para remover um relacionamento basta selecionar a linha de união e acionar a tecla DEL.
Para remover uma tabela basta selecioná-la e acionar também a tecla DEL.
É importante lembrar que a remoção de uma tabela não remove o relacionamento. Se a
janela relacionamentos for fechada e acionada de novo, então a tabela apagada é mostrada
novamente com todos os seus relacionamentos. Portanto, para remover um relacionamento
é necessário selecioná-lo explicitamente e acionar DEL, em seguida se remove a tabela.
Pode-se apagar todo o conteúdo da janela Relações. Para isso, basta acionar Limpar layout.
Mas isto não remove os relacionamentos registrados internamente. Em seguida, pode-se
adicionar uma tabela e utilizar o botão Mostrar Relações Diretas para exibir apenas os
relacionamentos diretamente associados à tabela. Para exibir tudo, acione o botão Todas as
Relações.
ALIMENTAÇÃO DE DADOS
A entrada de dados (registros) na tabela é feita através de folha de dados acionada através
de duplo clique no nome da tabela desejada.
Como impomos a restrição de integridade referencial, ao cadastrar um aluno o Access
verificará se o código do curso a que pertence este aluno existe na tabela Curso. Assim, só
podemos cadastrar os alunos após o cadastramento dos cursos. Analogamente, os dados
sobre o aproveitamento só podem ser registrados após ter cadastrado os alunos e as
disciplinas.
A Figura 11 mostra as folhas de dados das tabelas Curso, Aluno, Disciplina e
Aproveitamento.
Introdução ao Microsoft Access 2007
15
Figura 11 – Folha de dados das tabelas Curso, Aluno, Disciplina e Aproveitamento
Para remover registros, selecione os registros e aperte a tecla DEL ou aperte o botão de
Excluir registro. Para criar um novo registro basta posicionar o ponto de inserção em uma
linha em branco ou clicar no botão Novo situado na barra de ferramentas ou na borda
inferior da tabela.
Para inserir registros, insira sempre no final. Quando a tabela for reapresentada o registro é
mostrado de acordo com a chave primária. Para alterar registros basta redigitar por cima do
texto atual.
Pode-se alterar o layout da folha de dados alterando a altura das linhas, largura de colunas,
fontes para caracteres etc. A opção Congelar colunas serve para fixar a coluna onde está o
ponto de inserção ou colunas situadas à esquerda da janela, evitando que elas sejam roladas
para fora. Para salvar as mudanças no layout da tabela basta clicar no botão Salvar na barra
de ferramentas ou selecionar a opção Salvar no Botão Office. Ao fechar a tabela sem ter
Introdução ao Microsoft Access 2007
16
salvado as alterações, o próprio Access abre uma caixa de diálogo perguntando se você
deseja salvar o novo layout; caso você queira salvá-lo clique em Sim.
Para trocar colunas de lugar, selecione a coluna, clique novamente na sua legenda e arraste-
a para uma outra coluna ao lado da qual será inserida.
Pode-se copiar, mover e remover dados/registros através de comandos Recortar, Copiar,
Colar, tradicionais em ambiente Windows. Podemos copiar dados entre campos, copiar
registros para o final da tabela ou copiar registros entre tabelas diferentes. Neste último
caso a cópia é feita segundo a ordem dos campos, independentemente do nome deles. Caso
se deseja que a cópia substitua certos registros, estes devem ser selecionados antes de usar
Colar. Se a cópia for para o final da tabela, utilizar Colar acréscimo no menu Colar.
Para procurar dados na tabela pode-se utilizar o comando Localizar. Na caixa de diálogo
que aparecerá em seguida você pode escolher onde o dado deve ser procurado. Em
princípio, a procura será feita no campo onde está o ponto de inserção. Também é possível
trocar uma informação por outra através da opção Substituir do comando Localizar. Neste
caso é necessário fornecer o valor a procurar e o novo valor que será atribuído.
Para mostrar na folha de dados apenas os registros que satisfaçam determinada condição
deve-se especificar um filtro através do comando Filtrar. A montagem de filtros utiliza
recursos análogos à construção de consultas como será visto mais adiante.
CONSULTAS
Uma consulta recupera dados no banco de dados e os apresenta na tela. Serão estudados
dois tipos de consultas:
de seleção: seleciona e apresenta registros no formato padrão e
de cruzamento: seleciona e apresenta registros em formato de planilha
Os registros selecionados constituem um conjunto chamado Dynaset. Este conjunto é
dinâmico no sentido de seu conteúdo ter por origem várias tabelas e no sentido de só existir
enquanto a consulta estiver ativa. Ao fechar uma consulta, ele deixa de existir. Isto constitui
uma grande vantagem pois se alterarmos os dados de uma tabela as consultas sobre ela
automaticamente refletirão essas alterações.
Consultas constituem um recurso prático para obter informações específicas contidas no
Banco de Dados. Com elas podemos:
escolher campos específicos de tabelas específicas;
selecionar informações segundo critérios;
mostrar as informações em várias ordens;
obter dados de várias tabelas simultaneamente;
calcular totais;
criar formulários e relatórios;
criar outras consultas e gráficos.
Introdução ao Microsoft Access 2007
17
Criar nova consulta
A obtenção de uma nova consulta é feita a partir da página MS Office Access.
Figura 12 – Janela Banco de dados com a caixa de listagem Consultas
Para criar uma nova consulta usando Design da Consulta:
1. Selecione a guia de comandos Criar da Faixa de Opções.
2. Selecione a opção Design da Consulta.
3. Ao escolher a opção Design da Consulta, aparecerá a janela Consulta seleção
sobreposta com a janela Mostrar tabela como mostra a Figura 13.
4. Para cada tabela ou consulta a adicionar, selecione seu nome e clique no botão
Adicionar. Caso se adicione uma tabela/consulta errada, basta selecioná-la e apertar
DEL para removê-la da área de tabelas.
Introdução ao Microsoft Access 2007
18
Figura 13 – Janela Consulta seleção e Mostrar tabela
A janela Consulta seleção apresentada na Figura 13 possui duas áreas, a área das tabelas
envolvidas na consulta e a área de especificação da consulta propriamente dita. Nesta
última área a especificação da consulta é feita através da linguagem QBE (Query By
Example). Neste esquema criamos as consultas arrastando campos da área superior da
janela para a área inferior. Na planilha QBE cada coluna contém informações a respeito do
campo incluído na consulta.
A janela Consulta seleção vazia aparece com nome padrão Consulta 1, 2 etc. na barra de
título como mostra a tabela da Figura 13. Este nome será posteriormente alterado para o
novo definitivo da consulta.
A Figura 14 mostra a estrutura da consulta que foi denominada “Alunos de EAD”. Ao
acionar a execução da consulta aparece o resultado apresentado na Figura 15. Note-se que o
resultado é apresentado numa folha de dados que, em princípio, pode ser também usada
para alterar e excluir registros.
Introdução ao Microsoft Access 2007
19
Figura 14 – Consulta “Alunos de EAD”
Figura 15 – Resultado da Consulta “Alunos de EAD”
Adicionar campos à consulta
Inicialmente deve-se selecionar os campos na tabela. Pode-se selecionar vários campos
clicando e apertando simultaneamente SHIFT ou CTRL. Em seguida, apontar para um dos
campos selecionados e arrastar para a linha Campo na área inferior.
Também é possível adicionar um campo selecionando o campo na área inferior. Basta abrir
a caixa de combinação clicando a seta que aparece na linha Campos e escolher entre os
campos listados.
Para selecionar todos os campos da tabela há um método muito interessante. Basta clicar
duas vezes a barra de título da tabela. Para selecionar e adicionar todos os campos, há um
Introdução ao Microsoft Access 2007
20
método que consiste no arraste da linha de asterisco (*) da tabela para algum Campo da
parte inferior. Entretanto, neste caso ele arrasta toda a tabela e produz um efeito secundário
interessante: caso a tabela venha a ser alterada na sua estrutura, pela adição/exclusão de
campos, não será necessário refazer a consulta envolvida. Por outro lado, os campos QBE
baseados em asterisco não admitem critério de classificação e seleção.
Para inserir um campo entre outros já existentes na planilha QBE basta arrastar o campo
selecionado na parte superior para o campo que ficará à direita do campo inserido. Para
rearranjar campos na planilha QBE basta selecionar e arrastar para outra posição. Para
eliminar um campo, basta selecionar e dar DEL.
O texto que identifica colunas na folha de dados é o nome do campo. Se esse nome for
inadequado, pode ser substituído por outro. Para tanto, basta preceder o nome do campo na
planilha QBE com o nome desejado seguido de dois pontos. Exemplo: Cargo: código do
cargo. Entretanto, se a coluna possuir já um nome na Legenda de Propriedades de campo
esta terá prioridade.
Eventualmente é necessário utilizar um campo numa consulta sem que haja necessidade de
mostrá-lo na folha de dados, por exemplo, quando esse campo participa da chave de
classificação. Neste caso basta desativar a marquinha de Mostrar correspondente na
planilha QBE.
Classificação dos dados apresentados
Basta especificar na linha Classificação a ordem de classificação (crescente ou decrescente)
dos campos que fazem parte da chave de classificação. Observar que a ordem dos campos
passa a ser importante e, eventualmente, é necessário rearranjar as colunas em relação à sua
ordem na tabela original.
Nada impede de um campo da tabela ocorrer duas ou mais vezes como campo na planilha
QBE. Eventualmente essa pode ser uma solução interessante para poder usar o campo na
chave de classificação (onde sua posição é fixa), porém desativando sua apresentação na
linha Mostrar. A segunda versão do campo é exibida na posição desejada pelo usuário. O
mesmo efeito pode ser utilizado em conjunto com campos da planilha QBE oriundos de
asterisco. Como não é possível usar critérios de seleção e classificação para campos
asterisco, basta incluir uma duplicata dos campos necessários. Para essas duplicatas são
estabelecidos os critérios de classificação e seleção concomitantemente com a desativação
de sua apresentação na linha Mostrar da planilha QBE.
Salvar e visualizar o resultado da consulta
Para salvar a consulta, use as opções Salvar e Salvar como do Botão Office. Também será
salva a tabela se fechamos a janela através do botão de fechamento do Windows.
Para visualizar o resultado da consulta devemos clicar no botão Modo de Exibição e
selecionar a opção Modo de Exibição de Folha de Dados. Para voltar à estrutura da consulta
basta clicar no Modo de Exibição e selecionar o Modo Design.
Para imprimir o resultado da consulta devemos estar na folha de dados e acionar Imprimir
do Botão Office.
Introdução ao Microsoft Access 2007
21
Critérios de seleção envolvendo um único campo
Como critério de seleção na planilha QBE podemos empregar diversos tipos de expressões
envolvendo diversos tipos de funções internas. O Quadro 2 seguinte mostra alguns
exemplos de expressões.
Expressão Resultado
>520 todos os números maiores que 520
entre 520 e 528 todos os números entre 520 e 528 inclusive
= “Carlos Moreira” todos exatamente iguais a
“S*” todos iniciados com a letra S
“fe*eira” por exemplo: ferreira, fereira, festeira
“sm?th” por exemplo: smith, smyth
“* * *” nomes de três palavras separadas por um branco
*/*/2007 todas as datas de 2007
>=1-jan-2007 e <=20-fev-2007 todas as datas no intervalo
“S*” ou “R*” todos iniciados pela letra S ou R
nulo todos os registros com campo nulo
negado nulo todos os registros com valor no campo
em (“EAD”; “EAE”) todos com valor na lista
data() todos com a data atual
entre data() e data()-7 todos com data da última semana
Quadro 2 – Exemplos de expressões
Critérios de seleção envolvendo mais de um campo
Neste caso, emprega-se as linhas Critério e ou da planilha QBE. Deve-se observar a
seguinte regra para definir expressões entre vários campos:
expressões ligadas por e ficam na mesma linha
expressões ligadas por ou ficam em linhas diferentes.
Os exemplos da Figura 16 esclarecem a questão:
Introdução ao Microsoft Access 2007
22
a) selecionar todos os alunos do curso de administração de empresas e que nasceram em
1984:
b) todos os alunos do curso de contabilidade ou alunos nascidos em 1984:
c) todos alunos do curso de administração de empresas nascidos em 1984 ou alunos com
nomes iniciados pela letra A.
Figura 16 – Seleções envolvendo mais de um campo
Consultas com múltiplas tabelas
É comum que dados para uma consulta se localizem em diversas tabelas. Por exemplo, a
tabela Aproveitamento faz referência ao número de matrícula do aluno, mas não especifica
seu nome. Dessa forma, o nome correspondente a cada aluno consta somente na tabela
Aluno.
Se desejarmos fazer uma consulta que apresente o nome do aluno e as disciplinas cursadas
com as respectivas notas e média será necessária a referência a duas tabelas: Aluno e
Aproveitamento.
Como já definimos os relacionamentos entre as duas tabelas na janela Relações, então ao
adicionar as tabelas na janela Consulta seleção aparecerá automaticamente a linha de
ligação entre os campos relacionados.
Os campos que devem ser incluídos na consulta são:
Nome do aluno
Introdução ao Microsoft Access 2007
23
Código da disciplina
Nota 1 e Nota 2
Média
Note-se que o último campo é um campo computado a partir dos dados existentes. Este
campo deve ser especificado da seguinte maneira:
Média:([Nota 1] +[Nota 2])/2
O nome que antecede dois pontos (:) é o nome a ser atribuído ao campo computado e a
expressão especifica como o valor deve ser calculado.
Observe-se que campos utilizados em expressões precisam estar entre colchetes, daí a razão
de se escrever [Nota 1] e [Nota 2].
A Figura 17 e a Figura18 mostram respectivamente a especificação da consulta e a folha de
dados.
Figura 17 – Consulta envolvendo duas tabelas
Introdução ao Microsoft Access 2007
24
Figura 18 – Folha de dados referente à consulta da Figura 17
O formato associado ao campo computado Média pelo Access é Número geral que exibe
apenas o número de casas decimais necessárias para cada valor. Para especificar o número
fixo de casas decimais é necessário abrir a janela Folha de Propriedades. Para tanto,
selecione a coluna do campo computado e acione o botão Folha de Propriedades. Em
seguida, selecione o Formato Fixo e Casas decimais como mostra a Figura 17.
Totalizações
É possível obter totais em consultas. Podemos contar o número de ocorrências de registros,
obter somas, médias, mínimos, máximos etc. Para obter totais é necessário acrescentar uma
linha Total na planilha QBE o que é feito pelo botão Totais ().
Na linha Total para cada campo da consulta deverá ser especificado o tipo de totalização
desejada. Por exemplo, se o campo servir apenas para contar registros, devemos escolher a
opção Contar. Se o campo tiver que ser somado, escolhe-se Soma. Por outro lado, sempre
haverá campos que vão controlar o agrupamento dos registros, por exemplo, se desejamos
totais por disciplina, no caso para o campo Nome da disciplina, especificaremos Agrupar
por.
Para obter totais de subagrupamentos basta incluir na seqüência correta os campos que dão
origem aos grupos e subgrupos indicando a ordem de classificação mais conveniente. O
exemplo da Figura 19 mostra a obtenção do total de alunos por curso dentro de cada
disciplina. Para cada entrada nesta consulta também é apresentada a média das notas.
Introdução ao Microsoft Access 2007
25
Figura 19 – Consulta com totalizações
Figura 20 – Folha de dados referente à consulta da Figura19
Na folha de dados da Figura 20, observa-se que a coluna com o total dos alunos possui
legenda Número de Alunos. Esta legenda foi definida selecionando a coluna onde é feita a
contagem de alunos na planilha QBE e acionando o botão Folha de Propriedades. No
campo Legenda foi especificado Número de Alunos.
Introdução ao Microsoft Access 2007
26
Tabelas Cruzadas As totalizações vistas anteriormente também podem ser obtidas através de consulta de
tabela de referência cruzada. Para incluir campos de mais de uma tabela, é necessário criar
uma consulta contendo todos os campos que você necessita e, em seguida, usar esta
consulta para criar a consulta de tabela de referência cruzada. Para tanto, é necessário
acionar o botão Assistente de Consulta e selecionar a opção Assistente de consulta de tabela
de referência cruzada. Neste tipo de consulta deve-se indicar qual a tabela ou consulta que
tem as informações, a informação que caracteriza linhas, colunas e o valor a ser calculado
para cada interseção de linha e coluna.. Isto é indicado respondendo as perguntas da janela
de diálogo. No exemplo, o campo Código da disciplina foi usado como cabeçalho da linha,
o campo Código do curso foi usado como cabeçalho da coluna e o campo Número de
matrícula foi usado como valor para indicar contagem dos alunos do par disciplina e curso
(Contar). A Figura 22 mostra a especificação da consulta sobre a qual foi aplicada
Assistente de consulta de tabela de referência cruzada e a folha de dados correspondente.
Figura 21– Estrutura de Consulta de tabela de referência cruzada
Figura 22 – Folha de Dados da Consulta de tabela de referência cruzada da Figura 21
Introdução ao Microsoft Access 2007
27
Consultas com parâmetros
Podemos construir consultas cujos critérios de seleção podem ser fornecidos quando a
consulta for executada. Por exemplo, podemos pedir ao usuário que forneça o código do
curso dos alunos que deseja listar na tela. Para tanto, construímos uma consulta normal de
seleção, por exemplo, a partir da tabela Aluno e na linha Critério do campo Código do
curso especificamos uma mensagem entre colchetes: [Informar o código do curso a listar].
Essa mensagem é apresentada através da janela Inserir valor do parâmetro onde o usuário
deve digitar o código desejado. Apenas os registros com este código serão listados. A
Figura 23 mostra a planilha QBE e janela Inserir valor do parâmetro.
Figura 23 – Consulta seleção com parâmetro
Introdução ao Microsoft Access 2007
28
FORMULÁRIO
Formulários constituem telas para a entrada de dados e apresentação de informações. O
layout destas telas é determinado pelo projetista do Banco de Dados e pode envolver
atividades tais como uso de cores, letras de diversos tipos e tamanhos, figuras, botões etc.
Nos formulários é possível apresentar resultados de cálculos e efetuar consistências sobre
dados alimentados.
Criação de um formulário com o Assistente de formulário
Existem três tipos importantes de formulários: colunar, tabular e subformulários. Em geral,
é possível criar rapidamente um formulário através de um recurso denominado Assistente
de formulário. Este gera formulários relativamente padronizados sobre os quais, se o
projetista desejar, é possível fazer ajustes.
Para criar um formulário através do Assistente de formulário:
1. Selecione a guia de comandos Criar da Faixa de Opções.
2. Selecione a opção Mais Formulários.
3. Ao escolher a opção Assistente de formulário, aparecerá a janela de diálogo do
Assistente de formulário.
4. Escolha a tabela ou consulta para a qual o formulário será desenvolvido.
5. Siga as indicações dadas pelas caixas de diálogo Assistente de formulário. Na
última caixa de diálogo, clique no botão Concluir.
Figura 24 – Janela de Diálogo do Assistente de formulário
Introdução ao Microsoft Access 2007
29
Figura 25 – Formulário Aluno gerado pelo Assistente de formulário
Ao final deste processo pode-se inspecionar a estrutura do formulário gerado, acionando o
botão Modo Design. A Figura 26 mostra o formulário Aluno no Modo Design.
Figura 26 – Janela Formulário Aluno no Modo Design
Criação de um formulário/subformulário com o Assistente de formulário
É possível criar formulários contidos dentro de formulário. Por exemplo, podemos listar
para cada aluno as disciplinas em que estão inscritas com as respectivas notas. Para cada
Introdução ao Microsoft Access 2007
30
aluno cria-se um formulário de coluna simples ao qual incorporamos um subformulário de
aproveitamento em formato tabular.
O procedimento para a criação do exemplo consiste de:
1. Selecione a guia de comandos Criar da Faixa de Opções.
2. Selecione a opção Mais Formulários.
3. Ao escolher a opção Assistente de formulário, aparecerá a janela de diálogo do
Assistente de formulário.
4. Escolha as tabelas ou consultas para as quais o formulário/subformulário será
desenvolvido e clique Avançar. No nosso exemplo, vamos escolher a tabela Aluno e
selecionar todos os campos exceto Foto como mostra Figura 27. Em seguida, vamos
escolher a tabela Aproveitamento e selecionar todos os campos exceto o campo
Número de matrícula como mostra Figura 28.
5. Certifique se a opção Formulário e subformulário(s) está ativada como mostra a
Figura 29. Certifique também se o formulário vai ser exibido por aluno
incorporando o subformulário de aproveitamento.
Note-se que o Assistente criou sozinho o formulário para o aluno e o subformulário
para o aproveitamento. Ele conseguiu inferir esta organização baseada no
relacionamento um-para-muitos existente entre essas duas tabelas (vide Figura 10).
6. Siga as indicações dadas pelas caixas de diálogo Assistente de formulário.
7. Na última caixa de diálogo, dê nome ao formulário e subformulário e clique no
botão Concluir. O Access vai exibir o formulário da Figura 30.
Figura 27 – Janela Assistente de formulário referente à tabela Aluno
Introdução ao Microsoft Access 2007
31
Figura 28 – Janela Assistente de formulário referente à tabela Aproveitamento
Figura 29 – Caixa de diálogo referente à opção Formulário e subformulário(s)
Introdução ao Microsoft Access 2007
32
Figura 30 – Formulário por aluno incorporando o subformulário de aproveitamento
Ao final deste processo pode-se inspecionar a estrutura do formulário gerado, acionando o
botão Modo Design. A Figura 31 mostra o formulário da Figura 30 no Modo Design. Note-
se que as informações em um formulário estão contidas em controles. Controles são
objetos em um formulário, que exibem dados, executam ações ou o ilustram.
Mesmo criando o formulário com um Assistente de formulário, muitas vezes é necessário
adicionar, mover, redimensionar ou ajustar os controles. Para informações sobre como usar
formulário no Modo Design, consulte o tópico “Janela Formulário no Modo Design”
descrito a seguir.
Introdução ao Microsoft Access 2007
33
Figura 32 – Janela Estrutura do formulário notas de disciplinas por aluno
Janela Formulário no Modo Design
Visualizar um formulário no Modo Design é como estar diante da bancada onde um
projetista organiza seu projeto com as ferramentas necessárias para completá-lo. As
ferramentas disponíveis no Modo Design apresentam-se configuradas conforme a Figura
33.
Figura 33 – Barras e caixa de ferramentas para a construção de formulários
O projetista de formulários manipula controles na janela Formulário no Modo Design. As
ações que ele pode realizar em geral envolvem seleção, movimentação,
redimensionamento, ajuste e adição de controles.
Introdução ao Microsoft Access 2007
34
RELATÓRIOS
Relatórios constituem um recurso específico para apresentação de dados em papel
impresso. A origem destes dados pode ser uma tabela ou consulta. Além disso, é possível
incluir no relatório elementos gráficos para torná-lo mais atrativo. Como será visto, os
relatórios também incluem meios para agrupar e agregar dados.
Relatórios gerados por assistentes
Para mostrar como se gera um relatório através do Assistente de relatórios será utilizado o
exemplo que imprime a relação de alunos e suas notas por disciplinas. Também desejamos
imprimir a média das notas por aluno e por disciplina.
Para gerar o relatório através de Assistente de relatório:
1. Selecione a guia de comandos Criar da Faixa de Opções.
2. Selecione a opção Assistente de Relatório.
3. Ao escolher a opção Assistente de Relatório, aparecerá a janela de diálogo do
Assistente de Relatório.
Figura 34 – Janela Assistente de Relatório
O Assistente vai exibir sete caixas de diálogo comentadas a seguir:
i) Que campos você deseja no relatório? No nosso exemplo, vamos escolher os
campos Número de matrícula e Nome do aluno da tabela Aluno, os campos
Código da disciplina e Nome da disciplina da tabela Disciplina e os campos
Nota 1 e Nota 2 da tabela Aproveitamento como mostra a Figura 35.
Introdução ao Microsoft Access 2007
35
ii) Como você deseja exibir os seus dados? Vamos exibir os dados por disciplina
como mostra a Figura 36.
iii) Você deseja adicionar níveis de agrupamento? Certamente não, pois os dados já
estão agrupados por disciplina (Figura 37).
iv) Que ordem de classificação e resumo informativo você deseja para os registros
de detalhe? A ordem se refere à classificação das linhas de detalhe: por nome do
aluno (Figura 38). O resumo se refere ao que será totalizado e em qual nível:
média das notas por disciplina (Figura 39).
v) Como se deseja ordenar o relatório? O esquema escolhido foi o Tópico 1.
vi) Que estilo você deseja? Corporação.
vii) Que título você deseja para o seu relatório? Alunos por Disciplina.
1. Clique no botão Concluir.
O Access vai exibir o relatório da Figura 43.
Figura 35 – Caixa de diálogo para selecionar os campos
Introdução ao Microsoft Access 2007
36
Figura 36 – Caixa de diálogo para definir o formato de exibição
Figura 37 – Caixa de diálogo para especificar nível de agrupamento adicional
Introdução ao Microsoft Access 2007
37
Figura 38 – Caixa de diálogo para especificar a ordem de classificação e o tipo de resumo
Figura 39 – Caixa de diálogo Opção de resumo
Introdução ao Microsoft Access 2007
38
Figura 40 – Relatório Aluno por Disciplina gerado pelo Assistente de relatórios
Janela Relatório no Modo Design
Esta janela pode ser aberta selecionando no Modo de Exibição a opção Modo Design. A
Figura 41 mostra a estrutura do relatório Alunos por Disciplina gerado pelo Assistente.
Figura 41 – Estrutura do relatório Alunos por Disciplina gerado por Assistente
Barra de Cabeçalho Código da disciplina
Introdução ao Microsoft Access 2007
39
Para imprimir lista de cada disciplina numa nova página é necessário:
Selecionar a barra do Cabeçalho Código da disciplina e acionar o comando
Folha de Propriedades ou dar duplo clique na barra mencionada.
Em seguida, definir a propriedade da Força quebra de página como Antes da
seção.
Figura 42 – Folha de Propriedades referente à barra do Cabeçalho Código da disciplina
Note que no Modo Exibição não é possível verificar se a opção Força quebra de página foi
especificada corretamente. Para tanto é necessário visualizar a impressão. Para visualizá-la
basta marcar o relatório e dar um clique no botão do lado direito do mouse e selecionar a
opção Visualização de impressão ou selecionar o botão Visualização de impressão que está
no canto inferior direito.
Figura 43 – Botão de Visualização de impressão
Figura 43 – Opção Visualização de impressão