Ubuntu Türkiye

Yazılım => Programlama => Diğer => Konuyu başlatan: Timur - 23 Mayıs 2012 - 19:40:52

Başlık: [ÇÖZÜLDÜ] Oracle 10G Express Kullanırken Otomatik ID Artırmak Nasıl Yapılır?
Gönderen: Timur - 23 Mayıs 2012 - 19:40:52
Veritabanları ile ilgili bir forum kategorisi bulamadığım için başlığı buraya açayım dedim.  ;D

Oracle'ın 10G Express Sürümünü kullanıyorum. number tipindeki id değerinin eklenen her kayıtta otomatik olarak artmasını nasıl sağlayabilirim?  :-\


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 23 Mayıs 2012 - 21:13:35

çözdüm. kendisi otomatik sequence atıyor bunun için. atmıyorsa da kendimiz atmalıymışız.
Başlık: Ynt: [ÇÖZÜLDÜ] Oracle 10G Express Kullanırken Otomatik ID Artırmak Nasıl Yapılır?
Gönderen: sem - 09 Haziran 2012 - 21:54:19
Oracle'da otomatik arttırma işlemi yukarıda denildiği gibi sequence'lar aracılığı ile yapılıyor.  Otomatik arttırma işleminin başlangıç değeri, maksimum değeri, minimum değeri, artım miktarı ve cache miktarını belirlemek mümkün.

Bir sequence yaratan kod örneği;

CREATE SEQUENCE seq_examplesequence  --- sequence'ın ismi
    MINVALUE 1  --- alabileceği min değer
    MAXVALUE 999999999999999999999999999   --- alabileceği maksimum değer
    START WITH 1   --- alınacak ilk değer
    INCREMENT BY 1  --- artım oranı
    CACHE 20;     --- cache miktarı (performans açısından belleğe alınan miktar)



Test için;


select seq_examplesequence.nextval  from dual


Bu kodu üst üste çalıştırdğınızda start with değerinden itibaren her bir çalıştırmada increment by değeri kadar, en fazla max değere artarak gider.

Sequence değerini arttırmadan mevcut değeri tespit etmek için;



select seq_examplesequence.currval  from dual


sorgusu kullanılabilir.