Você está offline; aguardando reconexão

PROBLEMA: Erro "Falha de INSERT" ao atualizar tabela referenciada em um modo de exibição indexado

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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 305333
Sintomas
Quando você executa um procedimento armazenado ou SQL instrução INSERT diretamente, que tenta inserir uma linha em uma tabela que é referenciada em um modo de exibição indexado, o seguinte erro pode ocorrer:
INSERT falhou, pois as seguintes opções SET têm configurações incorretas: 'ARITHABORT'
Além disso, este erro pode ocorrer mesmo se "SET ARITHABORT ON" está incluído no lote ou procedimento armazenado que tentativas de INSERT.
Causa
Para inserir uma linha com êxito em uma tabela que é referenciada em um modo de exibição indexado, a configuração ARITHABORT SQL deve ser definida como ON. Além disso, a instrução que se aplica essa configuração deve ser executada em seu próprio lote. Como os procedimentos contêm apenas um lote, adicionando a instrução para o procedimento não funciona.
Resolução
Para resolver esse problema, adicione o código ADO seguinte ao seu aplicativo depois de abrir a conexão ao seu banco de dados:
MyConnection.Execute "SET ARITHABORT ON"				
onde MyConnection é uma referência ao objeto de conexão ADO você está usando para executar o procedimento armazenado que executa um INSERT ou a instrução SQL INSERT.
Situação
Esse comportamento é por design.
Mais Informações
SET ARITHABORT ON é uma das opções que não é definida automaticamente para conexões que usam o provedor OLE DB para SQL Server ou o driver ODBC do SQL Server. Como as conexões de OLE DB e ODBC não especificam uma configuração ARITHABORT, padrão de conexões para o padrão do servidor, que é ARITHABORT OFF.
Referências
Para obter mais informações, consulte os tópicos "Criando uma exibição de indexados" e "Criando um índice" nos manuais online do SQL Server 2000.

Warning: This article has been translated automatically

Propriedades

ID do Artigo: 305333 - Última Revisão: 05/08/2003 19:14:27 - Revisão: 2.2

Microsoft ActiveX Data Objects 2.6, Microsoft ActiveX Data Objects 2.7

  • kbmt kbprb KB305333 KbMtpt
Comentários