Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Resetear el autoincremental del campo Identity (https://www.clubdelphi.com/foros/showthread.php?t=70994)

BlueSteel 23-11-2010 19:40:55

Resetear el autoincremental del campo Identity
 
Hola Amigos...

bueno, esto más que consulta lo dejo por si alguien lo necesita.... Estaba buscando esto en el Foro y no lo encontre..

La idea es resetear el Autoincremental de un campo Identity de una Tabla en SQL Server.

El comando utilizado desde una consulta SQL es el siguiente
Código SQL [-]
DBCC CHECKIDENT (Nombre_Tabla, RESEED, 0)

Esto es estando posicionado en la Base donde se encuentra la tabla

Al ejecutar esto entrega un mensaje similar al siguiente:
Código:

Comprobación de información de identidad: valor de identidad actual '24',
valor de columna actual '0'. Ejecución de DBCC completada.
Si hay mensajes de error, consulte al administrador del sistema.

En este caso el 24 era el numero que tenia actualmente la tabla y que se vuelve a cero.

Salu2:p:D

ContraVeneno 23-11-2010 21:23:53

Estoy suponiendo que la tabla tendría que estar vacía...

¿cierto?

No veo que esa consulta indique que va a borrar todo el contenido...:confused::confused:

BlueSteel 23-11-2010 22:57:57

Cita:

Empezado por ContraVeneno (Mensaje 383104)
Estoy suponiendo que la tabla tendría que estar vacía...

¿cierto?

No veo que esa consulta indique que va a borrar todo el contenido...:confused::confused:


bueno.. si.. eso es obvio... es que cuando empiezas a realizar muchas pruebas ... la idea es volver a dejarla en cero....

un pequeño detalle...

Salu2:p:D

microbiano 24-11-2010 00:02:40

hola tambien existe la opcion si no mal recuerdo de truncate table "nombre de la tabla" y esto te inicializa toda la tabla corrijanme si me equivoco ,-)

ContraVeneno 24-11-2010 01:19:39

truncate table te borra todos los registros, pero no inicializa los campos indentidad a cero... es decir, si tenías 11 registros, con el truncate, los borras, pero el siguiente registro tendrá un ID de 12...

microbiano 24-11-2010 05:25:24

contraveneno no es por llevarte la contraria pero de verdad que yo siempre uso truncate table para iniciar las tablas

ljpalmer 16-11-2011 21:55:23

Cita:

Empezado por microbiano (Mensaje 383140)
contraveneno no es por llevarte la contraria pero de verdad que yo siempre uso truncate table para iniciar las tablas

Por si a alquien mas le sirve, es que cuando se trabaja con relaciones entre las tablas si usas el SQL Server 2000 al usar el truncate table puedes obtener un mensaje como este : "No se puede truncar la tabla Nombre_Tabla. Una restricción FOREIGN KEY hace referencia a ella.", por lo que en ese tipo de situaciones ayuda mucho la solución de BlueSteel, la cual me sirvio a mi.
Por ultimo truncate table elimina la tabla y la vuelve a crear de cero, por lo que los Id autoincrementales se vuelven cero y sin registros.

BlueSteel 29-11-2011 20:03:23

Holas...

Siguiendo con este tema, aqui les dejo un link donde saque información sobre los Identity en SQL Server

Salu2


La franja horaria es GMT +2. Ahora son las 07:15:47.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi