Fungsi constraint pada mysql

Section Artikel

  • 1 Constraint SQL CHECK
    • 1.1 SQL CHECK pada CREATE TABLE
    • 1.2 CHECK SQL pada ALTER TABLE
    • 1.3 CHECK SQL pada DROP TABLE

Constraint SQL CHECK

Constraint CHECK digunakan untuk membatasi kisaran nilai yang dapat ditempatkan di kolom.

Jika ingin menentukan constraint CHECK pada satu kolom, hanya memungkinkan nilai tertentu untuk kolom ini.

Jika ingin menentukan constraint CHECK pada tabel, itu bisa membatasi nilai di kolom tertentu berdasarkan nilai di kolom lain di baris.

SQL CHECK pada CREATE TABLE

SQL berikut membuat constraint CHECK pada kolom “Usia” saat tabel “Person” dibuat. Constraint CHECK akan memastikan bahwa usia seseorang harus berusia 18 tahun atau lebih dengan menggunakan syntax berikut ini:

MySQL:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Usia int,
    CHECK (Age>=18)
);

Akses SQL Server / Oracle / MS:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Usia int CHECK (Age>=18)
);

Untuk melakukan penamaan constraint CHECK dan untuk menentukan constraint CHECK di beberapa kolom, gunakan sintaks SQL berikut ini:

Akses MySQL / SQL Server / Oracle / MS:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Usia  int,
    City varchar(255),
    CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
);

CHECK SQL pada ALTER TABLE

Untuk membuat constraint CHECK pada kolom “Usia” ketika tabel sudah dibuat, gunakan SQL berikut ini:

Akses MySQL / SQL Server / Oracle / MS:

ALTER TABLE Persons
ADD CHECK (Usia >=18);

Untuk melakukan penamaan constraint CHECK dan untuk menentukan constraint CHECK di beberapa kolom, gunakan sintaks SQL berikut ini:

Akses MySQL / SQL Server / Oracle / MS:

ALTER TABLE Persons
ADD CONSTRAINT CHK_PersonAge CHECK (Usia>=18 AND Kota='Sandnes');

CHECK SQL pada DROP TABLE

Untuk menghapus constraint CHECK, gunakan SQL berikut ini:

Akses SQL Server / Oracle / MS:

ALTER TABLE Persons
DROP CONSTRAINT CHK_PersonUsia;

MySQL:

ALTER TABLE Persons
DROP CHECK CHK_PersonUsia;

SQL Constraint biasa digunakan untuk menentukan aturan untuk data dalam tabel.

SQL Create Contraints

Constraints dapat ditentukan saat tabel dibuat dengan pernyataan CREATE TABLE atau setelah tabel dibuat dengan pernyataan ALTER TABLE.

Syntax

CREATE TABLE table_name (
    column1 datatype constraint,
    column2 datatype constraint,
    column3 datatype constraint,
    ....
);

SQL Constraints

Constraints SQL digunakan untuk menentukan aturan untuk data dalam tabel.

Constraints digunakan untuk membatasi jenis data yang bisa masuk ke dalam tabel. Ini memastikan keakuratan dan keandalan data dalam tabel. Jika ada pelanggaran antara batasan dan tindakan data, maka tindakan tersebut dibatalkan.

Batasan dapat berupa tingkat kolom atau tingkat tabel. Batasan tingkat kolom berlaku untuk kolom, dan batasan tingkat tabel berlaku untuk seluruh tabel.

Batasan berikut biasanya digunakan dalam SQL:

  • NOT NULL – Memastikan bahwa kolom tidak dapat memiliki nilai NULL
  • UNIQUE- Memastikan bahwa semua nilai dalam kolom berbeda
  • PRIMARY KEY – Kombinasi dari NOT NULL dan UNIQUE. Secara unik mengidentifikasi setiap baris dalam tabel
  • FOREIGN KEY – Secara unik mengidentifikasi baris / catatan di tabel lain
  • CHECK – Memastikan bahwa semua nilai dalam kolom memenuhi kondisi tertentu
  • DEFAULT – Menetapkan nilai default untuk kolom ketika tidak ada nilai yang ditentukan
  • INDEX – Digunakan untuk membuat dan mengambil data dari database dengan sangat cepat

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.

Fungsi constraint pada mysql


Apa Itu Constraints ?

