Como resolver erros que poderão ocorrer quando actualiza dados em consultas do Access e nos formulários do Access

Artigo: 328828 - Ver produtos para os quais este artigo se aplica.
Moderado: Requer básica macros, codificação e interoperabilidade competências.

Este artigo aplica-se a uma base de dados do Microsoft Access (.mdb) e a um projecto do Microsoft Access (.adp).

Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo descreve erros que possam ocorrer no Access 2000 quando actualiza dados em consultas e formulários. Este artigo também descreve as causas de erros e como resolver esses erros.

Quando tenta actualizar dados numa consulta ou num formulário, poderá receber uma das seguintes mensagens de erro:

Operação tem de utilizar uma consulta actualizável.

- ou -

Este Conjunto de registos não é actualizável.

Mais Informação

Resolução de problemas informações sobre problemas que poderá ocorrer quando actualizar dados numa consulta

  • Quando a consulta for baseada em três ou mais tabelas e existe uma relação muitos-para-um-para-muitos, não é possível actualizar os dados directamente na consulta. Pode actualizar os dados num formulário ou numa página de acesso a dados. Pode fazê baseada na consulta quando a propriedade RecordsetType do formulário está definida como Dynaset (actualizações inconsistentes).
  • Quando a consulta é uma consulta de referência cruzada, não é possível actualizar os dados na consulta.
  • Quando a consulta é uma consulta pass-through SQL da Microsoft, não é possível actualizar os dados na consulta.
  • Quando a consulta está a calcular uma soma, uma média, contagem ou outro tipo de total nos valores num campo, não é possível actualizar os dados na consulta. Além disso, não é possível actualizar uma consulta que referencia um campo na linha Actualizar para de uma tabela de referência cruzada, consulta, uma consulta de selecção ou uma subconsulta que contenha totais ou funções de agregação. Para contornar este problema, utilize a função Agregação de domínio na linha Actualizar para de uma consulta de actualização. Pode referenciar campos de uma consulta de referência cruzada, consulta selecção ou uma subconsulta que contenha totais ou funções de agregação.
  • Quando a consulta for uma consulta união, não é possível actualizar os dados na consulta.
  • Quando a propriedade de Valores exclusivos da consulta estiver definida para Sim , não é possível actualizar os dados na consulta. Para contornar este problema, defina a propriedade Valores exclusivos da consulta para não .
  • Quando a consulta incluir uma tabela ODBC ligada com o índice não exclusivo ou uma tabela do Paradox sem uma chave primária, não é possível actualizar os dados na consulta. Para contornar este problema, adicione uma chave primária ou um índice exclusivo à tabela ligada.
  • Quando não é necessário Actualizar dados tabela de permissões para a consulta ou o subjacente, não é possível actualizar dados. Para resolver este problema, atribua permissões para actualizar os dados.
  • Quando a consulta inclui mais de uma tabela ou consulta e as tabelas ou consultas não estejam ligadas por uma linha de associação na vista de estrutura , não é possível actualizar os dados na consulta. Para resolver este problema, tem de associar as tabelas correctamente para que pode actualizá-las.
  • Quando o campo que pretende actualizar é um campo calculado, não é possível actualizar os dados na consulta.
  • Quando o campo que tentar actualizar é só de leitura, a base de dados está aberto como só de leitura ou a base de dados está localizada numa unidade só de leitura, não é possível actualizar os dados na consulta. Para evitar este problema, não abra a base de dados como só de leitura. Se a base de dados estiver localizado numa unidade que é só de leitura, remova o atributo só de leitura da unidade ou mova a base de dados para uma unidade que não é só de leitura.
  • Quando o campo do registo que tenta actualizar é eliminado ou bloqueado por outro utilizador, não é possível actualizar os dados na consulta. Um registo bloqueado pode ser actualizado assim que o registo está desbloqueado.
  • Quando a consulta é baseada em tabelas com uma relação um-para-muitos, em seguida, os tipos de campos que não poderá modificar são:
    • Campo do lado "um" da associação.
    • O campo de associação do lado "muitos" não é apresentado na folha de dados.
    • Associe o campo do lado "muitos" depois de actualizar dados no lado "um".
    • Existe um campo em branco da tabela no lado "um" de uma relação um-para-muitos com uma associação externa.
    • A chave todo exclusiva da tabela ODBC não é o resultado.
    Pode resolver qualquer destes problemas se efectuam as acções correctas a partir da seguinte lista:
    • Active actualizações em cascata entre as duas tabelas.
    • Adicione o campo de associação do lado "muitos" à consulta para que possa adicionar novos registos.
    • Guarde o registo. Pode efectuar alterações ao campo de associação do lado "muitos".
    • Introduza valores nos campos da tabela no lado "muitos". Pode fazê-lo apenas quando o campo associado do lado "um" contém um valor para esse registo.
    • Seleccione todos os campos de chave primários das tabelas de ODBC para permitir inserções aos mesmos.

Resolução de problemas informações sobre problemas que poderá ocorrer quando actualizar dados num formulário

  • Não é possível actualizar dados num formulário se o formulário se baseia um procedimento armazenado com mais de uma tabela.
  • Não é possível actualizar dados num formulário quando tenta actualizar dados numa página de acesso a dados e uma das seguintes condições for verdadeira:
    • A origem de dados da página não tem uma chave primária, restrição exclusiva ou índice exclusivo.
    • Não existe nenhuma chave primária, não restrição exclusiva ou índice não exclusivo no esquema da página.
    • A página não tem uma NAVEGAÇÃO RECORD controlo.
    Para resolver estes problemas, execute a acção apropriada da seguinte lista:
    • Adicione uma chave primária, restrição exclusiva ou um índice exclusivo à origem de dados da página.
    • Adicione uma chave primária, restrição exclusiva ou índice exclusivo ao esquema da página.

      Para adicionar um destes campos ao esquema, adicione uma chave primária, restrição exclusiva ou um campo de índice exclusivo à estrutura da página. Isto adiciona automaticamente o campo ao esquema da página. Se não pretender neste campo para aparecer na página, eliminá-la a partir da página. Isto permite que o campo permanecem no esquema.
    • Adicione um controlo de NAVEGAÇÃO RECORD à página.
  • Não é possível actualizar dados num formulário se o formulário se baseia um conjunto de registos do ActiveX Data Objects (ADO). Os formulários do Access permitem editar dados de um conjunto de registos ADO se o conjunto de registos ADO é criado utilizando uma combinação do MSDataShape e os fornecedores de OLEDB para SQL Server.

Referências

Para obter informações adicionais, clique números de artigo que se seguem para visualizar os artigos na base de dados de conhecimento da Microsoft:
304179ACC2000: Barra de estado apresenta "Conjunto de registos não actualizável" mensagem quando tenta actualizar uma ligação de tabelas
227053ACC2000: Formulários com base em conjuntos de registos ADO são só de leitura
201990ACC2000: Não é possível adicionar, editar ou eliminar registos na página de acesso a dados

Propriedades

Artigo: 328828 - Última revisão: quarta-feira, 24 de Novembro de 2004 - Revisão: 2.1
A informação contida neste artigo aplica-se a:
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 2002 Standard Edition
  • Microsoft Office Access 2003
Palavras-chave: 
kbmt kbhowto kbtshoot kbfaq kbinfo kbdta kbprb KB328828 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 328828

Submeter comentários