SQL Server’da Artımsal Kimliğin Başlangıç Değerini Sıfırlama

SQL Server’da veritabanlarıyla çalışırken, artımsal kimliğin başlangıç değerini sıfırlamanız gereken durumlarla karşılaşabilirsiniz. Bu, verilerinizin taze başlamasını ya da belirli bir değer aralığından tekrar döngü yapmasını sağlamak istediğinizde özellikle yararlı olabilir; genellikle geliştirme veya test aşamalarında kullanılır. Bu blog yazısında, SQL Server’da bir kimlik sütununun başlangıç değerini sıfırlama sürecini ayrıntılı bir şekilde açıklayacağız ve size net ve öz bir rehber sunacağız.

Kimlik Sütunlarını Anlamak

Artımsal kimlik değerini sıfırlama adımlarına geçmeden önce, bir kimlik sütununun ne olduğuna kısaca değinelim:

  • Kimlik Sütunu: Bir kimlik sütunu, her yeni satır eklendiğinde otomatik olarak ardışık bir numara üreten, SQL Server tablosundaki özel bir sütundur. Genellikle, bu sütun IDENTITY özelliği ile tanımlanır.

Bir kimlik sütunu içeren bir tablo oluşturduğunuzda, bunu şu şekilde ayarlayabilirsiniz:

CREATE TABLE ExampleTable (
    ID INT IDENTITY(1,1) PRIMARY KEY,
    Name VARCHAR(50)
);

Bu örnekte, ilk satırın ID değeri 1 olacak, ikinci satırın ID değeri 2, ve bu şekilde devam edecek, her seferinde 1 artırılacaktır. Ancak, bazen bu diziyi belirli bir sayıya geri sıfırlamak isteyebilirsiniz—genellikle 0 veya 1 gibi—test verilerini yeniden yüklediğinizde olduğu gibi çeşitli nedenlerden dolayı.

Kimlik Değerini Sıfırlama

SQL Server’da bir kimlik sütununun başlangıç değerini sıfırlamak için DBCC CHECKIDENT komutunu kullanabilirsiniz. İşte bunu nasıl yapacağınıza dair bir açıklama:

Adım 1: Tablonuzu Belirleyin

Herhangi bir değişiklik yapmadan önce, kimlik sütununu sıfırlamak istediğiniz tabloyu belirleyin. Bu rehber için tablonuzun adının TableName olduğunu varsayalım.

Adım 2: DBCC CHECKIDENT Komutunu Kullanın

Kimlik değerini sıfırlamak için komut sözdizimi oldukça basittir:

DBCC CHECKIDENT('TableName', RESEED, 0);
  • DBCC CHECKIDENT: Bu komut, belirtilen tablonun mevcut kimlik değerini kontrol eder ve gerekirse sıfırlayabilir.
  • ‘TableName’: Bunu gerçek tablo adınızla değiştirin.
  • RESEED: Bu anahtar kelime, başlangıç değerini sıfırlamak istediğinizi belirtir.
  • 0: Bu, kimlik sütununun yeni başlangıç değeri. Bu değeri ihtiyaçlarınıza göre değiştirebilirsiniz, ancak bu komuttan sonra eklenen ilk satır bu değeri alacak ve oradan artmaya devam edecektir.

Adım 3: Sıfırlamanın Onaylanması

Kimlik değerinin sıfırlandığını doğrulamak için tabloya yeni bir satır ekleyin ve ID değerlerini kontrol edin:

INSERT INTO TableName (Name) VALUES ('Test Entry');
SELECT * FROM TableName;

Bu komuttan sonra, yeni girişin ID değerinin 1 (veya 0, RESEED için belirlediğiniz değere bağlı olarak) olduğunu göreceksiniz, eğer bu belirlediğiniz başlangıç noktası ise.

Sonuç

SQL Server’da artımsal kimliğin başlangıç değerini sıfırlamak, DBCC CHECKIDENT komutunu kullanarak basit bir süreçtir. Bu yetenek, test veya geliştirme aşamalarında, tanımlayıcıların tutarlı ve öngörülebilir olmasını sağlayarak iş akışınızı kolaylaştırmanıza olanak tanır.

Artık kimlik sütunlarını sıfırlamak için sağlam bir şablona sahipsiniz. İyi kodlamalar!