Sequences, Indexs, dan Synonym
Mata Kuliah : Structure Query Language II (SQL II)
Dosen : Titik Lusiani, M.Kom, OCA
Blog : blog.stikom.edu/lusiani
Sequences
Indexs
Contoh:
Sequences
Sequence adalah sebuah obyek database yang menghasilkan nilai integer untuk menghasilkan angka-angka.
INCREMENT BY = menentukan
interval antara angka-angka sequence,
dimana n adalah sebuah integer (Jika klausa ini dihilangkan maka sequence akan
ditambah 1)
START WITH = menentukan angka sequence pertama yang dihasilkan (Jika klausa ini dihilangkan, maka sequence dimulai dari 1)
MAXVALUE = menentukan nilai maksimum dari sequence yang dihasilkan
Nomaxvalue = menentukan sebuah nilai maksimum dari 10^27 untuk sequence secara ascending dan 1 untuk sequence secara descending (Ini adalah pilihan default)
MINVALUE = menentukan nilai minimum dari sequence
NOMINVALUE = menentukan sebuah nilai minimum dari 1 secara ascending dan –(10^27) untuk sequence yang descending (Ini adalah pilihan default)
CYCLE | NOCYCLE = menentukan apakah sequence berlanjut untuk menghasilkan nilainilai
setelah mencapai nilai maksimum atau minimum (NOCYCLE adalah pilihan default)
CACHE n | NOCACHE = menentukan berapa banyak nilai yang akan dialokasikan oleh server
Oracle dan disimpan di memory (Secara default, server Oracle menyimpan nilai 20.)
START WITH = menentukan angka sequence pertama yang dihasilkan (Jika klausa ini dihilangkan, maka sequence dimulai dari 1)
MAXVALUE = menentukan nilai maksimum dari sequence yang dihasilkan
Nomaxvalue = menentukan sebuah nilai maksimum dari 10^27 untuk sequence secara ascending dan 1 untuk sequence secara descending (Ini adalah pilihan default)
MINVALUE = menentukan nilai minimum dari sequence
NOMINVALUE = menentukan sebuah nilai minimum dari 1 secara ascending dan –(10^27) untuk sequence yang descending (Ini adalah pilihan default)
CYCLE | NOCYCLE = menentukan apakah sequence berlanjut untuk menghasilkan nilainilai
setelah mencapai nilai maksimum atau minimum (NOCYCLE adalah pilihan default)
CACHE n | NOCACHE = menentukan berapa banyak nilai yang akan dialokasikan oleh server
Oracle dan disimpan di memory (Secara default, server Oracle menyimpan nilai 20.)
.1.
NEXTVAL mengembalikan
urutan nilai selanjutnya yang ada.
.2.
NEXTVAL mengembalikan
suatu nilai unik setiap saat dia direferensikan,
meskipun pada user yang berbeda.
meskipun pada user yang berbeda.
.3.
CURRVAL menghasilkan
urutan nilai saat ini.
.4.
NEXTVAL harus
dikeluarkan untuk urutan tersebut sebelum isi suatu nilai CURRVAL.
Menggunakan
Suatu Sequence
Contoh:
Sisipkan suatu departemen baru dengan nama “Support” pada ID lokasi 2500 :
Sisipkan suatu departemen baru dengan nama “Support” pada ID lokasi 2500 :
INSERT INTO depatrments (department_id,
department_name, located_id)
VALUES (dept_deptid_neq.NEXTVAL, ‘support;.2500);
Tampilkan nilai saat ini untuk urutan DEPT_DEPTID_SEQ :
SELECT
dept_deptid_neq.CURRVAL
FROM dual;
Indexs
Indexs
adalah
obyek-obyek database untuk meningkatkan performa dari beberapa
query. Index-index juga dapat dibuat secara otomotis oleh server ketika membuat suatu primary key atau unique constraint.
Tipe-
Tipe dari Index
Dua
tipe dari index yang dapat dibuat.
.1.
Unique Index :
Server
Oracle secara otomatis membuat index ini saat Anda mendefiniskan suatu kolom
pada suatu tabel yang memiliki suatu constraint PRIMARY KEY atau UNIQUE.
Nama dari
index adalah seperti
yang diberikan untuk nama constraint.
.2.
NonUnique Index :
Adalah
suatu index yang dapat dibuat oleh seorang user. Sebagai contoh, Anda dapat
membuat index kolom FOREIGN KEY untuk join dalam suatu query
untuk mempercepat
proses retrieval (pengambilan
data).
.3.
Note : Anda
dapat secara manual membuat suatu index unik, tetapi Anda
direkomendasikan untuk smembuat constraint unik, yang secara implisit
membuat suatu index unik.
Menggunakan Suatu Index
Contoh :
Membuat suatu index pada satu atau beberapa kolom :
Membuat suatu index pada satu atau beberapa kolom :
CREATE INDEX emp_last_name_idx
ON table employees(last_name)
Menghapus
suatu Index
Contoh:
Menghapus suatu index dari data
dictionary dengan menggunakan perintah DROP INDEX :
DROP
INDEX emp_last_name_idx;
Untuk menghapus suatu index, Anda harus menjadi pemilik dari index atau memiliki hak DROP ANY INDEX
Untuk menghapus suatu index, Anda harus menjadi pemilik dari index atau memiliki hak DROP ANY INDEX
Synonyms
Synonym-synonym
adalah
obyek-obyek database yang memungkinkan Anda untuk memanggil suatu tabel
dengan nama lain. Anda dapat membuat synonym-synonym untuk memberikan
suatu nama alternatif pada suatu tabel.
Membuat
suatu Synonym
Contoh:
CREATE
PUBLIC SYNONYM dept
FOR
alice.departments;
Menghapus
suatu Synonym
DROP
PUBLIC synonym dept;
Synonym
dropped.
Untuk informasi lebih lanjut, lihat ”DROP
SYNONYM” pada Oracel SQL Reference.
Sumber:
Copyright@ 2004, Oracle.
Sumber:
Copyright@ 2004, Oracle.