SQL Server - Renumerar una serie de registros

   
Vista:

Renumerar una serie de registros

Publicado por JosepRad (2 intervenciones) el 01/11/2014 18:42:30
Hola amigos.

Tengo un grupo de registros ordenados por capitulo, subcapitulo i partida.
Cuando se borra una partida, necesitarla poder volver a re-numerar las partidas para que los números sean correlativos.
Es posible hacerlo con una sentencia?
Muchas gracias anticipadas
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias Islas

Renumerar una serie de registros

Publicado por Isaias Islas (3182 intervenciones) el 03/11/2014 00:14:56
¿Para que quieres re-numerar (en caso de que se pudiera)?, simplemente ponle una marca a ese registro como borrado y cuando muestres los registros, colocas una leyenda como en los libros, "pagina dejada en blanco"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Renumerar una serie de registros

Publicado por JosepRad josep@radresa.com (2 intervenciones) el 03/11/2014 11:09:42
Hola Isaias.
Veras, se trata de un programa de presupuestos, en que los registros (partidas) están numerados correlativamente ejemplo : 1.1, 1.2, 1.3.
En el caso de que se borre una partida por ejemplo la 1.2 es necesario re-numerar las que vienen a continuacion, i si se quiere insertar una partida también.

Yo lo hago copiando los registros a una tabla temporal y en base a esta tabla modificar los registros de la tabla original, pero queria saber si existe alguna manera mas eficiente de hacerlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias Islas

Renumerar una serie de registros

Publicado por Isaias Islas (3182 intervenciones) el 03/11/2014 17:22:09
Si tu pregunta va dirigida a que si SQL Server cuenta con algo "mágico" que lo haga, la respuesta es NO, definitivamente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias

Renumerar una serie de registros

Publicado por Isaias (3182 intervenciones) el 03/11/2014 19:33:37
Te dejo este ejemplo:


create table #partidas (factura int, partida int, producto char(5), cantidad int, importe money)

insert into #partidas values (1, 1, 'F01', 10, 1500)
insert into #partidas values (1, 2, 'F02', 100, 800)
insert into #partidas values (1, 3, 'F03', 20, 1500)
insert into #partidas values (1, 4, 'F04', 80, 6500)

SELECT * FROM #partidas
DELETE #partidas WHERE factura = 1 and partida = 3
SELECT * FROM #partidas


DECLARE @id INT
SET @id = 0
UPDATE #partidas
SET @id = partida = @id + 1
WHERE factura = 1
GO

SELECT * FROM #partidas
GO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar