none
Erro SQL 2008 R2 - COULD NOT COMPLETE CURSOR OPERATION BECAUSE THE TABLE SCHEMA CHANGED AFTER THEN CURSOR WAS DECLARED RRS feed

  • 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

    sexta-feira, 16 de novembro de 2012 13:03

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]

    quarta-feira, 21 de novembro de 2012 16:25

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

    segunda-feira, 19 de novembro de 2012 10:34
  • Bom dia Rafael

    Tem sim... as vezes pd esta executando sim replicação essa coisa

    terça-feira, 20 de novembro de 2012 11:11
  • 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]

    quarta-feira, 21 de novembro de 2012 16:25
  • 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.



    quarta-feira, 1 de abril de 2015 17:43