Data definition languageatau biasa disingkatDDLadalah bagian dari SQL (Structure Query Language). DDL berfungsi lebih kepada memanipulasi struktur database. DDL digunakan untuk membuat database, membuat tabel beserta struktur tabel. Mengubah struktur database, membuat relasi antar tabel, menghapus database, dan menghapus tabel. Berikut adalah perintah atau sintaksData Definition Language (SQL).
- CREATE, berfungsi untuk membuat database dan tabel.
- ALTER, berfungsi untuk mengubah struktur database.
- DROP, bersungsi untuk menghapus tabel dan database.
1. CREATE
Sintak ini digunakan untuk membuat database dan membuat tabel beserta struktur tabel.
1.1 Mebuat database (CREATE DATABASE)
Untuk membuat database dengan perintah CREATE DATABASE bisa mengikuti pola sebagai berikut:
1
CREATEDATABASEnama_database;
Dimana CREATE DATABASE adalah sintak yang digunakan untuk membuat database, sedangkan nama_database adalah nama dari database yang akan dibuat. Untuk penamaan database tidak boleh menggunakan spasi, untuk mengganti spasi gunakan underscore ( _ ).
Contoh:
1
CREATEDATABASEdb_penjualan;
Sintak diatas akan menghasilkan sebuah database dengan nama db_penjualan.
1.2 Membuat tabel (CREATE TABLE)
Sintak CREATE juga bisa digunakan untuk membuat tabel dengan perintah CREATE TABLE dengan pola sebagai berikut:
1
2
3
4
5
6
CREATETABLEtbl_barang(
barang_kode VARCHAR(10) PRIMARYKEY,
barang_nama VARCHAR(100),
barang_satuan VARCHAR(20),
barang_harga DOUBLE
);
Sintak SQL diatas akan menghasil sebuah tabel bernama tbl_barang dengan field (barang_kode, barang_nama, barang_satuan, barang_harga). Untuk varchar dan double adalah type data yang digunakan sedangkan angka yang ada dalam kurung adalah panjang karakter yang mampu ditampung oleh field tersebut dan primary key menandakan bahwa data yang ada pada field barang_kode bersifat unik (tidak boleh sama).
Agar tabel yang kita buat mendukung untuk relational database. Maka harus menggunakan ENGINE InnoDB. Sedangkan sintak SQL diatas menggunakan ENGINE default yaitu MyISAM. Untuk membuat tebel dengan ENGINE InnoDB adalah sebagai berikut:
1
2
3
4
5
6
CREATETABLEtbl_barang(
barang_kode VARCHAR(10) PRIMARYKEY,
barang_nama VARCHAR(100),
barang_satuan VARCHAR(20),
barang_harga DOUBLE
) ENGINE=INNODB;
2. ALTER
Sintak ALTER berfungsi untuk mengubah struktur tabel. Sintak ini bisa digunakan untuk menambah field pada tabel, menggubah field pada tabel, dan menghapus field pada tabel.
2.1 Menambahkan field
Sintak ALTER memungkinkan untuk menambahkan field yang tercecer pada suatu tabel. Adapun sintaknya adalah sebagai berikut:
1
ALTERTABLEtbl_barang ADDbarang_berat INT;
Sintak diatas akan menghasilkan sebuah field barang_berat yang disisipkan pada tabel tbl_barang dengan type data INT (Integer). Secara default setiap field yang disisipkan menggunakan sintak ALTER akan diletakkan pada field terakhir. Sintak ALTER juga memungkinkan untuk menyisipkan field secara custom agar setiap field yang disisipkan tidak diletakkan paling akhir. Adapaun sintaknya adalah sebagai berikut:
Sintak diatas akan menghasilkan sebuah field dengan nama barang_jenis dengan type data varchar dan panjang karakternya (20) yang diletakkan setelah field barang_nama.
2.2 Mengubah field
Selain untuk menambahkan field pada tabel, sintak ALTER juga memungkinkan untuk mengubah field pada tabel. Adapun sintaknya adalah sebagai berikut:
Sintak diatas akan mengubah field barang_jenis menjadi jenis_barang dengan type data varchar dan panjang karakternya (20).
2.3 Menghapus field
Selain untuk menyisipkan dan mengubah field, sintak ALTER juga memungkinkan untuk menghapus field yang tidak diperlukan dan terlanjur dibuat. Adapaun sintaknya adalah sebagai berikut:
1
ALTERTABLEtbl_barang DROPbarang_berat;
Sintak diatas akan menghapus field barang_berat yang ada pada tabel tbl_barang.
3. DROP
Sintak DROP ini digunakan untuk menghapus tabel dan database. Adapun sintaknya adalah sebagai berikut:
3.1 Menghapus database
Adapun sintak untuk menghapus database adalah sebagai berikut:
1
DROPDATABASEdb_penjualan;
Sintak diatas akan menghapus database dengan nama db_penjualan.
3.2 Menghapus tabel
Adapun sintak untuk menghapus tabel adalah sebagai berikut:
1
DROPTABLEtbl_barang;
Sintak diatas akan menghapus tabel dengan nama tbl_barang.
Sekian pembahasan tentang Data Definition Language Pada MySQL. Semoga bermanfaat.!
CREATEDATABASEnama_database;CREATEDATABASEdb_penjualan;CREATETABLEtbl_barang(barang_kodeVARCHAR(10)PRIMARYKEY,barang_namaVARCHAR(100),barang_satuanVARCHAR(20),barang_hargaDOUBLE);CREATETABLEtbl_barang(barang_kodeVARCHAR(10)PRIMARYKEY,barang_namaVARCHAR(100),barang_satuanVARCHAR(20),barang_hargaDOUBLE) ENGINE=INNODB;ALTERTABLEtbl_barangADDbarang_beratINT;ALTERTABLEtbl_barangADDbarang_jenisVARCHAR(20)AFTERbarang_nama;ALTERTABLEtbl_barang CHANGE barang_jenis jenis_barangVARCHAR(20);ALTERTABLEtbl_barangDROPbarang_berat;DROPDATABASEdb_penjualan;DROPTABLEtbl_barang;