QUEL
QUEL adalah Query Language dari DBMS relasional INGRES, yang
dikembangkan di University of California di Berkeley dengan mengunakan sistem
operasi UNIX. Bahasa ini dipergunakan secara berdiri sendiri dengan menuliskan
instruksi ke prosesor QUEL, atau disisipkan kedalam bahasa pemrogram C. Didalam
bahasa C, instruksi QUEL dimulai dengan tanda ##, sehingga dapat diterima oleh
prosesor.
QUEL dibagi atas :
1.
DDL
¨
CREATE : membuat tabel
¨
INDEX : membuat indeks
¨
DEFINE VIEW : membuat view
¨
DESTROY : menghapus tabel, indeks
atau view
¨
MODIFY : merubah struktur
table/indeks
Contoh :
CREATE MAHASISWA(NPM=TEXT(8),
CREATE MAHASISWA(NPM=TEXT(8),
NAMA=TEXT(20),
ALAMAT=TEXT(30),
KOTA=TEXT(15), JKEL=TEXT(1)
2.
DML
¨
RETRIEVE : menampilkan data
¨
REPLACE : mengupdate data
¨
DELETE : menghapus record
¨
APPEND : memasukkan record
baru
Contoh :
1.
Dapatkan data semua
mahasiswa
RETRIEVE(MAHASISWA.ALL)
2.
Dapatkan nama mata
kuliah dan jumlah sks-nya untuk mata kuliah yang ber-sks 3 dari relasi MKULMI
RETRIEVE(MKULMI.MTKUL, MKULMI.SKS) where sks=’3’
Struktur dasar QUEL :
1.
Setiap variabel
tuple ditulis dalam range yaitu : range of t is r
2.
Kalimat retrieve
memiliki fungsi sama dengan select pada SQL
3.
Kalimat where berisi
predikat yang ditentukan
4.
Bentuk query QUEL :
range of t1 is r1
range of t2 is r2
:
:
range of tm is rm
retrieve (ti1.Aj1, ti2.Aj2, …,tim.Ajm)
where P
ti adalah variael tupel
ri adalah relasi
Ajm adalah atribut
P adalah predikat
5.
Tidak dapat untuk
melaksanakan operasi aljabar seperti intersection, union dan minus.
6.
Logik : AND, OR dan NOT
7.
Fungsi Statistik :
COUNT, MAX, MIN, AVG, SUM
8.
Ekspresi Aritmatik :
>, <, <>, >=, <=
Contoh :
Diketahui skema tabel :
CUSTOMER (Cust_Name, Street, Cust_city)
BORROW (Branch_name, Location, Cust_name, Amount)
DEPOSIT (Branch_name, Account_name, Cust_name, Balance)
1.
Dapatkan semua nama
customer yang memiliki tabungan pada cabang perryride :
Range of t is Deposit
Retrieve (t.cust_name)
Where (t.branch_name = ‘Perryride’);
2.
Dapatkan nama
customer dan kota untuk semua customer yang memiliki pinjaman dari Bank Hermina
Range of s is Borrow
Range of t is Deposit
Retrieve (t.Cust_name, t.Cust_city);
3.
Hapus semua tuper
pada relasi Borrow
Range of t is Deposit
Delete t;
QUERY BY EXAMPLE
Kelebihan dari Query By Example adalah mempergunakan editor
layar khusus dan langsung dapat membuat query.
User dapat menggunakan atau memanggil tabel kosong dilayar
untuk diberi nama relasi, atribut dan instruksi yang diinginkan.
Perintah yang digunakan adalah :
P. (print) :
menampilkan data
I. (insert) : memasukkan record baru
D. (delete) :
menghapus record
U. (update) :
merubah record
Bagan Umum Tabel QBE :
Nama Relasi Nama Atribut
|
|
|
|
|
|
|
|
Contoh :
1.
Dapatkan semua data
mahasiswa
Mahasiswa
|
NPM
|
Nama
|
Alamat
|
Kota
|
Jkel
|
|
P.
|
P.
|
P.
|
P.
|
P.
|
2.
Dapatkan semua nama
dosen wanita yang bertempat tinggal di Depok
Dosen
|
NIP
|
Nama
|
Alamat
|
Kota
|
Jkel
|
|
|
P.
|
|
Depok
|
W
|
Atau menggunakan
condition box
Dosen
|
NIP
|
Nama
|
Alamat
|
Kota
|
Jkel
|
|
|
P.
|
|
_x
|
_y
|
CONDITION
|
_x="Depok" AND
_y="W"
|
Keterangan :
_x : tanda garis bawah
menunjukan bahwa x variabel
3.
Dapatkan nama dosen
yang mengajar mata kuliah komunikasi data (gunakan relasi dosen dan MKULMI).
Dosen
|
NIP
|
Nama
|
Alamat
|
Kota
|
Jkel
|
|
|
P.
|
|
_x
|
_y
|
MKULMI
|
KDMK
|
MTKUL
|
SKS
|
NIP
|
|
|
Komunikasi Data
|
|
_x
|
4.
Tampilkan nama dan nilai Mid
MAHASISWA
|
NPM
|
NAMA
|
ALAMAT
|
KOTA
|
JKel
|
|
_x
|
P.
|
|
|
|
|
P.
_x
|
P.
|
|
|
|
NILAI
|
NPM
|
KDMK
|
MID
|
FINAL
|
|
_x
|
|
P.
|
|
|
_x
|
|
P.
|
|
5.
Merubah nilai Mid menjadi 90 untuk
Mahasiswa dengan NPM 11198111
NILAI
|
NPM
|
KDMK
|
MID
|
FINAL
|
|
11198111
|
|
U.
90
|
|
6.
Menghapus record Mahasiswa yang
bertempat tinggal di Bogor
MAHASISWA
|
NPM
|
NAMA
|
ALAMAT
|
KOTA
|
JKel
|
|
D.
|
D.
|
D.
|
D.
Bogor
|
D.
|
No comments:
Post a Comment