Oracle veritabanı platformunda diğer bazı platformlarda bulunan autonumber gibi otomatik veri tipleri bulunmamaktadır. (En azından ben şu ana kadar böyle bişi görmedim 🙂 ) Dolayısı ile tablolarda satırlara benzersiz (unique) bir tanımlayıcı eklemek için başka yöntemler kullanılır. Bunlardan en çok kullanılanı bir adet sequence oluşturup insert olayına atanan bir trigger ile gerekli alana istenen benzersiz değerin sequence’tan okunarak atanmasıdır.

Şimdi anlatacağım yöntemin ne avantajı olur açıkçası bilmemekteyim, fakat şöyle bir fikrim var veritabanı nesne sayısını azaltabilir. Bu yöntem de işleyiş açısından yukardaki (herkesin kullandığı) yönteme benzemekte. Tek farkı sequence kullanılmaması. Sequence kullanmak yerine tablonun rownum pseudo-column (yalancı alan) değerini sorgulamak ve değeri almaktır. Bu işlemde belirli bir satıra veya değere göre sorgulama yapmadığımız için mantık doğru çalışacaktır. Ancak şöyle bir dezavantajı var ki (prroze ‘ye teşekkür ederim) eğer tablodan kayıt çıkarırsanız bu işlem sonucunda benzersiz bir anahtar elde edemezsiniz. Dolayısı ile kullanım alanı olarak log tablosu gibi sadece artan yapılarda doğru sonuç verecektir.