PDA

Ver la Versión Completa : Borrar datos de tablas


JuanSB
09-10-2004, 15:19:17
Hola a tod@s:

Tengo una base de datos en SQL Server. Casi todas ellas tienen campos autoincrementales para las claves primarias. Deseo borrar todos los datos, y al mismo tiempo reiniciar el contador de "identidad". He leído que con "truncate table" se puede hacer, pero no en tablas con claves foráneas.

¿Alguna solución?

Muchas gracias de antemano.

Neftali [Germán.Estévez]
11-10-2004, 16:14:03
Sé que se puede hacer borrando la columna y volviendola a crear, pero talvez exista (casi seguro) una solución más eficiente.


DELETE FROM Tabla1
ALTER TABLE Tabla1 DROP COLUMN CAmpoInc
ALTER TABLE Table1 ADD CampoInc int IDENTITY(1,1)

Neftali [Germán.Estévez]
11-10-2004, 17:03:14
...pero talvez exista (casi seguro) una solución más eficiente
Efectivamente existe, puedes utilizar DBCC CHECKIDENT; Después del borrado puedes ejecutar ésta instrucción para inicializar de nuevo la semilla.


DELETE FROM Tabla1
DBCC CHECKINDENT (Tabla1, RESEED, 0)


En lugar de 0 puedes utilizar el valor de inicialización que deses.