7 Şubat 2014 Cuma

Sadece IDENTITY alanı olan tabloya kayıt ekleme nasıl yapılır ? Ne işe yarar ?

Merhabalar,

SQL Server'da çalışırken bazı durumlarda sadece IDENTITY alanı olan bir tabloyu kullanmamız ve kayıt eklememiz gerekebilir.

Peki bu tabloda ki IDENTITY den yararlanarak nasıl kayıt ekleyeceksiniz ve ne işe yarar ?
İşte bu soruların cevaplarını aşağıda bulabilirsiniz :)


Önce tablomuzu oluşturalım;

SET ansi_nulls ON
go
SET quoted_identifier ON
go

CREATE TABLE [dbo].[IdentityTestTable]
  (
     [ID] [INT] IDENTITY(1, 1) NOT NULL,
     CONSTRAINT [PK_IdentityTestTable] PRIMARY KEY CLUSTERED ( [ID] ASC )WITH (
     pad_index = OFF, statistics_norecompute = OFF, ignore_dup_key = OFF,
     allow_row_locks = on, allow_page_locks = on) ON [PRIMARY]
  )
ON [PRIMARY]
go 

Şimdide Insert Kodumuzu yazalım;

INSERT INTO IdentityTestTable
DEFAULT VALUES

SELECT Scope_identity() AS ID 

DEFAULT ile görmüş olduğunuz gibi Identity alana yeni kayıt eklemeyi yapıyoruz.
Select cümlesindeki Scope_Identity() ile yeni üretilen ID'yi görebiliyoruz.

Peki sadece ID alanı içeren bir tablo ne işinize yarar ?
Çoklu dil desteği olan bir proje geliştiriyorsanız eğer çok fazlasıyla işinize yarayacaktır.
Diyelim ki bütün dillerde aynı ID ile işlem yapmak istiyorsunuz. Bir ana / baz tablo ihtiyacınız olacaktır. Bu tablo'nun görevi sadece ID üretmek olacak. Diğer tablolar buradaki ID leri referans alacaklardır.


Umarım işinize yarar.

Sevgiler,
Cihan.