SAP HANA Eğitimi: Sıra Oluşturma
Sıra Nedir?
Sıra, sıra belirtiminde belirtilen kurala göre artan sayısal değerler listesini otomatik olarak üreten bir veritabanı nesnesidir.
Örneğin Tablonun (EMPLOYEE_NO) sütununa çalışan numarasını otomatik olarak eklemek için tabloya yeni bir kayıt eklendiğinde sırayı kullanırız.
Sıra değerleri Artan veya Azalan sırada oluşturulur.
Diziler tablolarla ilişkilendirilmez; uygulama tarafından kullanılırlar. Sırayla iki değer vardır –
- CURRVAL – Dizinin Geçerli değerini sağlar.
- NEXTVAL – Sıranın Sonraki değerini sağlar.
SÖZDİZİMİ
CREATE SEQUENCE <sequence_name> [<sequence_parameter_list>] [RESET BY <subquery>]
SÖZ DİZİMİ ÖĞELERİ
| ELEMENTLER | AÇIKLAMA |
|---|---|
| Bu dizinin adıdır. | |
| [ ] | Bir veya daha fazla sıra parametresini belirtir. |
| İLE BAŞLA | Başlangıç sırası değerini açıklar. |
| ARTIRMA ŞEKLİ | Bu, yeni sıra değeri her oluşturulduğunda atanan son değerden artırılacak değeri belirtir. Varsayılan 1'dir. |
| MAKSİMUM DEĞER | Bu, dizi tarafından üretilebilecek maksimum değeri belirtir. -4611686018427387903 ile 4611686018427387902 arasında olabilir. |
| MAKS DEĞER YOK | NO MAXVALUE belirtildiğinde, artan bir dizi için maksimum değer 4611686018427387903 olacak ve azalan bir dizi için minimum değer -1 olacaktır. |
| MİNDEĞER / MIN DEĞER YOK | Bir dizinin üretebileceği minimum değeri belirtir. -4611686018427387904 ile 4611686018427387902 arasında olabilir. MİNDEĞER YOK kullanıldığında artan dizi için minimum değer 1'dir. |
| DÖNGÜ | CYCLE direktifi, sıra numarasının maksimum veya minimum değerine ulaştıktan sonra yeniden başlatılacağını belirtir. |
| DÖNGÜ YOK | Varsayılan seçenek.NO CYCLE yönergesi, sıra numarasının maksimum veya minimum değerine ulaştıktan sonra yeniden başlatılmayacağını belirtir. |
| ÖNbellek / | Önbellek boyutu, bir düğümde hangi sıra numarası aralığının önbelleğe alınacağını belirtir. işaretsiz tamsayı olmalıdır. |
| ÖNbellek yok | Varsayılan seçenek. NO CACHE yönergesi sıra numarasının bir düğümde önbelleğe alınmayacağını belirtir. |
| SIFIRLAMA ŞEKLİ | Veritabanının yeniden başlatılması sırasında veritabanının otomatik olarak çalıştırılacağını belirtir. ve sıra değeri döndürülen değerle yeniden başlatılır. |
Örnek -
DHK_SCHEMA.EMP_NO isimli bir dizi oluşturacağız ve bu dizi kullanıldığında her seferinde dizinin değerini +1 artıracağız.
Sıra Komut Dosyası –
CREATE SEQUENCE DHK_SCHEMA.EMP_NO START WITH 100 INCREMENT BY 1.
Burada, seçme sorgusu her yürütüldüğünde çalışan no'nun değerini +1 artırmak için aşağıdaki örnekte nesne "sırasını" kullanacağız. Sorguda “nextval” seri numarası üretimi veya aynı tür gereksinim için kullanılabilir.
Sıranın Kullanımı –
SELECT DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;
ÇIKIŞ – 100,101,102………Yani yukarıdaki seçme sorgusunun her yürütülmesinde.
