Merhabalar;
Çoğumuz biliriz. Oluşturduğumuz veritabanı, projemizde ilerledikçe testlerimiz sırasında deneme verileriyle dolar ve iyice karışır. Tüm veritabanınızı boşaltmak, identity sütunlarını reset'lemek ve ilk günkü haline getirmek için bir script yazmanız yeterli:
Çoğumuz biliriz. Oluşturduğumuz veritabanı, projemizde ilerledikçe testlerimiz sırasında deneme verileriyle dolar ve iyice karışır. Tüm veritabanınızı boşaltmak, identity sütunlarını reset'lemek ve ilk günkü haline getirmek için bir script yazmanız yeterli:
/*Constraint & Trigger'ları devre dışı bırakma*/
exec
sp_MSforeachtable
'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
exec
sp_MSforeachtable
'ALTER TABLE ? DISABLE TRIGGER ALL'
/*Bütün tablolardaki kayıtları silme*/
exec
sp_MSforeachtable
'DELETE ?'
/*Constraint & Trigger'ları yeniden etkinleştirme*/
exec
sp_MSforeachtable
'ALTER TABLE ? CHECK CONSTRAINT ALL'
exec
sp_MSforeachtable
'ALTER TABLE ? ENABLE TRIGGER ALL'
/*Identity sütunlarını reset'leme (yani yeniden 1'den başlamalarını sağlama)*/
exec
sp_MSforeachtable
'IF OBJECTPROPERTY(OBJECT_ID('
'?'
'), '
'TableHasIdentity'
') = 1 BEGIN DBCC CHECKIDENT ('
'?'
',RESEED,0) END'
İşinize yaradığını düşünüyorum.
Kolay gelsin.
teşekkürler çok yararlı bir makale. Şu baş belası baş belası deneme kayıtlarını temizlemek için aradığım bişeydi :)
YanıtlaSilBu alanlardaki kayıtları silmek için kullandığımda Yabancı anahtarlarda da hata veriyor mu ?
YanıtlaSilHayır foreign key'lerde de bir sorun çıkarmaması gerekiyor.
Sil