DATA DEFINITION LANGUAGE (DDL)
DLL merupakan bagian
dari sql yang digunakan untuk mendefinisikan struktur dan kerangka data dan obyek basis data. Bisa juga
dikatakan merupakan kelompok perintah yang berfungsi untuk mendefinisikan
atribut-atribut basis data, tabel, batasan-batasan terhadap suatu atribut,
serta hubungan antar tabel.
|
Perintah
|
Keterangan
|
|
Create Database
|
Membuat basis data
|
|
Drop Database
|
Menghapus basis data
|
|
Create Table
|
Membuat tabel
|
|
Alter Table
|
Mengubah atau menyisipkan kolom
ke dalam tabel
|
|
Drop Table
|
Menghapus tabel dari basis data
|
|
Create Index
|
Membuat Index
|
|
Drop Index
|
Menghapus Index
|
Macam – macam perintah dari DDL beserta contoh pembuatan
1. Membuat
Database
Nama database yang dibuat tidak boleh mengandung
spasi dan tidak boleh memiliki nama yang sama dengan database lain di MySQL.
Syntax :
Mysql>CREATE DATABASE
namadatabase;
Contoh :
Mysql> CREATE
DATABASE perpustakaan;
2. Menampilkan Database
Syntax :
Mysql>SHOW DATABASES;
Database yang akan dihapus harus sesuai dengan
nama database.
Syntax :
Mysql>DROP DATABASE namadatabase;
Contoh:
Mysql>DROP DATABASE perpustakaan;
Sebelum membuat suatu tabel, terlebih dahulu
harus mengaktifkan database yang akan digunakan
Syntax :
Mysql>USE namadatabase;
Contoh :
Mysql>USE perpustakaan;
5. Membuat Tabel
Dalam basis data tabel
atau field berfungsi untuk menyimpan record atau data. Syntax :
Mysql>CREATE TABLE namatable (
Field1 TipeData1 (lebardata),
Field2 TipeData2 (lebardata),
.......
Field3 TipeData3 (lebardata));
Nama tabel tidak boleh mengandung spasi (space)
tetapi jika menginginkan ada spasi harus menggunakan tanda penghubung (
nama_tabel ). Field1 merupakan atribut pertama dan TipeData1 merupakan tipe
data untuk atribut pertama. Jika ingin membuat tabel dengan atribut lebih dari
satu, maka setelah pendefinisian tipe data sebelumnya diberikan tanda koma (,).
Contoh :
Mysql>CREATE TABLE pengarang (
kode_pengarang varchar (5),
nama_pengarang varchar (35));
Syntax :
Mysql>SHOW TABLES;
Untuk Melihat Struktur Tabel
Syntax :
Mysql>DESC namatabel;
Contoh :
Mysql>DESC pengarang;
6. Mendefinisikan Null / Not Null
Ketika membuat tabel, beberapa field harus
diatur agar field tertentu harus diisi. Biasanya field ini adalah sebagai field
utama atau kunci, juga sebagai identikasi sehingga tidak boleh kosong.
Syntax :
Mysql>CREATE TABLE namatabel (
Field1 TipeData1 (lebardata) NOT NULL,
Field2 TipeData2 (lebardata) NOT NULL,
....
Field3 TipeData3 (lebardata));
Contoh :
Mysql>CREATE TABLE pengarang (
kode_pengarang varchar (5) not null,
nama_pengarang varchar (35) not null);
7. Mendefinisikan Nilai Bawaan (Default)
Nilai default adalah nilai yang otomatis
diberikan oleh sistem untuk suatu atribut ketika ada penambahan baris baru,
sementara nilai pada atribut tersebut tidak diisi oleh pengguna.
Syntax :
Mysql>CREATE TABLE namatabel (
Field1 TipeData1 (lebardata),
Field2 TipeData2 DEFAULT nilai);
Dimana nilai adalah nilai default dari atribut tersebut.
Contoh :
Mysql>CREATE TABLE buku (
kode_buku varchar (5) NOT NULL,
judul_buku varchar (15) NOT NULL,
harga integer default 0,
tahun_terbit varchar (5),
kode_pengarang varchar (5),
kode_penerbit varchar (5));
8. Menentukan Primary Key Pada Tabel Key adalah satu gabungan dari beberapa atribut yang dapat
membedakan semua basis data (row) dalam tabel secara unik. Key di dalam
database berfungsi sebagai suatu cara
untuk mengidentifikasi dan menghubungkan satu tabel data dengan tabel yang
lain.
Primary Key adalah suatu atribut atau satu set minimal
atribut yang tidak hanya mendefinisikan secara unik suatu kejadian spesifik
tetapi juga dapat mewakili setiap kejadian dari suatu kejadian. Terdapat tiga cara untuk
membuat primary key.
Syntax :
Cara 1 :
Mysql>CREATE TABLE namatabel (
Field1 TipeData1(lebardata) NOT NULL PRIMARY KEY,
Field2 TipeData2 (lebardata));
Cara 2 :
Mysql>CREATE TABLE namatabel (
Field1 TipeData1(lebardata),
Field2 TipeData2 (lebardata)
PRIMARY KEY (Field1));
Cara 3 :
Mysql>ALTER TABLE namatabel ADD CONSTRAINT namaconstraint
PRIMARY KEY (namakolom);
Contoh 1 :
Mysql>CREATE TABLE pengarang (
kode_pengarang varchar (5) NOT NULL PRIMARY KEY,
nama_pengarang varchar (35) NOT NULL);

