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

O suporte para o Office 2003 terminou

A Microsoft terminou o suporte para o Office 2003 em 8 de Abril de 2014. Esta alteração afetou as suas atualizações de software e opções de segurança. Aprenda o que isto significa para si e como pode ficar protegido.

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
Moderado: Requer base macros, codificação e capacidades de interoperabilidade.

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

Sumário
Este artigo descreve erros que possam ocorrer no Microsoft Access quando actualiza dados em consultas e formulários. Este artigo também descreve as causas dos 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

Obter informações sobre problemas que poderão ocorrer quando actualiza dados numa consulta de resolução de problemas

  • Quando a consulta for baseada em três ou mais tabelas e thereis 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. Cando isto baseados na consulta quando o RecordsetType propriedade do formulário estiver definida como Dynaset(actualizações inconsistentes).
  • Quando a consulta for uma consulta cruzada, é possível actualizar a thedata na consulta.
  • Quando a consulta for uma consulta pass-through do Microsoft SQL, youcannot actualizar os dados na consulta.
  • Quando a consulta está a calcular uma soma, média, contagem ou outro tipo de total nos valores num campo, não é possível actualizar dados em thequery. Além disso, não é possível actualizar uma consulta que referencia um campo na linhaActualizar a partir de uma tabela de referência cruzada, uma consulta, uma consulta de selecção ou asubquery que contenha totais ou funções de agregação. Para contornar thisproblem, utilize a Domínio agregado função na linha Actualizar para um updatequery. Pode fazer referência a campos de uma consulta cruzada, uma consulta de selecção ou asubquery que contêm totais ou funções de agregação.
  • Quando a consulta for uma consulta de União, é possível actualizar dados na consulta.
  • Quando o Valores exclusivos propriedade da consulta é definida como Sim, cannotupdate dados na consulta. Para contornar este problema, defina o Valores exclusivos propriedade da consulta para não.
  • Quando a consulta inclui uma tabela ODBC ligada com nenhum uniqueindex ou uma tabela do Paradox sem uma chave primária, não é possível actualizar dados em thequery. Para contornar este problema, adicione uma chave primária ou um índice exclusivo tabela thelinked.
  • Quando não tem permissões de Actualização de dadospara a consulta ou tabela subjacente, não é possível actualizar dados. Toresolve 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 deestrutura , não é possível actualizar dados na consulta. Problema de resolvethis, tem de associar as tabelas correctamente, de modo pode actualizá-las.
  • Quando o campo que pretende actualizar é um calculatedfield, não é possível actualizar dados na consulta.
  • Quando tenta actualizar o campo é só de leitura, base de dados é aberto como só de leitura ou a base de dados está localizada numa unidade só de leitura, não é possível actualizar dados na consulta. Para evitar este problema, não abra base como só de leitura. Se a base de dados estiver localizada numa unidade que é só de leitura, remova o atributo só de leitura da unidade ou mover a que base de dados para um drivethat não é só de leitura.
  • Quando o campo do registo que tente actualizar a isdeleted ou está bloqueado por outro utilizador, não pode actualizar os dados na consulta. Alocked registo pode ser actualizado, logo que o registo está desbloqueado.
  • Quando a consulta for baseada em tabelas com um um-para-manyrelationship, os tipos de campos que poderá não conseguir modificar áreas segue:
    • Campo do lado "um" da associação.
    • O campo de associação do lado "muitos" não aparece 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 de inteiro exclusiva da tabela ODBC não está a saída.
    Pode resolver qualquer um destes problemas se realizar a acção de thecorrect 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 para o 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ária das tabelas de ODBC para poder fazer inserções aos mesmos.

Obter informações sobre problemas que poderão ocorrer quando actualiza dados num formulário de resolução de problemas

  • Não é possível actualizar dados num formulário, se o formulário se basear num procedimento de astored com mais de uma tabela.
  • Não é possível actualizar dados num formulário quando tenta updatedata 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, uma restrição exclusiva ou um índice exclusivo.
    • Não existe nenhuma chave primária, nenhuma restrição exclusiva ou nenhum índice único no esquema da página.
    • A página não tem um controlo de navegação de registo.
    Para resolver estes problemas, tome a acção apropriada da seguinte lista:
    • Adicione uma chave primária, uma restrição exclusiva ou um índice exclusivo para a origem de dados da página.
    • Adicione uma chave primária, uma restrição exclusiva ou um índice exclusivo para o esquema da página.

      Para adicionar um destes campos ao esquema, adicione uma chave primária, uma restrição exclusiva ou um campo de índice exclusivo para a estrutura da página. Isto adiciona automaticamente o campo ao esquema da página. Se não pretender que este campo vai aparecer na página, elimine-a partir da página. Isto permite que o campo permaneça no esquema.
    • Adicione um controlo de navegação em registos para a página.
  • Não é possível actualizar dados num formulário, se o formulário se basear num conjunto de registos do anActiveX Data Objects (ADO). Formulários do Access permitem editar recordset de ADO de froman de dados se o conjunto de registos ADO é criado utilizando uma combinação de theMSDataShape e os fornecedores de OLEDB do SQL Server.

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 328828 - Última Revisão: 10/01/2015 14:51:00 - Revisão: 2.0

Microsoft Access 2000 Standard Edition, Microsoft Access 2002 Standard Edition, Microsoft Office Access 2003, Microsoft Office Access 2007, Microsoft Access 2010, Access 2016, Microsoft Access 2013

  • kbhowto kbtshoot kbfaq kbinfo kbdta kbprb kbmt KB328828 KbMtpt
Comentários