Applies ToAccess para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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.

Nota: Antes de eliminar dados ou de executar uma consulta eliminar, certifique-se de que faz uma cópia de segurança da base de dados de ambiente 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 utilizá-lo

Resultados

Utilizar uma consulta eliminar

Para remover registos inteiros (linhas) de uma tabela ou de duas tabelas relacionadas em simultâneo.

Nota: 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).

Início da Página

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:

    1. Clique com o botão direito do rato em Iniciar e clique em Abrir o Explorador do Windows.

    2. Clique com o botão direito do rato no ficheiro da base de dados e clique em Propriedades.

    3. 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.

Sugestão: 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

  1. Clique no separador Ficheiro > Abrir.

  2. 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.

    Abrir ficheiros no modo Exclusivo

Fazer uma cópia de segurança da base de dados

  1. Clique no separador Ficheiro e aponte para Guardar Como.

  2. Clique em Guardar Base de Dados Como e clique em Fazer Cópia de Segurança da Base de Dados. O Access fecha o ficheiro original, cria uma cópia de segurança e reabre o ficheiro original.

  3. Clique em Guardar Como , especifique um nome e localização para a cópia de segurança e clique em Guardar.

Nota: 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 restaurar uma cópia de segurança, feche e mude o nome do ficheiro original, de modo a que a cópia de segurança possa utilizar o nome da versão original. Atribua o nome da versão original à cópia de segurança e abra esta 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 de verificação Mostrar 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.

  1. No separador Estrutura , clique em Ver > Vista de Folha de Dados.

  2. Verifique se a consulta devolve os registos que pretende eliminar e, em seguida, prima CTRL+S para guardar a consulta.

  3. Para executar a consulta, faça duplo clique na consulta no Painel de Navegação.

Início da Página

Utilizar uma consulta atualização

Nota: 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.

  1. Clique no separador Criar e, no grupo Consultas , clique em Estrutura da Consulta.

  2. 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.

  3. 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 de verificação Mostrar 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 .

    Nota: 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.

  4. No separador Estrutura, no grupo Resultados, clique em Vista e, em seguida, clique em Vista Folha de Dados.

  5. 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 ("").

  6. 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.

  7. Para executar a consulta, faça duplo clique na consulta no Painel de Navegação.

Início da Página

Informações Adicionais

Eliminar dados de tabelas relacionadas

Se quiser eliminar dados de várias tabelas relacionadas, tem de ativar as opções Integridade Referencial e Propagar Eliminação de Registos Relacionados para cada relação. Isto permite que a consulta elimine dados das tabelas nos lados "um" e "muitos" da relação. A preparação de dados relacionados eliminados requer a verificação do seguinte:

  • Determine que registos residem no lado "um" da relação e que residem no lado "muitos".

  • Se precisar de eliminar registos no lado "um" da relação e os registos relacionados no lado "muitos", ative um conjunto de regras denominado Integridade Referencial e ative eliminações em cascata. Os passos nesta secção explicam a Integridade Referencial e como executar ambas as tarefas.

  • Se precisar de eliminar registos apenas no lado "um" da relação, primeiro elimine essa relação e, em seguida, elimine os dados.

Se precisar de remover dados apenas no lado "muitos" da relação, pode criar e executar a consulta eliminar sem ter de alterar a relação.

Para saber que registos residem nos lados "um" e "muitos" de uma relação, no separador Ferramentas de Base de Dados , no grupo Relações , clique em Relações. O separador Relações apresenta as tabelas na base de dados e as relações. Cada relação é representada como uma linha que liga tabelas entre campos.

A figura seguinte mostra uma relação típica. A maioria, se não todas, das relações numa base de dados tem um lado "um" e um lado "muitos". O diagrama de relação indica o lado "um" com o lado numeral (1) e o lado "muitos" com o símbolo infinito ().

Uma relação entre duas tabelas

Quando elimina registos no lado "um" da relação, também elimina todos os registos relacionados no lado "muitos" da relação. No entanto, quando elimina registos no lado "muitos" de uma relação, normalmente não elimina registos no lado "um".

