Perintah SQL: DQL, DDL, DML, DCL & TCL beserta Contoh
โก Ringkasan Cerdas
Perintah SQL dikelompokkan menjadi lima subbahasa yang mengelola basis data relasional. DDL mendefinisikan struktur, DML mengubah data, DCL mengontrol akses, TCL mengelola transaksi, dan DQL mengambil data, masing-masing dengan serangkaian pernyataan dan sintaksnya sendiri.

Apa itu SQL?
SQL adalah bahasa database yang dirancang untuk pengambilan dan pengelolaan data dalam database relasional.
SQL adalah bahasa standar untuk manajemen basis data. Semua sistem RDBMS menyukainya MySQL, Akses MS, OracleSybase, Postgres, dan SQL Server menggunakan SQL sebagai bahasa basis data standar mereka. Bahasa pemrograman SQL menggunakan berbagai perintah untuk operasi yang berbeda. Kita akan mempelajari perintah DCL, TCL, DQL, DDL, dan DML dalam SQL beserta contohnya.
Mengapa Menggunakan SQL?
Berikut adalah alasan-alasan penting mengapa Anda harus menggunakan SQL:
- Ini membantu pengguna mengakses data di dalam sistem RDBMS.
- Ini membantu Anda mendeskripsikan data tersebut.
- Ini memungkinkan Anda untuk menentukan data dalam database dan memanipulasi data spesifik tersebut.
- Dengan bantuan perintah SQL, Anda dapat membuat dan menghapus basis data dan tabel.
- SQL memungkinkan Anda menggunakan fungsi dalam basis data, serta membuat tampilan (view) dan prosedur tersimpan (stored procedure).
- Anda dapat mengatur izin pada tabel, prosedur, dan tampilan.
Sejarah Singkat SQL
Berikut adalah beberapa tempat penting yang perlu dikunjungi. sejarah SQL:
- 1970 โ Dr. Edgar F. โTedโ Codd menjelaskan model relasional untuk database.
- 1974 โ Structured Query Language muncul, awalnya bernama SEQUEL. IBM.
- 1979 - Oracle merilis basis data berbasis SQL pertama yang tersedia secara komersial, berdasarkan pada IBMPrototipe penelitian Sistem R.
- 1986 โ ANSI menerbitkan standar SQL pertama, SQL-86.
- 1989 โ SQL-89 hadir sebagai revisi pertama dari standar tersebut.
- 1992 โ SQL-92 (SQL2) menjadi standar utama yang masih dirujuk oleh sebagian besar basis data hingga saat ini.
- 1999 โ SQL:1999 (SQL3) diluncurkan dengan fitur-fitur seperti trigger, recursive queries, dan object-orientation.
- 2003 โ SQL:2003 menambahkan fungsi jendela, generator urutan, dan fitur terkait XML.
- 2006 โ SQL:2006 menambahkan dukungan untuk Bahasa Kueri XML (XQuery).
- 2008 โ SQL:2008 memperkenalkan pernyataan TRUNCATE dan pemicu INSTEAD OF.
- 2011 โ SQL:2011 meningkatkan dukungan untuk basis data temporal.
- 2016 โ SQL:2016 menambahkan dukungan JSON dan pencocokan pola baris (MATCH_RECOGNIZE).
- 2019 โ SQL/MDA (Bagian 15) menambahkan dukungan array multidimensi ke standar tersebut.
- 2023 โ SQL:2023 menambahkan tipe data JSON asli dan kueri grafik properti (SQL/PGQ).
- 2024 โ GQL, bahasa basis data ISO baru pertama sejak SQL, diterbitkan sebagai standar pendamping kueri grafik.
- 2026 โ SQL:2023 tetap menjadi standar saat ini, dengan revisi berikutnya sedang dikembangkan di ISO/IEC.
Jenis-jenis Perintah SQL
Berikut lima jenis perintah SQL yang banyak digunakan:
- Bahasa Definisi Data (DDL)
- Bahasa Manipulasi Data (DML)
- Bahasa Kontrol Data (DCL)
- Bahasa Kontrol Transaksi (TCL)
- Bahasa Kueri Data (DQL)

