Halo, teman-teman! Pada artikel sebelumnya, kita sudah berkenalan dengan beberapa istilah yang umum dijumpai di dunia database, termasuk Data Definition Language dan Data Manipulation Language. Kita juga sudah mengenal istilah query, yakni syntax atau perintah yang digunakan untuk berinteraksi dengan database. Untuk belajar database, mengenal istilah-istilah tersebut secara teori saja tentunya tidak cukup bukan? Nah, untuk membantu teman-teman belajar database secara praktek, Coding Studio sudah menyiapkan beberapa panduan untuk tahap awal pembelajaran teman-teman nih!

Di artikel kali ini, kita akan mempelajari query untuk membuat tabel database. Tahap ini merupakan tahap pertama agar kamu bisa mempelajari tahap-tahap selanjutnya, seperti memasukkan data ke dalam database, mengubah data yang sudah kamu input sebelumnya, atau bahkan menghapus data tersebut. Nah, tanpa berlama-lama lagi, yuk kita langsung belajar untuk membuat tabel pada database!

Tabel yang akan Dibuat

Pada latihan kali ini, kita akan membuat sebuah tabel untuk menampung data-data mahasiswa, yang akan kita tampung dalam Tabel Mahasiswa. Pada artikel sebelumnya, kita juga sudah mengenal istilah atribut dan tuple, ‘kan? Nah, beberapa atribut yang akan kita temui di Tabel Mahasiswa ini adalah NIM, Nama lengkap, serta Jurusan dari setiap Mahasiswa.

Apabila diilustrasikan, maka tabel yang akan kita buat akan terlihat seperti gambar di bawah ini:

Query Pembuatan Tabel

Sebelumnya, kita sudah mengenal Data Definition Language dan Data Manipulation Language. Data Definition Language atau DDL terdiri atas beberapa keyword seperti CREATE, ALTER, dan DROP. Sementara itu, Data Manipulation Language atau DML mencakup keyword-keyword seperti SELECT, INSERT,  UPDATE, dan DELETE. Kira-kira, untuk membuat tabel, apa ya keyword yang akan kita gunakan?

Yup, di panduan belajar database kali ini, kita akan lebih banyak menggunakan Data Definition Language atau DDL. Secara spesifik, kita akan banyak menggunakan keyword CREATE. Nah, tanpa berlama-lama lagi, yuk langsung kita pelajari query untuk membuat tabel!

1.      Membuat Database

Sebelum membuat sebuah tabel, tentunya kita harus membuat database terlebih dahulu untuk menampung tabel yang akan kita buat. Di dalam sebuah database, kita bisa menyimpan banyak tabel. Misalnya saja, di database Kampus, kita bisa menyimpan Tabel Dosen, Tabel Mahasiswa, Tabel Staff, dan sebagainya. Kali ini, karena hanya akan membuat Tabel Mahasiswa, kita bisa menyimpannya dengan nama DatabaseMahasiswa ya, teman-teman.

Untuk membuat database ini, kita akan menggunakan keyword CREATE DATABASE. Penggunaan keyword CREATE DATABASE ini akan selalu diikuti dengan nama database yang kita inginkan ya, teman-teman. Karena kali ini kita menamakannya dengan DataabaseMahasiswa, maka query pembuatan database kali ini akan terlihat seperti gambar di bawah ini:

Belajar database: Query untuk membuat database

2.      Membuat Tabel

Setelah menuliskan query untuk membuat database, sekarang kita bisa mulai membuat tabel di dalam DatabaseMahasiswa deh! Apabila tadi kita menggunakan keyword CREATE DATABASE, kira-kira, apa ya keyword yang akan kita gunakan untuk membuat tabel? Yup, keyword yang akan kita gunakan kali ini adalah CREATE TABLE!

Sama seperti penulisan keyword CREATE DATABASE sebelumnya, penulisan CREATE TABLE juga diikuti oleh nama tabel yang kita inginkan. Karena kita akan membuat tabel untuk menampung data mahasiswa, kita bisa menamakannya dengan tabel ‘Mahasiswa’. Oleh karena itu, query-nya akan menjadi seperti di bawah ini:

