DML, DDL, dan DCL: Definisi dan Perbedaan

DML, DDL, dan DCL: Definisi dan Perbedaan
Konten Halaman

Dalam dunia pengembangan database, seringkali kita mendengar istilah DML, DDL, dan DCL. Ketiga istilah ini sangat penting karena masing-masing memiliki peran yang berbeda dalam memanipulasi database.

Namun, bagi sebagian orang, ketiga istilah ini mungkin masih membingungkan. Dalam artikel ini, kita akan membahas apa itu DML, DDL, dan DCL serta apa perbedaan antara ketiganya.

Apa itu DML?

DML singkatan dari “Data Manipulation Language”. DML adalah bahasa yang digunakan untuk memanipulasi data dalam sebuah database. Fungsi utama DML adalah untuk memanipulasi data dalam tabel. Berikut beberapa contoh DML:

SELECT

SELECT digunakan untuk menampilkan data yang sudah ada di dalam tabel.

Contoh:

SELECT * FROM nama_tabel;

INSERT

INSERT digunakan untuk menambahkan data baru ke dalam tabel.

Contoh:

INSERT INTO nama_tabel (kolom1, kolom2, kolom3) VALUES ('nilai1', 'nilai2', 'nilai3');

UPDATE

UPDATE digunakan untuk mengubah data yang sudah ada di dalam tabel.

Contoh:

UPDATE nama_tabel SET kolom1 = 'nilai1', kolom2 = 'nilai2' WHERE kondisi;

DELETE

DELETE digunakan untuk menghapus data yang sudah ada di dalam tabel.

Contoh:

DELETE FROM nama_tabel WHERE kondisi;

Apa itu DDL?

DDL singkatan dari “Data Definition Language”. DDL adalah bahasa yang digunakan untuk mendefinisikan struktur database. Fungsi utama DDL adalah untuk membuat, mengubah, atau menghapus tabel, indeks, dan lain sebagainya. Berikut beberapa contoh DDL:

CREATE

CREATE digunakan untuk membuat tabel baru di dalam database.

Contoh:

CREATE TABLE nama_tabel (
    kolom1 tipe_data1,
    kolom2 tipe_data2,
    kolom3 tipe_data3,
    PRIMARY KEY (kolom1)
);

ALTER

ALTER digunakan untuk mengubah struktur tabel yang sudah ada.

Contoh:

ALTER TABLE nama_tabel ADD kolom_baru tipe_data;

DROP

DROP digunakan untuk menghapus tabel atau indeks yang sudah ada di dalam database.

Contoh:

DROP TABLE nama_tabel;

Apa itu DCL?

DCL singkatan dari “Data Control Language”. DCL adalah bahasa yang digunakan untuk mengontrol akses ke database. Fungsi utama DCL adalah untuk memberikan hak akses kepada pengguna serta mengontrol hak akses pengguna ke database. Berikut beberapa contoh DCL:

GRANT

GRANT digunakan untuk memberikan hak akses kepada pengguna.

Contoh:

GRANT SELECT, INSERT, UPDATE, DELETE ON nama_tabel TO nama_pengguna;

REVOKE

REVOKE digunakan untuk mencabut hak akses dari pengguna.

Contoh:

REVOKE SELECT, INSERT, UPDATE, DELETE ON nama_tabel FROM nama_pengguna;

Perbedaan antara DML, DDL, dan DCL

Sekarang, setelah kita mengetahui apa itu DML, DDL, dan DCL, mari kita lihat perbedaan antara ketiganya.

Fungsi

DML digunakan untuk memanipulasi data dalam sebuah tabel, DDL digunakan untuk mendefinisikan struktur database seperti membuat, mengubah, atau menghapus tabel, indeks, dan lain sebagainya, dan DCL digunakan untuk mengontrol akses ke database.

Objek yang dimanipulasi

DML digunakan untuk memanipulasi data dalam sebuah tabel, sedangkan DDL digunakan untuk mendefinisikan struktur database seperti membuat, mengubah, atau menghapus tabel, indeks, dan lain sebagainya. DCL digunakan untuk mengontrol akses ke database.

Syntax

DML menggunakan syntax seperti SELECT, INSERT, UPDATE, dan DELETE, sedangkan DDL menggunakan syntax seperti CREATE, ALTER, dan DROP. DCL menggunakan syntax seperti GRANT dan REVOKE.

Hak akses

DML dan DDL biasanya digunakan oleh pengguna dengan hak akses penuh, sedangkan DCL digunakan untuk memberikan hak akses kepada pengguna serta mengontrol hak akses pengguna ke database.

Kesimpulan

Dalam pengembangan database, ketiga istilah DML, DDL, dan DCL sangat penting karena masing-masing memiliki peran yang berbeda dalam memanipulasi database. DML digunakan untuk memanipulasi data dalam sebuah tabel, DDL digunakan untuk mendefinisikan struktur database seperti membuat, mengubah, atau menghapus tabel, indeks, dan lain sebagainya, dan DCL digunakan untuk mengontrol akses ke database. Memahami perbedaan antara ketiga istilah ini dapat membantu kita dalam mengembangkan database dengan lebih efektif dan efisien.