Home » SQL » Jenis Perintah SQL: Data Definition Language

Jenis Perintah SQL: Data Definition Language

by Rizki Cahyana
by Rizki Cahyana

Data Definition Language (DDL) merupakan salah satu dari kelompok perintah SQL yang digunakan untuk berinteraksi terhadap struktur database dan objek database (table, index, function, view, store procedure, dan trigger).

Contoh perintah DDL:

  • CREATE
  • ALTER
  • DROP
  • RENAME
  • TRUNCATE
  • COMMENT
  1. CREATE

Perintah ini digunakan untuk membuat database atau objek database. Sebagai informasi tambahan, objek database dapat berupa tabel, indeks, fungsi, store prosedur, view, trigger, dan lain-lain.

1.1 Membuat Database

Sintaks:

CREATE DATABASE nama_database;

Contoh:

CREATE DATABASE db_kuliah;

1.2 Membuat Table

Sintaks:

CREATE TABLE nama_table(
  nama_kolom1 tipe_data1 constraint1,
  nama_kolom2 tipe_data2 constraint2,
  nama_kolom3 tipe_data3 constraint3
);

Contoh:

CREATE TABLE mahasiswa(
	id_mahasiswa INT AUTO INCREMENT PRIMARY KEY,
	nim VARCHAR(10) UNIQUE NOT NULL,
	jenis_kelamin VARCHAR(10),
	alamat VARCHAR(50),
	nomor_telepon VARCHAR(15)
);

1.3 Membuat Index

Sintaks:

CREATE INDEX nama_indeks ON nama_tabel(nama_kolom);

Contoh:

CREATE INDEX indeks_kontrak ON kontrak(id_kontrak, nim);

1.4 Membuat View

Sintaks:

CREATE VIEW nama_view AS
sql_statement;

Contoh:

CREATE VIEW view_krs AS 
SELECT matakuliah.kode, matakuliah.nama, matakuliah.sks, dosen.nip, dosen.nama, mahasiswa.nim, mahasiswa.nama, kontrak.tahun_akademik, kontrak.semester, kontrak.jumlah_sks 
FROM kontrak
JOIN dosen ON dosen.nip = kontrak.nip
JOIN mahasiswa ON mahasiswa.nim = kontrak.nim
JOIN matakuliah ON matakuliah.kode = kontrak.kode;

1.5 Membuat Function

Sintaks:

CREATE FUNCTION nama_fungsi(parameter tipe_data_parameter) RETURNS tipe_data_return
BEGIN
  sql_statement
  RETURN ...
END

Untuk informasi lebih detail mengenai Function akan dibahas terpisah.

1.6 Membuat Store Procedure

Sintaks:

CREATE PROCEDURE nama_prosedur(.. parameter tipe_data)
BEGIN
  sql_statement
END

Untuk informasi lebih detail mengenai Store Procedure akan dibahas terpisah.

1.7 Membuat Trigger

Sintaks:

CREATE TRIGGER nama_trigger
{BEFORE | AFTER} {INSERT | UPDATE | DELETE}
trigger_body;

Untuk informasi lebih detail mengenai Trigger akan dibahas terpisah.

  1. ALTER

Perintah ini digunakan untuk mengubah tabel, seperti:

  • Menambahkan kolom baru ke tabel.
  • Mengubah nama kolom yang ada di tabel.
  • Menghapus kolom dari tabel.
  • Mengubah tipe data atau lebar ukuran maksimal panjang data yang dapat ditampung

2.1 Menambahkan Kolom Baru

Sintaks:

ALTER TABLE nama_tabel 
ADD (nama_kolom tipe_data);

Contoh:

ALTER TABLE mahasiswa 
ADD (jurusan VARCHAR(20));

2.2 Menghapus Kolom

Sintaks:

ALTER TABLE nama_tabel
DROP (nama_kolom);

Contoh:

ALTER TABLE mahasiswa 
DROP (alamat);

2.3 Mengubah Nama Kolom

Sintaks:

ALTER TABLE nama_tabel
RENAME nama_kolom_lama TO nama_kolom_baru;

Contoh:

ALTER TABLE mahasiswa
RENAME jenis_kelamin TO jk;

2.4 Mengubah Tipe Data / Constraint

Sintaks:

ALTER TABLE nama_tabel
MODIFY (nama_kolom tipe_data_baru constraint_jika_ada);

Contoh:

ALTER TABLE nama_tabel
MODIFY (nama_kolom tipe_data NOT NULL);
  1. DROP

Perintah ini digunakan untuk menghapus database atau objek database.

3.1 Menghapus Database

Sintaks:

DROP DATABASE nama_database;

Contoh:

DROP DATABASE db_kuliah;

3.2 Menghapus Table

Sintaks:

DROP TABLE nama_tabel;

Contoh:

DROP TABLE matakuliah;

3.3 Menghapus Index

Sintaks:

DROP INDEX nama_indeks
ON nama_tabel;

Contoh:

DROP INDEX indeks_kontrak
ON kontrak;

3.4 Menghapus Objek Database (Store Procedure / Function / Trigger / View)

Sintaks:

DROP {PROCEDURE | FUNCTION | TRIGGER | VIEW} {nama_prosedur | nama_fungsi | nama_trigger | nama_view};
  1. RENAME

Perintah ini digunakan untuk mengubah objek database, misalnya tabel. Dengan perintah ini memungkinkan untuk mengubah nama satu atau lebih tabel sekaligus.

Sintaks RENAME 1 tabel:

RENAME TABLE nama_tabel_lama TO nama_tabel_baru;

Contoh:

RENAME TABLE mahasiswa TO mhs;

Sintaks RENAME banyak tabel sekaligus:

RENAME TABLE 
  nama_tabel_lama1 TO nama_tabel_baru1,
  nama_tabel_lama2 TO nama_tabel_baru2,
  nama_tabel_lama3 TO nama_tabel_baru3;

Contoh:

RENAME TABLE
  mhs TO mahasiswa,
  dosen TO dsn,
  matakuliah TO mk;
  1. TRUNCATE

Perintah ini digunakan untuk membersihkan isi tabel, yang artinya sama dengan menghapus seluruh data yang ada pada tabel tersebut.

Sintaks:

TRUNCATE TABLE nama_tabel;

Contoh:

TRUNCATE TABLE dsn;
  1. COMMENT

Seperti pada bahasa pemrograman lainnya, comment adalah bagian yang tidak dieksekusi oleh interpreter. Penulisan komentar pada SQL terbagi ke dalam:

6.1 Single-Line Comments / Komentar Satu Baris

Contoh:

-- ini adalah single line comments, tidak akan pernah dieksekusi

6.1 Multi-Line Comments / Komentar Banyak Baris

Contoh:

/* 
  Ini adalah multi line comments
  Tidak akan pernah
  dieksekusi
*/

You may also like