Listeros:
Como ejercicio de autoaprendizaje me propuse resolver el siguiente problema:
tengo una tabla con la primer columna int y la otra varchar.
No importa que coloco en la columna varchar. La tabla tampoco tiene ningún
tipo de constraint.
La cuestión es que incorporo valores a la columna int que son siempre
ascendentes pero no necesariamente consecutivos (por ej.: 4,8,9,12)
Al eliminar filas de la tabla, se activa un trigger que hace un update sobre
la columna int de manera que quede con valores ascendentes y comenzando por
1.
Un ejemplo concreto:
4, 'cuatro'
8, 'ocho'
9, 'nueve'
12, 'doce'
El delete elimina la fila del 8 y del 12, de manera que el trigger tiene que
dejarme esto en la tabla:
1, 'cuatro'
2, 'nueve'
No le busquen una aplicación al ejercicio por que tal vez no la tenga, pero
me sirve para aprender.
Yo resolví el problema y construí un trigger que hace esto. Pero mi pregunta
es si existe algún modo en SQL Server de ir pasando de fila en fila para
asignar a la columna int los valores 1, 2, 3, etc.
A mi se me ocurrió que podrían servirme los cursores, pero realmente no sé
si es así y necesito ver otras posibilidades.
Muchas gracias.
Federico
Leer las respuestas