Add constraint SQL Table
Constraint adalah aturan atau batasan yang diterapkan di table untuk menjaga konsistensi dan integritas data. constraint bisa di definisikan bersamaan dengan CREATE TABLE atau setelah table dibuat menggunakan perintah ALTER TABLE … ADD CONSTRAINT. ada lima jenis constraint di ORACLE, yaitu primary key, Unique, Check, Not null, dan Foreign Key. Constraint sebaiknya diberi nama pada saat pendefinisian, karena jika tidak diberi nama akan diberi nama oleh sistem dengan diawali dengan SYS_Cn.
Mendefinisikan Constraint
Primary Key, dalah kolom atau kombinasi beberapa kolom yang bisa menentukan dengan tepat ke satu baris data dalam tabel. contohnya adalah kolom id_pegawai pada tabel pegawai dan kolom kode_bag pada table bagian.
contoh pendefinisian primary key pada perintah CREATE TABLE
CREATE TABLE bagian (Kode_bag NUMBER(2) CONSTRAINT pk_bagian primary key, Nama_bag varchar(30));
contoh pendefinisian primary key untuk table yang sudah dibuat dengan perintah ALTER TABLE … ADD CONSTRAINT
ALTER TABLE pegawai ADD CONSTRAINT pk_pegawai primary key(id_pegawai);
Unique, untuk memastikan suatu kolom tidak boleh ada yang bernilai sama, misal kolom email pada table pegawai
ALTER TABLE pegawai ADD CONSTRAINT uq_email UNIQUE(email);
Check, untuk menentukan nilai yang diisikan kesuatu kolom, contohnya untuk menentukan gaji pegawai minimal RP. 1.000.000,-
ALTER TABLE pegawai ADD CONSTRAINT ck_gaji_1jt CHECK(gaji == 1000000);
Not Null, untuk memastikan bahwa suatu kolom harus diberi nilai tidak boleh dikosongkan. contohnya nama_pegawai dan nama_bag harus selalu di isi.
untuk constraint Not Null, berbeda cara pendefinisianya dengan constraint yang lain jika table sudah dibuat lebih dulu yaitu menggunakan perintah ALTER TABLE … MODIFY
ALTER TABLE pegawai MODIFY (nama_pegawai NOT NULL);
Foreign Key, digunakan untuk membuat hubungan antartabel atau membuat rujukan dari satu kolom ke kolom yang lainya. contohnya adalah pendefinisian kolom kode_bag pada tabel pegawai yang selalu merujuk ke kolom kode_bag ditabel bagian.
ALTER TABLE pegawai ADD CONSTRAINT fk_kode_bag FOREIGN KEY (kode_bag) REFERENCES bagian(kode_bag);
Comments
Post a Comment