29 Ocak 2013 Salı

SQL SERVER-DE IDENTITY SEED RESET ETMEK

DBCC CHECKIDENT (‘DATABASE_ADI.TABLE_ADI‘, RESEED,1)

yazdigimiz zaman bu T-SQL sorgusu mueyyen olunan database icindeki cedvele aid olan identity seed deyerini 1-e set edir.Yeni bu zaman eger auto increment olan sutunu  2 -2 artmasi ucun teyin etmisikse bu zaman cedvele elave olunan ilk deyerin id-si (identity seed ozelligi verilen sutun) 1-den baslayacaq.Sonra ise 2-2 artacaq.yeni 1,3,5 seklinde.

Bunu basqa cur asagidaki kimide yazmaq olar:

create table Hale
(
id int not null identity(10,5)
primary key(id)
)
Bu zaman Hale cedveline daxil edilen deyerin id-si 10-dan baslayacaq ve 5-5 artacaq.yeni,10,15 ve s.
Oracle-da ise bunun ucun sequence yaratmaliyiq.
CREATE SEQUENCE seq_id
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10


Burada cache daha suretli access etmek ucun yaddasda ne qeder sequence deyerler yaradila bilineceyini mueyyen edir,Eger Hale cedveline melumat daxil etmek istesek o zaman nextval funksiyasindan istifade etmeliyik,
INSERT INTO Hale(id)
VALUES (seq_id.nextval)


Hiç yorum yok:

Yorum Gönder