Mengenal Macam-Macam Constraint di Oracle Database

Apa itu Constraint?

Constraint adalah batasan atau aturan yang diaplikasikan terhadap kolom/field suatu table, yang bertujuan untuk menjaga integritas data.



Dengan adanya Constraint, akan meminimalisasi kesalahan data akibat kesalahan memasukan data oleh pengguna.

Pemberian constraint, dapat anda lakukan ketika proses pembuatan table dan bisa juga setelah table dibuat dengan menggunakan perintah ALTER TABLE ADD CONSTRAINT.

Mendefiniskan Constraint

Anda dapat mendefinisikan constraint di Oracle dengan dua cara, yaitu:
  1. Mendefinisikan Constraint Pada Level Column/Field

    Anda dapat mendefinisikan constraint pada level kolom dengan menggunakan perintah di bawah ini:

    ...
    nama_kolom tipe_data[(size)] [ NULL | NOT NULL ] [nama_constraint],
    ....
    

  2. Mendefinisikan Constraint Pada Level Tabel

    Anda dapat mendefinisikan constraint pada level table dengan menggunakan perintah di bawah ini:

    ...
    nama_kolom tipe_data[(size)] [ NULL | NOT NULL ],
    nama_kolom tipe_data[(size)] [ NULL | NOT NULL ],
    [ CONSTRAINT nama_constraint 
     PRIMARY KEY ( col1, col2, ... ) |
     FOREIGN KEY ( col1, col2, ... ) REFERENCES table_2 [ ( col1, col2, ... ) 
      [ ON UPDATE | ON DELETE 
       [ NO ACTION | SET NULL | SET DEFAULT | CASCADE ] 
      ] 
     ] |
     UNIQUE ( col1, col2, ... ) |
     CHECK ( expression )
    ],
    ...
    

Menambahkan Constraint Pada Table

Anda dapat menambahkan constraint pada sebuah table menggunakan sintak di bawah ini:

ALTER TABLE nama_table
ADD CONSTRAINT nama_constraint [PRIMARY KEY|FOREIGN KEY|CHECK|UNIQUE] (nama_kolom);

Contoh:

ALTER TABLE pegawai
ADD CONSTRAINT PRIMARY KEY(kode_pegawai);

Menghapus Constraint Pada Table

Anda dapat menghapus sebuah constraint pada table dengan menggunakan perintah berikut ini:

ALTER TABLE table_name
 DROP CONSTRAINT constraint_name;

Contoh

ALTER TABLE pegawai
DROP CONSTRAINT pegawai_pk;

Macam-Macam Constraint

Database Oracle mempunyai macam-macam Constraint, yaitu:
  1. Primary Key
    Primary Key atau Kunci Utama adalah sebuah kolom atau gabungan dari beberapa kolom yang mendefinisikan sebuah record yang unik. Dalam sebuah table hanya boleh memiliki sebuah (satu) primary key, tidak boleh lebih.

    Satu lagi yang paling penting adalah bahwa kolom yang mempunyai Primary Key tidak boleh NULL.

    Contohnya adalah sebuah Pegawai tidak boleh memiliki NIP (Nomor Induk Pegawai) yang lebih dari satu (tidak unik).

  2. Foreign Key
    Foreign Key atau KunciSebuah kolom yang nilainya mempunyai referensi ke table lainnya. Biasanya table yang menjadi referensi adalah tabel yang mempunyai field Primary Key.

  3. Not Null
    Sebuah kolom yang mempunyai constraint NOT NULL artinya bahwa kolom itu tidak boleh null. Contohnya adalah kolom jenis kelamin itu tidak boleh null, karena setiap manusia pasti mempunyai jenis kelamin baik pria maupun wanita.

  4. Unique Key
    Constraint Unique Key ini sebenarnya mirip dengan constraint Primary Key, yaitu sama-sama bernilai unik. Bedanya adalah kalau Unique Key ini boleh bernilai NULL sedangkan Primary Key tidak boleh bernilai NULL.

    Perbedaan lainnya adalah Unique Key dapat diaplikasikan lebih dari satu pada suatu table, sedangkan Primary Key hanya boleh satu.

  5. Check
    Check Constraint akan mengecek data atau nilai yang masuk, apabila sesuai kondisi yang telah ditentukan maka bernilai true atau boleh masuk, sedangkan kalau bernilai false maka data tidak boleh masuk.

    Contohnya adalah sebuah kolom ditable dibuat constraint check > 1000, maka data yang boleh masuk adalah data yang lebih dari 1000.

  6. Default
    Default Constraint digunakan untuk memberikan nilai default untuk sebuah kolom. Jika Anda tidak memberikan nilai pada kolom ini, maka secara otomatis akan memberikan nilai default pada kolom ini.
Pada pembahasan selanjutnya, Kita akan pelajari lebih detail tentang Penggunaan jenis-jenis constraint beserta contoh dan latihan. Jadi tunggu saja seri berikutnya.

Referensi


Sekian tutorial Mengenal Macam-Macam Constraint di Oracle Database. Semoga bermanfaat & Selamat Belajar database Oracle.

Jika Anda menyukai tutorial ini, silahkan anda share dan bagikan dengan teman-teman Anda, dan jika Anda ingin berdiskusi tentang judul tutorial diatas, atau pun mau bertanya tentang tutorial ini silahkan Anda untuk menggunakan fasilitas komentar untuk berdiskusi dan bertanya di blog ini.

Salam,

Naura-Lab

Jika Anda rasa artikel ini bermanfaat, saya sangat berterima kasih bila Anda mau membagikannya ke teman. Jangan lupa dapatkan update artikel terbaru dari Naura-Lab melalui email:

Post a Comment