Quando quer eliminar rapidamente muitos dados ou eliminar regularmente um conjunto de dados numa base de dados de ambiente de trabalho do Access, uma consulta de eliminação ou atualização pode ser útil porque as consultas permitem especificar critérios para localizar e eliminar rapidamente os dados. A utilização de uma consulta também pode ser um timesaver porque pode reutilizar uma consulta guardada.
Observação: Antes de excluir qualquer dado ou executar uma consulta exclusão, lembre-se de fazer um backup do seu banco de dados de da área de trabalho do Access.
Se quiser eliminar apenas alguns registos, não precisa de uma consulta. Basta abrir a tabela na vista Folha de Dados, selecionar os campos (colunas) ou registos (linhas) que pretende eliminar e, em seguida, premir DELETE.
Importante: As informações neste artigo destinam-se a ser utilizadas apenas com bases de dados de ambiente de trabalho. Não pode utilizar consultas de eliminação ou atualização nas aplicações Web do Access.
Neste artigo
Escolher um tipo de consulta
Pode utilizar uma consulta de atualização ou uma consulta eliminar para eliminar dados da sua base de dados. Selecione uma consulta com base nos detalhes na tabela seguinte:
|
Tipo de consulta |
Quando utilizar |
Resultados |
|---|---|---|
|
Utilizar uma consulta eliminar |
Para remover registos inteiros (linhas) de uma tabela ou de duas tabelas relacionadas em simultâneo. Observação: Se os registos residirem no lado "um" de uma relação um-para-muitos, poderá ter de alterar a relação antes de executar a consulta eliminar. Veja a secção sobre como eliminar dados de tabelas relacionadas. |
As consultas de eliminação removem todos os dados em cada campo, incluindo o valor da chave que torna um registo exclusivo |
|
Utilizar uma consulta de atualização |
Para eliminar valores de campo individuais de uma tabela. |
Facilita a eliminação de valores ao atualizar os valores existentes para um valor nulo (ou seja, sem dados) ou para uma cadeia de comprimento zero (um par de aspas duplas sem espaço entre os mesmos). |
Aspetos a verificar antes de utilizar uma consulta para eliminar quaisquer dados
-
Certifique-se de que o ficheiro não é um ficheiro só de leitura:
-
Clique com o botão direito do rato em Iniciar e clique em Abrir o Windows Explorer.
-
Clique com o botão direito do rato no ficheiro da base de dados e clique em Propriedades.
-
Veja se o atributo Só de leitura está selecionado.
-
-
Verifique se tem as permissões necessárias para eliminar registos da base de dados. Se não tiver a certeza, contacte o administrador de sistema ou o estruturador da base de dados.
-
Certifique-se de que ativou o conteúdo na base de dados. Por predefinição, o Access bloqueia todas as consultas de ação (consultas eliminar, atualizar e criar tabela), a menos que confie primeiro na base de dados. Para obter informações sobre como confiar numa base de dados, consulte a secção Parar o Modo Desativado de bloquear uma consulta.
-
Peça a outros utilizadores da base de dados para fecharem todas as tabelas, formulários, consultas e relatórios que utilizam os dados que pretende eliminar. Isto ajuda a evitar violações de bloqueio.
-
Antes de editar ou eliminar registos, fazer uma cópia de segurança da base de dados é uma boa ideia caso pretenda reverter as alterações.
Dica: Se um grande número de utilizadores se ligar à base de dados, poderá ter de fechar a base de dados e, em seguida, reabri-la no modo Exclusivo .
Para abrir uma base de dados no modo Exclusivo
-
Clique no separador Ficheiro > Abrir.
-
Navegue para e aponte para selecionar a base de dados, clique na seta junto ao botão Abrir e, em seguida, clique em Abrir Exclusivo.
Fazer uma cópia de segurança da base de dados
-
Clique no separador Ficheiro e aponte para Guardar Como.
-
Clique em Guardar Base de Dados Como e clique em Fazer Cópia de Segurança da Base de Dados. O Access fecha o arquivo original, cria um backup e abre novamente o arquivo original.
-
Clique em Guardar Como , especifique um nome e localização para a cópia de segurança e clique em Guardar.
Observação: Se estiver a utilizar uma base de dados só de leitura ou criada na versão anterior do Access, poderá receber uma mensagem a indicar que não é possível criar uma cópia de segurança da base de dados.
Para reverter para um backup, feche e renomeie o arquivo original para que a cópia de backup possa usar o nome da versão original. Atribua o nome da versão original à cópia de backup e abra a cópia de backup renomeada no Access.
Utilizar uma consulta eliminar
Para criar uma consulta eliminar, clique no separador Criar , no grupo Consultas , clique em Estrutura da Consulta. Faça duplo clique em cada tabela a partir da qual pretende eliminar registos e, em seguida, clique em Fechar.
A tabela é apresentada como uma janela na secção superior da grelha de estrutura da consulta. Na lista de campos, faça duplo clique no asterisco (*) para adicionar todos os campos na tabela à grelha de estrutura.
Utilizar critérios específicos numa consulta eliminar
Importante: Utilize critérios para devolver apenas os registos que pretende eliminar. Caso contrário, a consulta eliminar remove todos os registos na tabela.
Faça duplo clique no campo que pretende especificar como critérios de eliminação, introduza um critério na linha Critérios do estruturador de consulta e, em seguida, desmarque a caixa Mostrar marcar para cada campo de critérios.
Um exemplo de quando poderá querer utilizar esta opção: suponha que pretende remover todas as encomendas pendentes de um cliente. Para localizar apenas esses registos, adicionaria os campos ID do Cliente e Data da Encomenda à grelha de estrutura da consulta e, em seguida, introduza o número de ID do cliente e a data em que as encomendas desse cliente se tornaram inválidas.
-
No separador Estrutura , clique em Ver > Vista de Folha de Dados.
-
Verifique se a consulta devolve os registos que pretende eliminar e, em seguida, prima CTRL+S para guardar a consulta.
-
Para executar a consulta, faça duplo clique na consulta no Painel de Navegação.
Usando uma consulta atualização
Observação: Não pode utilizar a opção atualizar consulta numa aplicação Web do Access.
Esta secção explica como utilizar uma consulta de atualização para eliminar campos individuais de tabelas. Lembre-se de que a execução de uma consulta de atualização para eliminar dados irá alterar os valores existentes para NULL ou para uma cadeia de comprimento zero (um par de aspas duplas sem espaço no meio), consoante os critérios que especificar.
-
Clique no separador Criar e, no grupo Consultas , clique em Estrutura da Consulta.
-
Selecione a tabela que tem os dados que pretende eliminar (se a tabela estiver relacionada, selecione a tabela no lado "um" da relação), clique em Adicionar e, em seguida, clique em Fechar.
A tabela é apresentada como uma janela na secção superior da grelha de estrutura da consulta. A janela lista todos os campos na tabela selecionada.
-
Faça duplo clique no asterisco (*) para adicionar todos os campos na tabela à grelha de estrutura. Adicionar todos os campos de tabela permite que a consulta eliminar remova registos inteiros (linhas) da tabela.
Opcionalmente, pode introduzir critérios para um ou mais campos na linha Critérios do estruturador e, em seguida, desmarcar a caixa Mostrar marcar para cada campo de critérios. Para obter mais informações sobre como utilizar critérios, veja a tabela Critérios de exemplo para selecionar consultas .
Observação: Utilize critérios para devolver apenas os registos que pretende alterar. Caso contrário, a consulta de atualização define como NULL todos os registos em cada um dos campos na consulta.
-
Na guia Design, no grupo Resultados, clique em Modo de Exibição e clique em Modo de Exibição de Folha de Dados.
-
Verifique se a consulta devolve os registos que pretende definir como NULL ou uma cadeia de comprimento zero (um par de aspas duplas sem espaço entre os mesmos ("").
-
Conforme necessário, repita os passos 3 a 5 e altere os campos ou critérios até que a consulta devolva apenas os dados que pretende eliminar e, em seguida, prima CTRL+S para guardar a consulta.
-
Para executar a consulta, faça duplo clique na consulta no Painel de Navegação.
Informações Adicionais
Editar a relação
Siga estes passos apenas quando precisar de eliminar dados nos lados "um" e "muitos" de uma relação.
-
Na guia Ferramentas de Banco de Dados, no grupo Relações, clique em Relações.
-
Clique com o botão direito do rato na relação (a linha) que liga as tabelas envolvidas na operação de eliminação e, em seguida, clique em Editar Relação no menu de atalho.
-
Na caixa de diálogo Editar Relações, certifique-se de que a caixa de marcar Impor Integridade Referencial está selecionada.
-
Selecione a caixa de marcar Propagar Eliminação de Registos Relacionados.
Observação: Até desativar novamente esta propriedade, eliminar um registo no lado "um" da relação eliminará todos os registos relacionados no lado "muitos" da relação.
-
Clique em OK, feche o painel Relações e, em seguida, avance para o próximo conjunto de passos.
Excluir uma relação
-
Se ainda não o fez, abra o painel Relações .
-
Na guia Ferramentas de Banco de Dados, no grupo Relações, clique em Relações.
Anote os campos envolvidos na relação para que possa restaurar a relação depois de eliminar os seus dados.
-
Clique com o botão direito do rato na relação (a linha) que liga as tabelas envolvidas na operação de eliminação e, em seguida, clique em Eliminar no menu de atalho.
Observação: Para restaurar a relação, siga os passos anteriores para abrir o painel Relações e, em seguida, arraste o campo de chave primária da tabela "um" e largue-o no campo de chave externa da tabela "muitos". É apresentada a caixa de diálogo Editar Relação . Se a relação antiga impôs integridade referencial, selecione Impor Integridade Referencial e, em seguida, clique em Criar. Caso contrário, basta clicar em Criar.
Critérios de exemplo para selecionar consultas
A tabela seguinte lista alguns critérios de exemplo que pode utilizar em consultas selecionadas quando pretender certificar-se de que elimina apenas os dados que pretende eliminar. Alguns destes exemplos utilizam carateres universais.
|
Critérios |
Efeito |
|---|---|
|
> 234 |
Retorna todos os números maiores que 234. Para localizar todos os números menores que 234, use < 234. |
|
>= "Cajhen" |
Retorna todos os registros de Cajhen até o fim do alfabeto. |
|
Entre #2/2/2010# e #12/1/2010# |
Devolve datas de 2-fev-2010 a 1-dez-2010 (ANSI-89). Se o banco de dados utilizar os caracteres curinga ANSI-92, use aspas simples (') em vez do sinal de numeral (#). Exemplo: entre "2/2/2010" e "1/12/2010". |
|
Não "Alemanha" |
Localiza todos os registros em que os conteúdos exatos do campo não são exatamente iguais a "Alemanha". O critério retornará registros que contêm caracteres além de "Alemanha," tais como "Alemanha (euro)" ou "Europa (Alemanha)". |
|
Não "T*" |
Localiza todos os registros, exceto aqueles que começam com T. Se o banco de dados utilizar o conjunto de caracteres curinga ANSI-92, use o símbolo de porcentagem (%) em vez do asterisco (*). |
|
Não "*t" |
Localiza todos os registros que não terminam com t. Se o banco de dados utilizar o conjunto de caracteres curinga ANSI-92, use o símbolo de porcentagem (%) em vez do asterisco (*). |
|
In(Canadá,RU) |
Em uma lista, localiza todos os registros que contêm Canadá ou Reino Unido. |
|
Como "[A-D]*" |
Num campo Texto, encontra todos os registos que começam com as letras A a D. Se a base de dados utilizar o conjunto de carateres universais ANSI-92, utilize o sinal de percentagem (%) em vez do asterisco (*). |
|
Como "*ar*" |
Localiza todos os registros que incluem a sequência de letras "ar". Se o banco de dados utilizar o conjunto de caracteres curinga ANSI-92, utilize o sinal de porcentagem (%) no lugar do asterisco (*). |
|
Como "Maison Dewe?" |
Localiza todos os registros que começam por "Maison" e contêm uma outra cadeia de 5 letras, na qual as primeiras 4 letras são "Dewe" e a última letra é desconhecida. Se o banco de dados utilizar o conjunto de caracteres curingas ANSI-92, use o sublinhado (_) no lugar do ponto de interrogação (?). |
|
#2/2/2010# |
Localiza todos os registos de 2 de fevereiro de 2010. Se a base de dados utilizar o conjunto de carateres universais ANSI-92, coloque aspas simples na data em vez de sinais de cardinal ("2/2/2010"). |
|
< Data() - 30 |
Usa a função Date para retornar todas as datas com mais de 30 dias. |
|
Data() |
Usa a função Date para retornar todos os registros que contêm a data de hoje. |
|
Entre Date() e DateAdd("M", 3, Date()) |
Utiliza as funções Data e DataAdicionar para devolver todos os registos entre a data atual e três meses a partir da data atual. |
|
É nulo |
Retorna todos os registros que contêm um valor nulo (em branco ou indefinido). |
|
Não é nulo |
Devolve todos os registos que contêm qualquer valor (que não são nulos). |
|
"" |
Retorna todos os registros que contêm uma cadeia de comprimento zero. Utilize cadeias de comprimento zero quando precisar de adicionar um valor a um campo obrigatório, mas ainda não sabe qual é o valor real. Por exemplo, um campo pode solicitar um número de fax, mas alguns de seus clientes talvez não possuam aparelho de fax. Nesse caso, em vez de introduzir um número, introduza um par de aspas duplas sem espaço entre as mesmas (""). |
Dicas para solução de problemas
Por que estou vendo esta mensagem de erro e como eu corrijo esse erro?
Se criar uma consulta eliminar com múltiplas tabelas e a propriedade Registos Exclusivos da consulta estiver definida como Não, o Access apresenta a mensagem de erro; Não foi possível eliminar das tabelas especificadas ao executar a consulta.
Para corrigir esse problema, defina a propriedade Registros exclusivos da consulta como Sim.
-
Abra a consulta exclusão no modo Design.
-
Se a folha de propriedades da consulta não estiver aberta, pressione F4 para abri-la.
-
Clique no designer de consulta para mostrar as propriedades da consulta (em vez das propriedades do campo).
-
Na folha de propriedades da consulta, localize a propriedade Registros Exclusivos e defina-a como Sim.
Impedir que o Modo Desabilitado bloqueie uma consulta
Por predefinição, se abrir uma base de dados de ambiente de trabalho na qual não tenha optado por confiar ou que não resida numa localização fidedigna, o Access bloqueia a execução de todas as consultas de ação.
Se você tentar executar uma consulta de ação e perceber que nada acontece, verifique se a seguinte mensagem aparece na barra de status do Access:
Esta ação ou este evento foi bloqueado pelo Modo Desabilitado.
Quando vir essa mensagem, siga o passo seguinte para ativar o conteúdo bloqueado:
-
Na Barra de Mensagens de Aviso de Segurança , clique em Ativar Conteúdo e execute novamente a consulta.