none
IDENTITY

    Pergunta

  • Turma,

    Tenho uma tabela que preciso atualizar uma coluna id, porém ela é identity.
    Tem como desligar o identity temporariamente para que eu consiga fazer o update.
    Estou tentando o código abaixo, mas sem sucesso, recebo a mensagem 'Não é possível atualizar a coluna de identidade 'id'.'


    set identity_insert temp_xxx ON

    update temp_xxx set id = id * 100

    set identity_insert temp_xxx OFF

    select * from temp_xxx


    Valeu !!!
    terça-feira, 7 de agosto de 2007 19:36

Respostas

  •  
     
    Pablicio,
     
    Uma maneira que eu utilizo para fazer o update é usando o camando:
     
    dbcc checkident (tabela, RESEED,@Novo_Numero )
    Este comando altera o valor que o identity vai começar a inserir.
     
    Com isso eu crio uma tabela temporária com os registros da principal, deleto os registros da principal, altero o numero que irá iniciar a contagem e volto os registros para ela da temporária.
     
     
     
    []'s
     
    Rafael Krisller
     
     
    terça-feira, 7 de agosto de 2007 19:43

Todas as Respostas

  •  
     
    Pablicio,
     
    Uma maneira que eu utilizo para fazer o update é usando o camando:
     
    dbcc checkident (tabela, RESEED,@Novo_Numero )
    Este comando altera o valor que o identity vai começar a inserir.
     
    Com isso eu crio uma tabela temporária com os registros da principal, deleto os registros da principal, altero o numero que irá iniciar a contagem e volto os registros para ela da temporária.
     
     
     
    []'s
     
    Rafael Krisller
     
     
    terça-feira, 7 de agosto de 2007 19:43
  •  
     
    Pablicio,
     
    Uma maneira que eu utilizo para fazer o update é usando o camando:
     
    dbcc checkident (tabela, RESEED,@Novo_Numero )
    Este comando altera o valor que o identity vai começar a inserir.
     
    Com isso eu crio uma tabela temporária com os registros da principal, deleto os registros da principal, altero o numero que irá iniciar a contagem e volto os registros para ela da temporária.
     
     
     
    []'s
     
    Rafael Krisller
     
     
    terça-feira, 7 de agosto de 2007 19:43
  •  
     
    Pablicio,
     
    Uma maneira que eu utilizo para fazer o update é usando o camando:
     
    dbcc checkident (tabela, RESEED,@Novo_Numero )
    Este comando altera o valor que o identity vai começar a inserir.
     
    Com isso eu crio uma tabela temporária com os registros da principal, deleto os registros da principal, altero o numero que irá iniciar a contagem e volto os registros para ela da temporária.
     
     
     
    []'s
     
    Rafael Krisller
     
     
    terça-feira, 7 de agosto de 2007 19:43