Eits, tunggu dulu! Meskipun penulisannya terlihat sama, tetapi keyword CREATE TABLE harus diikuti dengan tanda kurung seperti di bawah ini:

Fungsi tanda kurung tersebut adalah untuk menampung atribut-atribut dari tabel terkait. Dalam hal ini, tanda kurung tersebut akan menampung atribut-atribut yang ada pada tabel ‘Mahasiswa’. Apakah kamu masih ingat apa saja atribut-atribut yang dimiliki oleh tabel ‘Mahasiswa’? Yup, kita akan menemukan atribut-atribut NIM, Nama, dan Jurusan pada tabel ‘Mahasiswa’.

Kamu tidak perlu khawatir dengan garis merah yang muncul ya, teman-teman. Segera setelah kita mengisikan tanda kurung di atas dengan atribut-atribut tadi, garis merah tersebut akan segera hilang kok!

Nah, bisakah kamu menebak query untuk menambahkan atribut-atribut tersebut ke dalam tabel Mahasiswa?

3.      Menambahkan Atribut

Seperti yang telah kita bahas di poin sebelumnya, fungsi tanda kurung setelah query CREATE TABLE adalah sebagai tempat untuk menampung atribut-atribut dari tabel tersebut. Oleh karena itu, kita akan menuliskan query untuk atribut tabel ‘Mahasiswa’ di dalam tanda kurung ini.

Untuk query penambahan atribut pada tabel, kita akan mengikuti format di bawah ini ya, teman-teman:

Belajar database: Query untuk menambahkan atribut atau kolom

Jika diuraikan, query di atas bisa kita bagi ke dalam 3 bagian, yaitu:

  • Nama Atribut
A picture containing clock Description automatically generated

Bagian ini akan kita isi dengan nama kolom yang kita kehendaki. Pada contoh di atas, nama kolomnya adalah ‘NIM’. Artinya, atribut NIM ini digunakan untuk menampung NIM dari mahasiswa-mahasiswa yang akan kita masukkan datanya ke dalam database.

  • Tipe Data Atribut

Bagian ini memiliki peran sama seperti tipe data pada bahasa pemrograman lainnya. Dengan tipe data atribut ini, kita dapat membatasi input apa saja yang bisa diterima oleh atribut ini ke depannya. Misalnya, apabila kita menetapkan suatu atribut bertipe data integer, maka kita tidak bisa meng-input ‘Hello World’ ke dalam atribut atau kolom tersebut. Hal ini dikarenakan ‘Hello World’ bukan merupakan integer, melainkan string.

Jika dilihat pada contoh di atas, kita menggunakan VARCHAR(10) sebagai tipe data dari atribut NIM. VARCHAR dapat kita anggap sebagai tipe data string pada SQL ya, teman-teman. Kira-kira, kenapa ya NIM yang seluruhnya berisikan angka malah disimpan dengan tipe data VARCHAR dan bukannya INT (tipe data integer pada SQL)? NIM ditetapkan bertipe data VARCHAR karena meskipun terdiri atas angka-angka, kita tidak akan menambah, mengurangi, mengali, atau membagi NIM tersebut, ‘kan? Tidak seperti jumlah uang atau kuota internet yang mungkin bisa kita tambahkan, kurangi, kali, atau bagi. Oleh karena itu, kita menyimpan NIM dengan tipe data VARCHAR.

Jika kamu teliti lagi, ternyata SQL juga memiliki tipe data CHAR loh! Nah, kira-kira, apa ya bedanya antara CHAR dan VARCHAR? Keduanya sebenarnya merupakan tipe data untuk menampung string nih, teman-teman. Akan tetapi, CHAR memiliki panjang string yang tetap untuk seluruh data yang dimasukkan, sementara VARCHAR memiliki panjang string yang disesuaikan dengan input-nya.

