Kamis, 01 Januari 2015

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),
                      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.