SQL Server’da Identity Kolonu Değeri Nasıl Resetlenir?

Herkese merhaba,

Bu yazıda SQL Server’da Identity kolonu değerinin nasıl resetleneceği hakkında bilgi vermeye çalışacağım.

SQL Server’da Identity kolonu değerinin düzenli bir şekilde artmasını isteriz. Artmadığı durumlarda düzeltmek de isteyebiliriz.

Aşağıdaki örnek bunun nasıl düzeltilebileceğini içermektedir.

İlk olarak tabloları oluşturup verileri ekleyelim.

--Tablo oluşturulması

CREATE TABLE Calisanlar
(
    ID INT IDENTITY(1, 1),
    Ad VARCHAR(5)
);

--Tabloya veri eklenmesi

INSERT INTO Calisanlar
(
    Ad
)
VALUES
('Yavuz');
INSERT INTO Calisanlar
(
    Ad
)
VALUES
('Hasan Ali');

--Tablonun kontrol edilmesi

SELECT * FROM dbo.Calisanlar

Kodları çalıştırdığınızda aşağıdaki sonucu göreceksiniz.

SQL Server'da Identity Kolonu Değeri Nasıl Resetlenir?

Görüldüğü üzere String or binary data would be truncated hatası verdi ve bir satır ekleme yapmadı. Çünkü biz VARCHAR(5) olarak kolonu belirtmiştik.

Peki yeni bir satır ekleyelim.

--Yeni bir satır ekleyelim.

INSERT INTO Calisanlar(Ad)
VALUES ('Okan')

--Tablonun kontrol edilmesi

SELECT * FROM Calisanlar

Kodu çalıştırdığınızda aşağıdaki sonucu göreceksiniz.

SQL Server'da Identity Kolonu Değeri Nasıl Resetlenir?

Gördüğünüz üzere bir önceki işlemde ekleme yapıldığında hata oluştuğundan dolayı yeni bir satır ekleme işleminde tablo ID değeri 3’den başlamış oldu. Düzeltmek için ilk olarak 3 numaralı ID’yi silip sonrasında aşağıdaki işlemleri yapalım.

--3 numaralı ID'nin silinmesi

DELETE FROM Calisanlar WHERE ID=3

--DBCC CHECKIDENT Kullanımı

DBCC CHECKIDENT ('Calisanlar', RESEED, 1)

--Satır eklenmesi

INSERT INTO dbo.Calisanlar(Ad)
VALUES ('Okan')

--Tablonun kontrol edilmesi

SELECT * FROM Calisanlar

SQL Server'da Identity Kolonu Değeri Nasıl Resetlenir?

Görüldüğü üzere DBCC CHECKIDENT komutunu kullanarak ID değerimizin tekrar düzenli bir şekilde artmasını sağladık.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

541 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!