DB2 - Urutan
Bab ini memperkenalkan Anda pada konsep urutan, pembuatan urutan, melihat urutan, dan membuangnya.
pengantar
Urutan adalah fungsi perangkat lunak yang menghasilkan bilangan bulat baik dalam urutan naik atau turun, dalam kisaran tertentu, untuk menghasilkan kunci primer dan mengoordinasikan kunci lain di antara tabel. Anda menggunakan urutan untuk angka integer yang tersedia, katakanlah, untuk employee_id atau transaction_id. Urutan dapat mendukung tipe data SMALLINT, BIGINT, INTEGER, dan DECIMAL. Urutan dapat dibagikan di antara beberapa aplikasi. Urutan bertambah atau berkurang terlepas dari transaksi.
Urutan dibuat oleh pernyataan CREATE SEQUENCE.
Jenis Urutan
Ada dua jenis urutan yang tersedia:
NEXTVAL: Ini mengembalikan nilai yang bertambah untuk nomor urut.
PREVIOUS VALUE: Ini mengembalikan nilai yang baru saja dihasilkan.
Parameter urutan
Parameter berikut digunakan untuk urutan:
Data type: Ini adalah tipe data dari nilai increment yang dikembalikan. (SMALLINT, BIGINT, INTEGER, NUMBER, DOUBLE)
START WITH: Nilai referensi, yang memulai urutan.
MINVALUE: Nilai minimum untuk memulai urutan.
MAXVALUE: Nilai maksimum untuk suatu urutan.
INCREMENT BY: nilai langkah dimana urutan bertambah.
Sequence cycling: klausa CYCLE menyebabkan pembuatan urutan berulang kali. Pembuatan urutan dilakukan dengan merujuk nilai yang dikembalikan, yang disimpan ke dalam database oleh pembuatan urutan sebelumnya.
Membuat urutan
Anda dapat membuat urutan menggunakan sintaks berikut:
Syntax:
db2 create sequence <seq_name>
Example: [Untuk membuat urutan baru dengan nama 'sales1_seq' dan meningkatkan nilai dari 1]
db2 create sequence sales1_seq as int start
with 1 increment by 1
Melihat urutannya
Anda dapat melihat urutan menggunakan sintaks yang diberikan di bawah ini:
Syntax:
db2 value <previous/next> value for <seq_name>
Example: [Untuk melihat daftar nilai yang diperbarui sebelumnya dalam urutan 'sales1_seq']
db2 values previous value for sales1_seq
Output:
1
-----------
4
1 record(s) selected.
Menghapus urutannya
Untuk menghapus urutan, Anda perlu menggunakan "DROP SEQUENCE
Syntax:
db2 drop sequence <seq_name>>
Example: [Untuk menghapus urutan 'sales1_seq' dari database]
db2 drop sequence sales1_seq
Output:
DB20000I The SQL command completed successfully.