Melanjutkan artikel database yang sebelumnya sudah saya tulis tentang Data Type. Pada artikel sebelumnya sempat saya jelaskan untuk membatasi atau memberikan limit data yang diinputkan berdasarkan jenis data dapat dilakukan dengan menggunkaan tipe data. Selain data type terdapat rule atau atauran lagi yang dapat digunakan untuk membatasi satu data yang diinpukan pada suatu kolom di database yaitu adalah CONSTRAINTS.
Apa Itu Constraints ?
<!– Kendala Domain: jika salah satu nilai atribut yang disediakan untuk tuple baru bukan dari domain atribut yang ditentukan
Kendala Kunci: jika nilai atribut kunci dalam tuple baru sudah ada di tuple lain dalam relasi
Referensi Integritas: jika nilai kunci asing dalam tupel baru merujuk nilai kunci utama yang tidak ada dalam hubungan yang dirujuk
Entity Integrity: jika nilai kunci utama adalah null dalam tuple baru
—————————————————-
Domain Constraint: if one of the attribute values provided for a new tuple is not of the specified attribute domain
Key Constraint: if the value of a key attribute in a new tuple already exists in another tuple in the relation
Referential Integrity: if a foreign key value in a new tuple references a primary key value that does not exist in the referenced relation
Entity Integrity: if the primary key value is null in a new tuple
———————————————————————————————————————-
Pada dasarnya constraint pada SQL terdapat 4 jenis yaitu :
Domain Constraint
Key Constraint
Referential Integrity
Entity Integrity
Mengapa membutuhkan Constraints?
untuk mengatur keterkaitan data antar tabel.
memberikan aturan sehingga data lebih terstruktur.
Membua
———————————————————————————————————————-
–>
Macam-macam Constraints pada Database
Constraint | Fungsi |
PRIMARY KEY | Suatu constraint yang diguankan pada kolom sebagai identitas pada masing-masing baris data pada suatu tabel. Berdasarkan sumber yang saya baca PRIMARY KEY constraint yang merupakan kombinasi dari 2 buah constraint yaitu UNIQUE, dan NOT NULL. |
FOREIGN KEY | Pada relasional database memungkinkan suatu baris atau record menggunakan nilai dari PRIMARY KEY tabel lain yang akan digunakan untuk sebagai relasi antar tabel. |
NOT NULL | constraint untuk mengatur suatu kolom wajib memiliki nilai (tidak dapat bernilai NULL). |
UNIQUE | constraint yang digunakan untuk mengatur atau memberikan batasan pada suatu kolom memiliki tiap-tiap nilai yang tidak boleh sama (masing-masing record pada suatu kolom akan memiliki nilai yang berbeda). Biasanya diterapkan pada kolom : username, email, nomor telephone |
CHECK | Constraint yang digunakan untuk memeriksa nilai yang diinputkan berdasarkan kondisi yang telah ditentukan. |
DEFAULT | Constraint yang digunakan untuk memberikan nilai default pada suatu kolom jika tidak ada nilai yang diinputkan. |
INDEX | Constraint yang digunakan untuk membuat dan mendapatkan kembali data dengan sangat cepat. Constraint INDEX biasanya digunakan pada database yang telah menampung data dengan jumlah yang sangat besar untuk menentukan mendapatkan nilai index dari satu atau beberapa kolom sebelum dilakukan sorting. |
Cara Mengimplementasikan Constraint pada Database
1. Membuat Constrant pada Command Pembuatan Table
Mendeklarasikan query constraint secara langsung pada query yang anda gunakan untuk membuat tabel. Berikut contoh query untuk membuat table beserta constraint-nya (Query berikut dapat anda jalankan pada DBMS MYSQL) :
2. Membuat Table dan Constraint dengan Command Query Terpisah
Menambahkan Constraints
Menghapus Constraints
Source Code Query untuk membuat Table
Source Code Query untuk membuat Constrants pada Table di atas
Refrensi :
w3schools.com
Stack Overflow | What are database constraints?