top of page

Digital Marketing

Dive into the digital marketing world! Master paid and organic channels, critical thinking skills, and analytical frameworks to boost your digital business.

Programs
Why RevoU
Free Courses
bg-grid 1.png

SQL Constraint: Fungsi, Jenis, Contoh, Cara Membuat

Artikel berikut ini membahas tentang fungsi, jenis, contoh, hingga cara membuat SQL Constraint.

Data Analytics

Bobby Christian

Mau Belajar

Data Analytics

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

Dalam melakukan sebuah pengisian data dalam sebuah tabel di database, kita sebagai programmer menginginkan data yang akurat. Yang paling ingin dihindari yaitu ketidakkonsistenan atau terjadinya sebuah kegagalan saat melakukan operasi pengisian data dalam tabel tersebut. 

Konsistensi data dapat diraih dengan menanamkan sebuah rule atau aturan pada tabel tersebut. Dalam SQL, aturan tersebut dinamakan constraint

Cara Kerja SQL Constraint

Dalam SQL kita mungkin sering atau pernah mendengar istilah yang bernama constraint atau batasan. Tujuan penggunaan constraint tersebut adalah untuk memastikan integritas sebuah data yang akan disimpan pada sebuah tabel dengan cara membatasi jenis data yang akan masuk. 

Cara kerja sebuah constraint atau batasan adalah dengan mendefinisikan sebuah aturan constraint pada level tabel atau pada umumnya ditentukan pada sebuah kolom. Dengan menggunakan fungsi constraint ini, kita dapat menjaga konsistensi data dan validitas dari data itu sendiri. 

Cara Membuat SQL Constraint

Constraint biasa digunakan ketika melakukan pembuatan tabel baru (query create table) dan pembaharuan sebuah kolom (query alter table). Constraint umumnya jarang ditentukan ketika tabel sudah terisi data, oleh karena itu kita sebagai seorang programmer perlu memastikan dan menentukan constraint tersebut saat pembentukan tabel pertama kali.

Untuk penggunaan constraint pada saat pembuatan tabel baru dan pembaharuan tabel dapat dilihat pada contoh berikut ini: 

Constraint pada proses pembuatan tabel

Catatan penting: perlu diketahui bahwa syntax tersebut merupakan syntax dari database SQL server, dan mungkin saja jenis database lain memiliki syntax yang berbeda.

Seperti terlihat pada screenshot di atas, tampak query untuk menambahkan constraint atau batasan kolom pada saat melakukan query create table. Hanya perlu menambahkan query constraint setelah data_type maka constraint akan berlaku pada kolom tersebut.

Constraint pada tabel yang sudah ada 

Ketika kita membuat sebuah constraint pada tabel yang sudah ada, kita memodifikasi sebuah tabel. Untuk memodifikasi sebuah tabel, kita menggunakan query ALTER TABLE lalu diikuti dengan perintah yang kita inginkan.

Karena kita membahas untuk menambahkan sebuah constraint baru, maka setelah perintah ALTER TABLE, kita akan menambahkan ADD CONSTRAINT, diikuti dengan column_name dan data_type constraint

Berikut contoh cara penulisan query dengan menggunakan ALTER TABLE:

Ketika kita menjalankan query tersebut, maka aturan constraint akan ditambahkan kepada kolom dalam tabel tersebut. Perhatikan pada contoh di atas, data_type merupakan jenis constraint yang dapat ditambahkan. 

Ada beberapa jenis constraint yang dapat ditambahkan, beberapa di antaranya: NOT NULL constraint, PRIMARY KEY constraint, FOREIGN KEY constraint, UNIQUE constraint, CHECK constraint, dan DEFAULT constraint

Kita akan membahas jenis constraint ini pada subtopik selanjutnya.

Jenis-jenis SQL Constraint

Berikut adalah beberapa jenis constraint yang dapat digunakan: 

#1 NOT NULL constraint

Constraint atau batasan ini digunakan untuk memastikan bahwa sebuah kolom tidak bisa menerima sebuah nilai NULL. Nilai NULL sendiri merupakan sebuah data yang tidak memiliki nilai dan hal ini dapat membuat data yang tidak relevan atau tidak konsisten.

Dengan menggunakan constraint NOT NULL ini, kita dapat menghindari jenis data yang tidak relevan tersebut. Dikarenakan jika user memasukan data ke dalam kolom yang mempunyai aturan NOT NULL constraint, maka database akan menggagalkan operasi tersebut. 

