Usuário com melhor resposta
Erro SQL 2008 R2 - COULD NOT COMPLETE CURSOR OPERATION BECAUSE THE TABLE SCHEMA CHANGED AFTER THEN CURSOR WAS DECLARED

Pergunta
-
Tem vez que estou fazendo um determinado processo no meu sistema recebo essa mensagem
"COULD NOT COMPLETE CURSOR OPERATION BECAUSE THE TABLE SCHEMA CHANGED AFTER THEN CURSOR WAS DECLARED" , vi que no SQL 2005 era um bug mas estou utilizando o SQL 2008 R2 SP2. continuo recebendo essa messagem aguem pode me auxiliar por favor URGENTE
Respostas
-
Fabio,
Então mas a mensagem de erro esta informando que ocorreu uma mudança no schema da tabela referente, neste caso, a alteração do Schema é realizada por alguma transação ou procedimento.
Neste caso, você tem que tentar identificar com ou o que esta realizando este tipo de alteração, replicação não realiza estas alterações.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
- Marcado como Resposta Gustavo M. Guimarães segunda-feira, 17 de dezembro de 2012 13:57
Todas as Respostas
-
Bom dia Fábio.
Então é sempre que você executa um procedimento/processo que esse erro ocorre? Ou as vezes ele nao ocorre? Qual processo seria esse? Por acaso vc nao tem manutenção sendo executada nesse DB como por ex.: reindex, update statistics,..., replicação?
At.
Rafael -
-
Fabio,
Então mas a mensagem de erro esta informando que ocorreu uma mudança no schema da tabela referente, neste caso, a alteração do Schema é realizada por alguma transação ou procedimento.
Neste caso, você tem que tentar identificar com ou o que esta realizando este tipo de alteração, replicação não realiza estas alterações.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
- Marcado como Resposta Gustavo M. Guimarães segunda-feira, 17 de dezembro de 2012 13:57
-
Verifique se na declaração do seu cursor, existe a palavra INSENSITIVE,.
- INSENSITIVE
<sentencetext xmlns="http://www.w3.org/1999/xhtml">Define um cursor que faz uma cópia temporária dos dados a serem usados por ele.</sentencetext> tempdb; logo, as modificações feitas na tabelas base não são refletidas nos dados retornados de buscas feitas nesse cursor, que não permite modificações. Quando a sintaxe de ISO é usada, se INSENSITIVE for omitido, exclusões e atualizações confirmadas nestas tabelas subjacentes (por qualquer usuário) são refletidas em buscas subsequentes.
declare nome_cursor INSENSITIVE cursor for select .......
abs.