Sebagai contoh, asumsikan bahwa di awal kita menetapkan bahwa atribut NIM memiliki panjang maksimal sebanyak 12 karakter dengan tipe data CHAR. Apabila kita hanya memasukkan NIM dengan panjang 10 karakter, 2 karakter yang tersisa akan diisi dengan spasi. Dengan begitu, panjang NIM-nya akan tetap sebanyak 12 karakter. Lain halnya dengan VARCHAR. Ketika kita memasukkan NIM sebanyak 10 karakter, maka panjang NIM tersebut tetap 10 karakter. Tidak akan ada penambahan 2 spasi seperti pada tipe data CHAR.

Nah, kira-kira, dapatkah kamu menebak bagaimana cara mendefinisikan panjang maksimal karakter pada atribut NIM? Yup, benar sekali! Apabila kita melihat contoh sebelumnya, kita akan menemukan query yang terbaca VARCHAR (10). Angka 10 di dalam kurung inilah yang merupakan panjang maksimal karakter untuk atribut NIM.

A picture containing drawing Description automatically generated
  • Deklarasi NOT NULL
A picture containing drawing Description automatically generated

Pernahkah kamu mengisi Google Forms sebelumnya? Jika kamu sudah pernah mengisinya, pastinya kamu sudah tidak asing dengan tanda bintang berwarna merah yang ditemui di beberapa pertanyaan, ‘kan? Pertanyaan-pertanyaan dengan tanda bintang merah tersebut pastinya harus kita jawab ya, teman-teman. Jika tidak, kita tidak akan bisa mengumpulkan jawaban kita untuk Google Forms tersebut.

Sama halnya dengan tanda bintang merah pada Google Forms, deklarasi NOT NULL ini juga berfungsi untuk ‘mewajibkan’ kita mengisi atribut yang dimaksud. Artinya, atribut ini tidak boleh dikosongkan saat kita memasukkan data mahasiswa-mahasiswa yang ada nantinya. Jika kita mengosongkan atribut ini, tentunya akan terjadi error, sama seperti Google Forms ketika kita belum menjawab pertanyaan yang diwajibkan.

Deklarasi NOT NULL ini bersifat opsional ya, teman-teman. Apabila kamu menetapkan suatu atribut yang wajib diisi, maka kamu bisa menambahkannya. Akan tetapi, apabila atribut tersebut bersifat opsional, kamu juga bisa menghapus deklarasi NOT NULL ini.

Pada tabel ‘Mahasiswa’, kita akan membuat 3 atribut, yakni NIM, Nama, dan Jurusan. Semua mahasiswa pastinya memiliki NIM, Nama lengkap, dan Jurusan, ‘kan? Oleh karena itu, kita bisa menambahkan deklarasi NOT NULL pada ketiga atribut di tabel ‘Mahasiswa’ ini.

4.      Query Final

Nah, setelah kamu mengikuti langkah-langkah di atas, seharusnya kamu akan mendapati query akhir yang terlihat seperti gambar di bawah ini:

Belajar database: Query untuk membuat tabel

Selamat, teman-teman! Kamu sudah berhasil membuat sebuah tabel Mahasiswa dengan 3 atribut di dalamnya! Nah, setelah mengetahui komponen-komponen query untuk membuat tabel, kini kamu bisa belajar database lebih lanjut lagi deh! Kamu bisa mencari tahu ada tipe data apa saja dalam SQL, kamu juga bisa mencari tahu apa saja deklarasi tambahan lainnya selain NOT NULL, dan masih banyak lagi. Jangan malas untuk belajar database dengan lebih mendalam lagi ya, teman-teman. Karena dengan usaha kamu untuk mencari tahu lebih banyak lagi tentang SQL, kamu pastinya juga akan menjadi semakin mahir SQL!

Nah, semoga artikel Coding Studio kali ini dapat membantu kamu untuk mulai belajar SQL secara praktik ya, teman-teman! Sampai jumpa di artikel selanjutnya!