Data Definition Language
(DDL)
Data Definition Language (DDL) 1
Data Definition Language (DDL)
Data Definition Language atau DDL merupakan sekumpulan perintah SQL yang digunakan
untuk membuat (create), mengubah (update), dan menghapus (drop) suatu struktur dan tipe
data dari obyek - obyek database.
Database Object
A. Table
Unit basic untuk tempat penyimpanan yang terdiri atas baris dan kolom.
B. View
Secara singkat, view digunakan untuk membuat sebuah tampilan yang berisi satu atau lebih
table yang direlasikan. Penjelasan lebih dalamnya akan disampaikan di modul berikutnya.
C. Sequence
Sequence digunakan untuk men-generate angka dan melakukan increment secara otomatis di
setiap pemanggilannya.
• Membuat sequence
CREATE SEQUENCE sequence1
INCREMENT BY 5
START WITH 10
MAXVALUE 50
Data Definition Language (DDL) 2
NOCYCLE
NOCACHE;
• Pengaplikasian sequence
CREATE TABLE makanan
(id_makanan VARCHAR2(2) NOT NULL,
nama_makanan VARCHAR2(20) NOT NULL);
INSERT INTO makanan (id_makanan,nama_makanan) VALUES
([Link],'Kebab');
INSERT INTO makanan VALUES
([Link],'Burger');
• Menghapus sequence
DROP SEQUENCE sequence1;
Data Definition Language (DDL) 3
D. Index
Index digunakan untuk mempermudah pengaksesan data set. Tanpa index, pencarian
akan menjadi lebih lama tergantung skala data yang digunakan dalam data set.
• Membuat index
CREATE INDEX idx_nameEmployee
ON employees (first_name,last_name);
• Menghapus index
DROP INDEX idx_nameEmployee;
E. Synonym
Synonym digunakan untuk memberikan nama lain pada table yang diminta.
• Membuat synonym
CREATE SYNONYM daftarPekerja FOR employees;
• Menampilkan synonym
SELECT * from daftarPekerja;
• Menghapus synonym
DROP SYNONYM daftarPekerja;
Data Definition Language (DDL) 4
CREATE TABLE
Terdapat 2 cara membuat table:
1) CREATE TABLE
CREATE TABLE makanan
(id_makanan VARCHAR2(2) NOT NULL,
nama_makanan VARCHAR2(20) NOT NULL);
• Menambahkan Primary Key
o Cara Pertama
CREATE TABLE makanan
(id_makanan VARCHAR2(2) NOT NULL PRIMARY KEY,
nama_makanan VARCHAR2(20) NOT NULL);
o Cara Kedua
CREATE TABLE makanan
(id_makanan VARCHAR2(2) NOT NULL,
nama_makanan VARCHAR2(20) NOT NULL,
CONSTRAINT id_makanan_pk PRIMARY KEY (id_makanan));
Data Definition Language (DDL) 5
• Menambahkan Foreign Key
CREATE TABLE Orders (
id_order INT PRIMARY KEY,
nama_pemesan VARCHAR2(20),
id_makanan VARCHAR2(2),
CONSTRAINT fk_id_makanan FOREIGN KEY (id_makanan)
REFERENCES makanan(id_makanan));
2) CREATE TABLE BY SUBQUERY
CREATE TABLE ordersSecond AS
SELECT id_order, id_makanan
FROM orders;
❖ Menampilkan struktur hasil CREATE TABLE
desc makanan;
desc orders;
desc ordersSecond;
Data Definition Language (DDL) 6
ALTER TABLE
Alter Table digunakan untuk menambahkan (ADD), menghapus (DROP COLUMN), atau
mengubah (MODIFY/RENAME) kolom baik constraint maupun tipe data yang ada di dalam
table.
• Menambahkan kolom baru
ALTER TABLE makanan
ADD total_makanan INT;
Hasilnya :
• Menghapus kolom
ALTER TABLE makanan
DROP COLUMN total_makanan;
Hasilnya :
• Mengubah nama kolom
ALTER TABLE orders
RENAME COLUMN id_order TO orderID;
Hasilnya :
Data Definition Language (DDL) 7
• Mengubah tipe data kolom tertentu
ALTER TABLE orders
MODIFY ORDERID VARCHAR2(2);
Hasilnya :
• Menghapus kolom tertentu
ALTER TABLE ordersSecond
DROP COLUMN id_makanan;
Hasilnya :
• Menambahkan Primary Key
ALTER TABLE makanan
ADD PRIMARY KEY (id_makanan);
• Menambahkan Foreign Key
ALTER TABLE orders
ADD FOREIGN KEY (id_makanan) REFERENCES makanan(id_makanan);
(* Untuk memberikan nama Constraint sehingga ketika akan di drop akan lebih mudah *)
Data Definition Language (DDL) 8
DROP & TRUNCATE TABLE
Drop Table digunakan untuk menghapus table yang diinginkan. Sedangkan Truncate
Table digunakan untuk menghapus isi table, tetapi tidak dengan strukturnya.
DROP TABLE ordersSecond;
TRUNCATE TABLE orders;
Data Definition Language (DDL) 9
Referensi :
ht t ps: / / www.w3sc hool s.c om / sql / sql _fore ignke y.a sp
ht t ps: / / www.w3sc hool s.c om / sql / sql _pri m aryke y.a sp
ht t ps: / / www.w3sc hool s.c om / sql / sql _a l te r.a sp
ht t ps: / / www.w3sc hool s.c om / sql / sql _c re ate _t a ble .a sp
ht t ps: / / www.w3sc hool s.c om / sql / sql _a ut oinc re m e nt .a sp
ht t ps: / / www.w3sc hool s.c om / sql / sql _vi e w.a sp
Data Definition Language (DDL) 10