Kamis, 23 Mei 2013

Resume SQL2 Pertemuan 12


 Sequences, Indexs,  dan Synonym

Mata Kuliah : Structure Query Language II (SQL II)
Dosen : Titik Lusiani, M.Kom, OCA
Blog : blog.stikom.edu/lusiani

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.)
Pseudocolumns NEXTVAL dan CURRVAL
    .1.            NEXTVAL mengembalikan urutan nilai selanjutnya yang ada.
    .2.            NEXTVAL mengembalikan suatu nilai unik setiap saat dia direferensikan, 
            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 :

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 :

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

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.

0 komentar:

Posting Komentar