Contoh 2 :
Mysql>CREATE TABLE pengarang ( kode_pengarang varchar (5) NOT NULL,
nama_pengarang varchar (35) NOT NULL);
Mysql>ALTER TABLE pengarang ADD CONSTRAINT pk PRIMARY KEY (kode_pengarang);
9. Menghapus Primary Key Pada Tabel
Syntax :
Cara 1 :
Mysql>ALTER TABLE namatabel DROP CONSTRAINT namaconstraint;
Jika primary key dibuat dengan alter table.
Cara 2 :
Mysql>ALTER TABLE namatabel DROP PRIMARY KEY;
Jika primary key dibuat melalui create table.
Contoh :
Mysql>ALTER TABLE pengarang DROP PRIMARY KEY;
10. Menentukan Foreign Key Pada Tabel Foreign Key adalah satu set atribut atau set
atribut sebagai key penghubung kedua tabel dan melengkapi satu relationship
(hubungan) terhadap primary key yang menunjukan keinduknya. Jika sebuah primary
key terhubungan ke table/entity lain, maka keberadaan primary key pada entity
tersebut di sebut sebagai foreign key. Untuk membuat foreign key, maka harus dipastikan
bahwa tabel dan atribut yang dirubah (tabel induk dari foreign key) sudah
didefinisikan terlebih dahulu.
Syntax :
Mysql>CREATE TABLE namatabel (
Field1 TipeData1 (lebardata),
Field2 TipeData2 (lebardata),
FOREIGN KEY (Field2) REFERENCES namatabelinduk (namafiletabelinduk) ON UPDATE CASCADE ON DELETE NO ACTION );
Atau
Mysql>ALTER TABLER namatabel ADD CONSTRAINT namaconstraint FOREIGN KEY (namafield) REFERENCES namatabelinduk (namafieldinduk) ON UPDATE CASCADE ON DELETE NO ACTION; Contoh :
Mysql >CREATE TABLE buku (
kode_buku varchar (5) NOT NULL PRIMARY KEY,
judul_buku varchar (35) NOT NULL,
harga integer default 0,
tahun_terbit varchar (5),
kode_pengarang varchar (5),
kode_penerbit varchar (5), FOREIGN KEY (kode_pengarang) REFERENCES pengarang (kode_pengarang) ON UPDATE CASCADE ON DELETE NO ACTION; Atau
Mysql>ALTER TABLE buku ADD CONSTRAINT fk FOREIGN (kode_pengarang) REFERENCES pengarang (kode_pengarang) ON UPDATE CASCADE ON DELETE NO ACTION;
11. Menghapus Foreign Key
Syntax :
Mysql>ALTER TABLE namatabel DROP FOREIGN KEY namaconstraint;
Contoh :
Mysql >ALTER TABLE buku DROP FOREIGN KEY fk;
12. Mengubah Struktur Tabel
Tabel yang sudah dibuat dapat dilakukan perubahan strukturnya
seperti penambahan atribut (field), penghapusan atribut (field) bahkan
mengganti lebar field dari tabel tersebut. Perintah yang digunakan adalah ALTER
TABLE.
~ Menambah Atribut Baru Pada Tabel
Syntax : Mysql>ALTER TABLE namatabel ADD fieldbaru tipe;
namatabel adalah nama tabel yang akan ditambah
fieldnya. Fieldbaru adalah nama atribut yang akan ditambahkan, tipe adalah tipe
data dari atribut yang akan ditambahkan. Contoh : Mysql>ALTER TABLE buku ADD keterangan varchar (25);
~ Mengubah Tipe Data atau Lebar Atribut Pada Tabel Syntax : Mysql>ALTER TABLE namatabel MODIFY COLUMN field tipe;
namatabel adalah nama tabel yang akan diubah
tipe data atau lebar atributnya. Field adalah atribut yang akan diubah tipe
data atau lebarnya. Tipe adalah tipe data baru atau tipe data lama dengan lebar
atribut yang berbeda.
Contoh :
Mysql>ALTER TABLE buku MODIFY COLUMN keterangan char (20);
~ Mengubah Nama Atribut (Field) Pada Tabel
Syntax : Mysql>ALTER TABLE namatable CHANGE COLUMN namafield namabarufield tipe;
namatabel adalah nama tabel yang akan diubah
nama atributnya, namalamafield adalah
atribut yang akan diganti namanya,
namabarufield adalah nama baru atribut, tipedatanya
adalah tipe data dari
atribut tersebut.
Contoh :
Mysql>ALTER TABLE buku CHANGE COLUMN ket char (20);
~ Menghapus Atribut (Fiedl) Pada Tabel
Syntax : Mysql>ALTER TABLE namatable DROP COLUMN namakolom;
Contoh:
Mysql>ALTER TABLE buku DROP ket;
13. Menghapus Tabel Syntax :
Mysql>DROP TABLE namatabel;
Contoh :
Mysql>DROP TABLE buku;
DATA MANIPULATION LANGUAGE (DML)