Constraints pada konsep relationship database merupakan suatu kondisi atau aturan yang digunakan untuk membatasi suatu kolom untuk dapat menyimpan data. Dengan menerapakan constraint pada suatu kolom memberikan batasan dalam melakukan perubahan dan pengahapusan suatu data pada suatu baris yang memiliki ketergantungan dengan data dari tabel lain.

Macam-macam Constraints pada Database

Terdapat beberapa constraints yang dapat diterapkan untuk dalam pembuatan database. Berikut ini beberapa contoh constraint beserta fungsinya :


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.

Dari beberapa constraint yang saya sebutkan pada di atas yang sering saya gunakan pada database untuk sistem yang saya kembangkan adalah PRIMAY KEY, FORIGEN KEY, NOT NULL, dan UNIQUE.

Cara Mengimplementasikan Constraint pada Database

Dalam  mengimplementasikan constraint pada saat dalam pembuataan database anda dapat mendeklarasikan atau mendefinisikan perintah yang menunjukan suatu constraint dapat dilakukan ketika anda mengeksekusi perintah CREATE untuk membuat suatu table database.


Untuk mengimplementasikan constraint ini saya akan menggunakan khasus

sistem pemesanan product

, berikut terdapat 2 cara untuk mengimplementasikan cosntraint pada pembuatan database yaitu :


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) :


Bisa anda cermati untuk source code query untuk membuat table beserta constraint-nya di atas pembuatan table dieksekusi urut dari table user, product, order, dan order_detail. Untuk table order dan order_detail dieksekusi terakhir karena memiliki constrant dengan table user dan product. Jika table order dan order_detail dieksekusi terlebih dahulu maka akan berdampak error pada command query anda. Jadi jika anda menggunakan cara ini silahkan eksekusi terlebih dahulu

commad query yang tidak memiliki constraint

.


2. Membuat Table dan Constraint dengan Command Query Terpisah

Jika anda telah membuat table pada database namun anda belum membuat constraint-nya, sebenarnya anda bisa menambahkan constraint pada tabel yang telah anda buat yang berarti anda akan memodifikasi tabel yang telah anda buat dengan menggunkan perintah ALTER.

Untuk memanipulasi table kususnya mengatur dan constraints pada database dapat dilakukan dengan menggunkaan basic command  query berikut :

Menambahkan Constraints

ALTER TABLE

nama_tabel

ADD

constraint

;

Menghapus Constraints

ALTER TABLE

nama_tabel

DROP

constraint

;

Berikut ini step-by-step membuat table dan constraint dengan command query terpisah (Query berikut dapat dieksekusi pada DBMS MYSQL) :


Source Code Query untuk membuat Table


Source Code Query untuk membuat Constrants pada Table di atas

Berikut ini hasil dari database schema dari souece code query yang saya jalankan DBMS MYSQL

Fungsi constraint pada mysql

Gambar Hasil Database Schema di MYSQL

Refrensi :
w3schools.com
Stack Overflow | What are database constraints?

Sekian artikel kali tentang Constraints Database, banyak kekurangan dan kata-kata yang tidak berkenan saya mengucapkan mohon maaf. Terima Kasih...

~Semoga Bermanfaat~

Apa fungsi constraint?

Anda dapat menggunakan constraint untuk membatasi tipe data yang disimpan ke dalam tabel. Constraint dapat digunakan pada saat pertama kali membuat table dengan statement CREATE TABLE atau setelah tabel dibuat dengan perintah statement ALTER TABLE.

Apa itu constraint pada mysql?

Constraints SQL digunakan untuk menentukan aturan yang memperbolehkan atau membatasi nilai / data apa yang akan disimpan di tabel. Mereka menyediakan metode yang sesuai untuk memastikan keakuratan dan integritas data di dalam tabel.

Apa yang dimaksud constraint dalam database?

Konstraint/ batasan dalam database pada dasarnya adalah pembatasan nilai-nilai yang diperbolehkan untuk diisikan dalam sebuah kolom atau kolom-kolom yang terdapat dalam sebuah tabel.

Apa itu constraint Key?

Constraint FOREIGN KEY adalah kunci yang digunakan untuk menghubungkan dua tabel bersama-sama. Constraint FOREIGN KEY adalah field(atau kumpulan field) dalam satu tabel yang merujuk ke PRIMARY KEY di tabel lain.