Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Identity Increment

Estas en el tema de Identity Increment en el foro de SQL Server en Foros del Web. Amigos. existe alguna forma de iniciar el contador de un campo para una tabla que tiene especificado el Identity Increment en 1, el asunto es ...
  #1 (permalink)  
Antiguo 05/01/2011, 14:43
Avatar de Romi28x  
Fecha de Ingreso: octubre-2007
Mensajes: 185
Antigüedad: 17 años, 1 mes
Puntos: 0
Identity Increment

Amigos.

existe alguna forma de iniciar el contador de un campo para una tabla que tiene especificado el Identity Increment en 1, el asunto es que tengo la tabla y a esta le hago un insert, los registros se agregan y el campo IDDato que tiene especificado el Identity Increment se aumenta de forma automatica, esto esta perfecto, pero el asunto esta en que necesito estar borrando los registros de la tabla para hacer un nuevo insert, cuando hago el nuevo insert con los datos este campo se empieza a incrementar a partir de donde quedo la ultima vez, la unica forma que he encontrado es borrando la tabla completamente y volviendola a crear para que dicho campo comience de nuevo en 1.

conocen alguna forma de hacer esto sin necesidad de de estar haciendole un drop a la tabla.

estoy usando SQL Server 2005.

gracias
  #2 (permalink)  
Antiguo 05/01/2011, 15:08
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Identity Increment

Con esto puedes seguir con el contador en el valor que quieras :)


declare @newseed int
select @newseed = max(columnName) from tableName
dbcc checkident(tableName, RESEED, @newseed)

Saludos!
  #3 (permalink)  
Antiguo 05/01/2011, 16:48
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: Identity Increment

Libras

¿Y si hiciera un DELETE tabla WHERE campo = valor donde el resultado fueran 3,650 registros con multiples accesos?

Ya hemos dicho que los campos con propiedad IDENTITY, no son funcionales para tablas que van a "sufrir" DELETE y no solo eso, que por alguna razon, exista algun tipo de ROLLBACK en un INSERT.

Para "Numerar" de forma MANUAL, seria bueno tomar el MAX(CAMPO) e incrementar en 1, siempre cuidando las transacciones y multiaccesos.

¿de acuerdo?
__________________
MCTS Isaias Islas
  #4 (permalink)  
Antiguo 06/01/2011, 08:35
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Identity Increment

Iislas:

Totalmente de acuerdo, yo solamente respondia que se puede reiniciar la semilla por el valor que dese, aunque si me quede pensando en como quedaria la base si borra y luego quiere meter un dato y demas, de todos modos gracias por la aclaracion la tomare en cuenta :)

Saludos!
  #5 (permalink)  
Antiguo 06/01/2011, 16:25
Avatar de Romi28x  
Fecha de Ingreso: octubre-2007
Mensajes: 185
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Identity Increment

ok gracias a ambos, voy hacer las pruebas.

Etiquetas: increment
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:55.