Berikut adalah cara untuk menggunakan constraint ini pada saat membuat tabel baru ataupun memodifikasi tabel yang sudah ada:  

#2 PRIMARY KEY constraint

Constraint atau batasan ini mungkin yang paling sering kita dengar dalam menggunakan SQL. PRIMARY KEY sendiri digunakan untuk mengidentifikasi setiap baris pada tabel. Untuk kegunaan dan fungsi dari primary key ini akan lebih lanjut dibahas pada artikel terpisah. 

Jenis constraint ini juga secara tidak langsung menggunakan kombinasi NOT NULL dan UNIQUE dikarenakan kolom yang menggunakan constraint ini tidak boleh NULL dan harus berbeda antar data. Sebuah tabel dapat memiliki lebih dari satu primary key

Berikut adalah cara untuk menggunakan constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada: 

Catatan penting: perlu diketahui bahwa syntax tersebut merupakan syntax dari database SQL server, dan memungkinkan jenis database lain memiliki syntax yang berbeda.

#3 FOREIGN KEY constraint

Sama dengan PRIMARY KEY, jenis constraint ini adalah salah satu yang mungkin kita sering dengar. Constraint ini digunakan untuk membuat hubungan antar tabel dengan cara mereferensikan primary key yang terdapat pada tabel lain. 

Untuk kegunaan dan fungsi dari foreign key ini juga akan lebih lanjut dibahas pada artikel terpisah: SQL - FOREIGN KEY

Berikut adalah cara untuk menggunakan constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada: 

Khusus constraint foreign key, kita perlu menambahkan query REFERENCE table_name, yaitu primary key dari tabel referensi yang ingin dihubungkan dengan tabel yang mengandung foreign key ini.

#4 UNIQUE constraint

Jenis constraint atau batasan ini digunakan untuk memastikan semua nilai pada kolom tersebut unik atau tidak sama. Dengan menggunakan aturan ini, kita dapat memastikan bahwa kolom tersebut tidak memiliki duplikasi dan konsisten. 

Jika ada input data yang baru yang nilainya telah ada dalam database, maka database akan menggagalkan operasi tersebut. Berikut adalah cara untuk menggunakan constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada: 

#5 CHECK constraint

Jenis constraint atau batasan ini digunakan untuk pengecekan sebuah data ketika suatu data baru akan diinputkan. Jika programmer memasukan sebuah nilai yang tidak memenuhi kondisi dari constraint CHECK ini, seperti tipe data yang berbeda ataupun jumlah karakter yang tidak sesuai, maka database akan menggagalkan operasi tersebut.

{{COMPONENT_IDENTIFIER}}

Berikut adalah cara untuk menggunakan constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada pada satu atau lebih dari satu kolom: 

Constraint CHECK pada satu kolom: 

Constraint CHECK pada beberapa kolom: 

Ketika menambahkan constraint CHECK pada beberapa kolom, kita perlu menuliskan nama kolom untuk menentukan kolom mana yang mau diberikan constraint dan menambahkan variabel baru sebagai parameter untuk kolom-kolom tersebut.

#6 DEFAULT constraint

Jenis constraint atau batasan ini digunakan untuk menuliskan nilai default pada sebuah kolom. Ketika menginput data, apabila programmer tidak menuliskan input untuk sebuah kolom yang memiliki constraint DEFAULT, maka secara otomatis nilai default yang sudah ditentukan akan diisikan pada kolom tersebut.

Constraint ini didefinisikan pada tingkat kolom. Berikut adalah cara untuk menggunakan constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada pada satu atau lebih dari satu kolom: 

Pada contoh di atas, kita menambahkan nilai default ‘Jakarta’ apabila tidak ada inputan dalam kolom productionCity. Namun apabila ada input yang diberikan pada kolom tersebut, maka nilai pada kolom tersebut sesuai dengan inputan yang diberikan. 

Penutup

Dalam penulisan sebuah query SQL, dengan menggunakan constraint, kita dapat menghindari kesalahan penulisan data, sehingga konsistensi dan integritas dari sebuah data dapat terjaga dengan baik untuk digunakan pada proses selanjutnya. 

Data pun akan lebih akurat sehingga programmer tidak perlu melakukan perbaikan ataupun manipulasi data ketika ada data yang tidak diinginkan pada database

