sql >> Base de Datos >  >> RDS >> Sqlserver

¿Podemos volver al estado original después de haber usado DBCC CHECKIDENT para reiniciar el recuento de columnas de identidad?

El siguiente código de prueba muestra que la acción DBCC se puede revertir:

create table #t
(id int identity, val1 int)
go

insert #t (val1)
values (1),(2),(3)

select MAX(id) AS before from #t

begin tran 

    delete #t

    dbcc checkident (#t, reseed,0)

    select MAX(id) AS inside_tran from #t   

rollback

select MAX(id) as after_rollback from #t
dbcc checkident (#t, noreseed)