Minggu, 05 Maret 2017

Penjelasan perintah dasar SQL Oracle (Constaint)

Membuat Tabel dengan CONSTRAINT
Macam-macam Constraint
1. Constraint NOT NULL
Berarti kolom ini tidak boleh kosong. Kolom yang berfungsi sebagai Primary Key juga tidak boleh kosong. Buat tabel seperti dibawh ini

Lalu untuk melihat strukturnya tampilkan dengan perintah :
SQL> desc emp01;
Lalu insert data  dan tampilkan dengan perintah (select *from emp01):
Coba pada bagian “LAST_NAME”  kita kosongi maka  akan terjadi error:

Error terjadi karena pada kolom last_name tabel emp01 tidak diisi padahal tabel ini  sifatnya constraint NOT NULL  atau tidak boleh kosong.
Coba lakukan insert data lagi dengan mengosongi kolom salary


Maka isi kolom berhasil di tambahkan walaupun kolom salary kosong, hal ini terjadi karena tidak ada aturan khusus pada kolom salary (Constraint ).
2. Constraint UINIQUE
Unik berarti tidak boleh sama. Constraint UNIQUE berarti tidak ada constraint yang nilainya sama denganyang lain karena ini merupakan ciri khas dari kolom tersebut.
Coba  buat tabel baru :

apakah anda pernah menemui error seperti ini? coba cek bagian error yaitu di line 8
"name already used cy an existing constraint" ini berarti nama constraint ini sudah digunakan. Solusinya anda bisa mengganti namanya .
Lalu tambahkan data dan tampilkan data yang sudah ditambahkan

coba masukan  data dengan email yang sama

maka data yang di inputkan akan error karena email yng di imutkan sama.

3.  CONSTRAINT PRIMARY KEY membentuk key yang unik pada suatu tabel
Lalu kita buat tabel baru, isi dan tampilkan isi  tabel:

Dan coba kita isikan dengan kolom department_id yang sama:



Terjadi error karena id yang diisikan sama karena kolom department_id sebelumnya sudah didefinisikan sebagai primary key dan tidak mungkin ada yang sama.
4. CONSTRAINT FOREIGN KEY :  suatu kolom yang ada pada suatu tabel juga dimiliki tabel lain sebagai primary key.
Buat tabel baru seperti dibawah ini :

Lalu insert data dan tampilkan
Masukan data ke dua

Error karena pada “department_id”=”2” belum di inputkan jadi foreign keynya belum ada.
Karena kolom “department_id=1” pada departements sudah diinputkan jadi foreign keynya ada.



Tidak ada komentar:

Posting Komentar