Selain itu, performa dari database juga dapat ditingkatkan karena dengan adanya constraint, maka jumlah kesalahan yang mungkin terjadi dapat berkurang. Salah satu keuntungan lainnya adalah dapat mencegah pengguna lain untuk memasukkan data yang tidak sah pada kolom tertentu.

Karena dalam aplikasinya, belum tentu hanya satu orang yang menggunakan database tersebut. Banyak pengguna yang bisa melakukan query ataupun memasukkan data pada database, baik otomatis maupun manual. 

database, kita sebagaiprogrammer menginginkan data yang akurat. Yang paling ingin dihindari yaitu ketidakkonsistenan atau terjadinya sebuah kegagalan saat melakukan operasi pengisian data dalam tabel tersebut. 

Konsistensi data dapat diraih dengan menanamkan sebuah SQLconstraint

Dalam SQL kita mungkin sering atau pernah mendengar istilah yang bernama constraint tersebut adalah untuk memastikan integritas sebuah data yang akan disimpan pada sebuah tabel dengan cara membatasi jenis data yang akan masuk. 

constraint atau batasan adalah dengan mendefinisikan sebuah aturan constraint ini, kita dapat menjaga konsistensi data dan validitas dari data itu sendiri. 

query query alter table). programmer perlu memastikan dan menentukan Untuk penggunaan Constraint pada proses pembuatan tabel

perlu diketahui bahwa syntax tersebut merupakan syntax dari database SQL serverSeperti terlihat pada query untuk menambahkan query create table. Hanya perlu menambahkan data_type maka Constraint pada tabel yang sudah ada 

constraint pada tabel yang sudah ada, kita memodifikasi sebuah tabel. Untuk memodifikasi sebuah tabel, kita menggunakan ALTER TABLE lalu diikuti dengan perintah yang kita inginkan.

constraint baru, maka setelah perintah ADD CONSTRAINT, diikuti dengan data_type Berikut contoh cara penulisan ALTER TABLE:

query tersebut, maka aturan data_type merupakan jenis Ada beberapa jenis NOT NULL PRIMARY KEY FOREIGN KEY UNIQUE CHECK DEFAULT Kita akan membahas jenis Jenis-jenis SQL Constraint

constraint yang dapat digunakan: 

#1 NOT NULLconstraint

Constraint atau batasan ini digunakan untuk memastikan bahwa sebuah kolom tidak bisa menerima sebuah nilai NULL sendiri merupakan sebuah data yang tidak memiliki nilai dan hal ini dapat membuat data yang tidak relevan atau tidak konsisten.

constraint user memasukan data ke dalam kolom yang mempunyai aturan constraint, maka Berikut adalah cara untuk menggunakan

#2 PRIMARY KEY PRIMARY KEY sendiri digunakan untuk mengidentifikasi setiap baris pada tabel. Untuk kegunaan dan fungsi dari Jenis NOT NULL dan constraint ini tidak boleh primary key

constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada: 
perlu diketahui bahwa syntax tersebut merupakan syntax dari database SQL server, dan memungkinkan jenis database lain memiliki syntax yang berbeda.

#3 FOREIGN KEY Sama dengan PRIMARY KEY, jenis Constraint ini digunakan untuk membuat hubungan antar tabel dengan cara mereferensikan Untuk kegunaan dan fungsi dari SQL - FOREIGN KEY

constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada: 
constraint foreign key, kita perlu menambahkan REFERENCE table_name, yaitu foreign key ini.

#4 UNIQUE Jenis Jika ada database, maka constraint ini pada saat pembuatan tabel baru ataupun memodifikasi tabel yang sudah ada: 

#5 CHECK Jenis digunakan untuk pengecekan sebuah data ketika suatu data baru akan diinputkan. Jika constraint database akan menggagalkan operasi tersebut.

Berikut adalah cara untuk menggunakan Constraint CHECK pada satu kolom: 

constraint constraint dan menambahkan variabel baru sebagai parameter untuk kolom-kolom tersebut.

#6 DEFAULT Jenis default pada sebuah kolom. Ketika menginput data, apabila constraint default yang sudah ditentukan akan diisikan pada kolom tersebut.

Constraint ini didefinisikan pada tingkat kolom. Berikut adalah cara untuk menggunakan
default inputan dalam kolom input yang diberikan pada kolom tersebut, maka nilai pada kolom tersebut sesuai dengan Penutup

bottom of page