Além disso, o Access impõe automaticamente um conjunto de regras denominado integridade referencial. Estas regras garantem que as chaves externas numa base de dados contêm os valores corretos. Uma chave externa é uma coluna cujos valores correspondem aos valores na coluna de chave primária de outra tabela.

Editar a relação

Siga estes passos apenas quando precisar de eliminar dados nos lados "um" e "muitos" de uma relação.

  1. No separador Ferramentas da Base de Dados, no grupo Relações, clique em Relações.

  2. 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.

  3. Na caixa de diálogo Editar Relações , certifique-se de que a caixa de verificação Impor Integridade Referencial está selecionada.

  4. Selecione a caixa de verificação Propagar Eliminação de Registos Relacionados .

    Nota: 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.

  5. Clique em OK, feche o painel Relações e, em seguida, avance para o próximo conjunto de passos.

Eliminar uma relação

  1. Se ainda não o fez, abra o painel Relações .

  2. No separador Ferramentas da Base 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.

  3. 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.

Nota: 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.

Início da Página

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

Devolve todos os números maiores que 234. Para localizar todos os números inferiores a 234, utilize < 234.

>= "Cajhen"

Devolve todos os registos desde Cardoso até ao final do alfabeto.

Entre #2/2/2010# e #12/1/2010#

Devolve datas de 2-fev-2010 a 1-dez-2010 (ANSI-89). Se a base de dados utilizar os carateres universais ANSI-92, utilize plicas (') em vez de sinais de cardinal (#). Exemplo: entre "2/2/2010" e "1/12/2010".

Negado "Alemanha"

Localiza todos os registos nos quais o conteúdo exato do campo não seja exatamente igual a "Alemanha". O critério irá devolver registos que contenham carateres para além de "Alemanha", por exemplo "Alemanha (Euro)" ou "Europa (Alemanha)".

Negado "T*"

Localiza todos os registos exceto aqueles que começam com a letra T. Se a base de dados utilizar o conjunto de carateres universais ANSI-92, utilize o sinal de percentagem (%) em vez do asterisco (*).

Negado "*t"

Localiza todos os registos que não terminam com t. Se a base de dados utilizar o conjunto de carateres universais ANSI-92, utilize o sinal de percentagem (%) em vez do asterisco (*).

Em(Canadá,Reino Unido)

Numa lista, localiza todos os registos 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 registos que incluem a sequência de letras "ar". Se a base de dados utilizar o conjunto de carateres universais ANSI-92, utilize o sinal de percentagem (%) em vez do asterisco (*).

Como "Solar Celt?"

Localiza todos os registos que começam com "Solar" e que contêm uma segunda cadeia com 5 letras sendo as 4 primeiras "Celt" e a última é desconhecida. Se a base de dados utilizar o conjunto de carateres universais ANSI-92, utilize o caráter de sublinhado (_) em vez 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

Utiliza a função Data para devolver todas as datas com mais de 30 dias.

Data()

Utiliza a função Data para devolver todos os registos com a data atual.

Entre Data() E SomData("M"; 3; Data())

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

Devolve todos os registos 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).

""

Devolve todos os registos 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 poderá necessitar de um número de fax, mas alguns dos clientes poderão não ter aparelhos de fax. Nesse caso, em vez de introduzir um número, introduza um par de aspas duplas sem espaço entre as mesmas ("").

Início da Página

Sugestões de resolução de problemas

Por que razão me foi apresentada esta mensagem de erro e como posso corrigir o 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 resolver este problema, defina a propriedade Registos Exclusivos como Sim.

  1. Abra a consulta eliminar na vista de Estrutura.

  2. Se a folha de propriedades da consulta não estiver aberta, prima a tecla F4 para abri-la.

  3. Clique no estruturador de consultas para apresentar as propriedades da consulta (em vez das propriedades do campo).

  4. Localize a propriedade Registos Exclusivos na folha de propriedades da consulta e defina-a como Sim.

Impedir que o Modo Desativado 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 tentar executar uma consulta de ação e parecer que nada acontece, verifique se a barra de estado do Access apresenta a seguinte mensagem:

Esta ação ou evento foi bloqueado pelo Modo Desativado.

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.

Início da Página

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.