Tabel di bawah ini merangkum kelima kategori tersebut sebelum masing-masing dibahas secara detail.
| Kategori | Tujuan | Perintah utama |
|---|---|---|
| HAL-HAL | Definisikan struktur | BUAT, HAPUS, UBAH, POTONG |
| DML | Ubah data | SISIPKAN, PERBARUI, HAPUS |
| DCL | Kontrol akses | MEMBERIKAN, MENCABUT |
| TCL | Kelola transaksi | KOMIT, ROLLBACK, SIMPAN TITIK |
| DQL | Mengambil data | MEMILIH |
Apa itu DDL?
Data Definition Language (DDL) membantu Anda mendefinisikan struktur atau skema basis data. Mari kita pelajari perintah DDL beserta sintaksnya. Perintah DDL utama dalam SQL adalah CREATE, DROP, ALTER, dan TRUNCATE.
MEMBUAT
Pernyataan CREATE digunakan untuk mendefinisikan struktur atau skema basis data:
sintaks:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Sebagai contoh:
Create database university; Create table students; Create view for_students;
DROP
Perintah DROP menghapus tabel dan basis data dari RDBMS.
sintaks:
DROP TABLE ;
Sebagai contoh:
Drop object_type object_name; Drop database university; Drop table student;
MENGUBAH
Perintah ALTER memungkinkan Anda untuk mengubah struktur basis data.
sintaks: Untuk menambahkan kolom baru pada tabel:
ALTER TABLE table_name ADD column_name COLUMN-definition;
Untuk mengubah kolom yang ada di tabel:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Sebagai contoh:
Alter table guru99 add subject varchar;
MEMOTONG
Perintah ini digunakan untuk menghapus semua baris dari tabel dan mengosongkan ruang yang berisi tabel tersebut.
sintaks:
TRUNCATE TABLE table_name;
Contoh:
TRUNCATE table students;
Apa itu Bahasa Manipulasi Data?
Bahasa Manipulasi Data (DML) memungkinkan Anda untuk memodifikasi instance basis data dengan menyisipkan, memodifikasi, dan menghapus datanya. DML bertanggung jawab untuk melakukan semua jenis modifikasi data dalam basis data. Perintah DML penting dalam SQL adalah:
- MEMASUKKAN
- UPDATE
- DELETE
MEMASUKKAN
Pernyataan ini digunakan untuk memasukkan data ke dalam baris tabel.
sintaks:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Sebagai contoh:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');
UPDATE
Perintah ini digunakan untuk memperbarui atau mengubah nilai kolom dalam tabel.
sintaks:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Sebagai contoh:
UPDATE students SET FirstName = 'Jhon', LastName= 'Wick' WHERE StudID = 3;
DELETE
Perintah ini digunakan untuk menghapus satu atau lebih baris dari sebuah tabel.
sintaks:
DELETE FROM table_name [WHERE condition];
Sebagai contoh:
DELETE FROM students WHERE FirstName = 'Jhon';
Apa itu DCL?
DCL (Data Control Language) mencakup perintah-perintah seperti GRANT dan REVOKE, yang berguna untuk memberikan hak dan izin. Perintah-perintah lainnya mengontrol parameter sistem basis data.
Hibah
Perintah ini digunakan untuk memberikan hak akses kepada pengguna ke sebuah basis data.
sintaks:
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
Sebagai contoh:
GRANT SELECT ON Users TO'Tom'@'localhost;
Revoke
Perintah ini berguna untuk mengambil kembali izin dari pengguna.
sintaks:
REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}
Sebagai contoh:
REVOKE SELECT, UPDATE ON student FROM BCA, MCA;
Apa itu TCL?
Bahasa Kontrol Transaksi, atau perintah TCL, menangani transaksi di dalam basis data. Perintah-perintah ini bekerja langsung dengan status yang dijelaskan di bawah ini. pengelolaan transaksi.
Melakukan
Perintah ini digunakan untuk menyimpan semua transaksi ke database.
sintaks:
Commit;
Sebagai contoh:
DELETE FROM Students WHERE RollNo =25; COMMIT;
Rollback
Perintah Rollback memungkinkan Anda untuk membatalkan transaksi yang belum disimpan ke dalam basis data.
sintaks:
ROLLBACK;
Contoh:
DELETE FROM Students WHERE RollNo =25;
SAVEPOINT
Perintah ini membantu Anda mengatur titik penyimpanan (savepoint) dalam sebuah transaksi.
sintaks:
SAVEPOINT SAVEPOINT_NAME;
Contoh:
SAVEPOINT RollNo;
Apa itu DQL?
Bahasa Kueri Data (DQL) digunakan untuk mengambil data dari basis data. DQL hanya menggunakan satu perintah, yaitu SELECT.
MEMILIH
Perintah ini membantu Anda memilih atribut berdasarkan kondisi yang dijelaskan oleh klausa WHERE.
sintaks:
SELECT expressions FROM TABLES WHERE conditions;
Sebagai contoh:
SELECT FirstName FROM Student WHERE RollNo > 15;
HAPUS vs POTONG vs JATUHKAN
Ketiga perintah ini semuanya menghapus data, tetapi perbedaannya terletak pada data apa yang dihapus dan apakah tindakan tersebut dapat dibatalkan. Menganggap ketiganya sama-sama membingungkan adalah kesalahan umum yang dilakukan pemula.
| Aspek | DELETE | MEMOTONG | DROP |
|---|---|---|---|
| Kategori | DML | HAL-HAL | HAL-HAL |
| Menghapus | Baris terpilih | Semua baris | Seluruh meja |
| klausa WHERE | Diizinkan | Tidak diizinkan | Tidak berlaku |
| Rollback | Mungkin | Biasanya tidak | Tidak memungkinkan |
| Struktur dipertahankan | Ya | Ya | Tidak |
Singkatnya, gunakan DELETE untuk menghapus baris tertentu, TRUNCATE untuk mengosongkan tabel dengan cepat, dan DROP untuk membuang seluruh isi tabel.
