Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

page_up

[Resolvido] Delete

Recommended Posts

Como eu faço para decrementar o sequencial de uma tabela depois de realizar um delete ou durante sua execuçao mesmo ???

 

ex.: < Tabela_01 >

campos - sequencial...id...nome...informacao

 

DELETE FROM Tabela_01

WHERE id = 5

 

agora tenho q decrementar todos os elementos do campo sequencial, para voltar a ordem normal sem pular do 4 direto pro 6

 

 

desde ja agradeço!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode utilizar a função DBCC CHECKIDENT para fazer isso.

 

Criei um post no meu blog com um exemplo bastante completo de como resolver isso!

 

Dê uma olhada aqui

 

att

 

Rodrigo

Conheça o meu blog: http://www.tsqlmaster.net

 

 

Como eu faço para decrementar o sequencial de uma tabela depois de realizar um delete ou durante sua execuçao mesmo ???

 

ex.: < Tabela_01 >

campos - sequencial...id...nome...informacao

 

DELETE FROM Tabela_01

WHERE id = 5

 

agora tenho q decrementar todos os elementos do campo sequencial, para voltar a ordem normal sem pular do 4 direto pro 6

 

 

desde ja agradeço!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode utilizar a função DBCC CHECKIDENT para fazer isso.

 

Criei um post no meu blog com um exemplo bastante completo de como resolver isso!

 

Dê uma olhada em: http://www.tsqlmaster.net/2009/06/contando...cias-de-um.html

 

att

 

Rodrigo

Conheça o meu blog: http://www.tsqlmaster.net

 

Rodrigo,

 

Primeiramente obrigado pela ajuda, entendi oque você falou, mais minha tabela não foi criada com identity.

 

eu criei o sequencial assim:

 

INSERT INTO Tabela_01 (sequencial, informacao)

SELECT ISNULL(MAX(sequencial),0)+1, 'dados da Tabela'

FROM Tabela_01

 

não da para usar o DBCC CHECKIDENT('Tabela_01',RESEED, 2), e eu não posso mudar a estrutura inicial...

 

OBS.: vi seu blog...bem legal

 

abraço, page_up!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

porque precisa fazer isso?

 

tem tabelas que dependem destes valores? se tiver pode ter problema com esta alteração

 

quanto a alteração em si é simples

 

apenas apos uma exclusão faça um update

 

DELETE FROM Tabela_01 WHERE id = 5

UPDATE Tabela_01 SET id = id - 1 WHERE id >= 5

mas como disse pode ter problemas com isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

porque precisa fazer isso?

 

tem tabelas que dependem destes valores? se tiver pode ter problema com esta alteração

 

quanto a alteração em si é simples

 

apenas apos uma exclusão faça um update

 

DELETE FROM Tabela_01 WHERE id = 5

UPDATE Tabela_01 SET id = id - 1 WHERE id >= 5

mas como disse pode ter problemas com isso

 

Mário Monteiro,

 

era isso mesmo que eu queria saber...a coluna não tem relacionamento com nenhuma outra tabela...ele é apenas um sequencial que precisa ficar sempre na ordem certa...SEM BURACOS

 

o que eu queria saber mesmo é se dava pra fazer tudo dentro do DELETE...mais desse jeito é melhor mesmo...um depois do outro...1º DELETE depois o UPDATE

 

 

VLW ai pessoal...abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, delete, insert e update são comandos absolutos... não se consegue fazer um delete junto com um insert e update nem um update com insert e delete ao mesmo tempo. Ou seja, primeiro você faz um pra depois fazer o outro, nunca eles juntos e/ou ao mesmo tempo.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, delete, insert e update são comandos absolutos... não se consegue fazer um delete junto com um insert e update nem um update com insert e delete ao mesmo tempo. Ou seja, primeiro você faz um pra depois fazer o outro, nunca eles juntos e/ou ao mesmo tempo.

 

[]'s

Chrnos,

 

entendi...vivendo e aprendendo.(ahahahahahaha)

 

Brigadão ai galera, abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

que bom que resolveu

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coincidência.

 

Eu também tinha esta dúvida.

 

A dica do tsqlmaster funcionou perfeitamente pra mim! :)

 

Muito obrigado! :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

que bom que o topico já começou a ajudar outros usuarios

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.