Apa itu Sequence?
Urutan adalah objek database yang secara otomatis menghasilkan daftar nilai numerik yang bertambah sesuai dengan aturan yang ditentukan dalam spesifikasi urutan.
Misalnya untuk memasukkan nomor karyawan secara otomatis di kolom (EMPLOYEE_NO) Tabel, ketika record baru dimasukkan ke dalam tabel, maka kita menggunakan sequence.
Nilai urutan dibuat dalam urutan Naik atau Turun.
Urutan tidak terkait dengan tabel; mereka digunakan oleh aplikasi. Ada dua nilai secara berurutan -
- CURRVAL - Memberikan nilai Urutan Saat Ini.
- NEXTVAL - Memberikan nilai urutan berikutnya.
SINTAKSIS
BUAT URUTAN[ ] [SETEL ULANG OLEH ]
ELEMEN SINTAKS
ELEMEN | DESKRIPSI |
---|---|
Itu adalah nama urutannya. | |
[ | Ini menentukan satu atau lebih parameter urutan. |
MULAI DENGAN | Ini menggambarkan nilai urutan awal. |
INCREMENT BY | Ini menentukan nilai yang akan ditambahkan dari nilai terakhir yang ditetapkan untuk setiap kali nilai urutan baru dibuat. Standarnya adalah 1. |
MAXVALUE | Ini menentukan nilai maksimum, yang dapat dihasilkan oleh urutan. |
TIDAK ADA MAXVALUE | Ketika NO MAXVALUE ditentukan, untuk urutan menaik, nilai maksimum adalah 4611686018427387903 dan nilai minimum untuk urutan menurun adalah -1. |
MINVALUE | Ini menentukan nilai minimum yang dapat dihasilkan urutan. |
SIKLUS | Direktif CYCLE menentukan bahwa nomor urut akan dimulai ulang setelah mencapai nilai maksimum atau minimumnya. |
TIDAK ADA SIKLUS | Opsi default. TIDAK ADA direktif CYCLE menentukan bahwa nomor urut tidak akan dimulai ulang setelah mencapai nilai maksimum atau minimumnya. |
CACHE | Ukuran cache menentukan kisaran nomor urut mana yang akan di-cache dalam sebuah node. |
TIDAK ADA CACHE | Pilihan standar. NO CACHE direktif menentukan bahwa nomor urut tidak akan di-cache dalam sebuah node. |
SETEL ULANG DENGAN | Ini menentukan bahwa selama restart database, database secara otomatis menjalankan |
Contoh -
Kami akan membuat urutan dengan nama DHK_SCHEMA.EMP_NO, yang akan membuat nilai tambahan dari urutan dengan +1 setiap kali, ketika urutan digunakan.
Skrip Urutan -
BUAT URUTAN DHK_SCHEMA.EMP_NO MULAI DENGAN 100 PENINGKATAN DENGAN 1.
Di sini kita akan menggunakan objek "sequence" pada contoh di bawah ini untuk menaikkan nilai employee no dengan +1 setiap kali query pemilihan dijalankan. Dalam kueri, "nextval" dapat digunakan untuk pembuatan nomor seri atau jenis persyaratan yang sama.
Penggunaan Urutan -
PILIH DHK_SCHEMA.EMP_NO.nextval DARI DUMMY;
OUTPUT - 100.101.102
… Jadi pada setiap eksekusi kueri pemilihan di atas.