Basis Data I (DDL)
BAB I
TUJUAN DAN LANDASAN TEORI
1.
Tujuan Praktikum
1.1
Membuat dan menghapus database melalui sintak DDL
1.2
Membuat, mengubah dan menghapus tabel dengan sintak DDL
1.3
Mengganti nama tabel dengan sintak DDL
2.
Landasan
Teori
Menurut Connoly
dan Begg (2005, p40), definisi Data Definition
Language (DDL) adalah suatu bahasa dalam basisdata
yang memungkinkan manusia untuk mendefinisikan dan memberi nama suatu entity,
atribut dan relasi yang dibutuhkan dengan
kesatuan integrasi dan batas security. DDL atau Data Definition Language bisa diartikan sebagai
kumpulan perintah pada sql yang berfungsi atau digunakan digunakan untuk
membuat, mengubah dan menghapus struktur atau definisi tipe data dari
objek-objek yang ada pada database. DDL
memungkinkan pembuatan dan penghancuran objek-objek yang ada dalam
basisdata seperti skema, domain, table, view dan indeks. DLL yang utama dalam
SQL yaitu:
- CREATE :
digunakan untuk membuat objek dalam basisdata
- ALTER : digunakan untuk mengubah
objek
dalam
basisdata.
ALTER
hanya dapat digunakan pada domain dan tabel saja
- DROP : digunakan untuk menghancurkan objek
pada dalam basis data
Saya akan mencoba menjelaskan satu persatu tentang perintah utama pada
Data Defination Language :
2.1 Create
Perintah CREATE bisa digunakan untuk
CREATE DATABASE dan CREATE TABLE. Pada dasarnya perintah CREATE digunakan untuk
membuat/menciptakan sebuah database ataupun table baru. Pertama-tama kita akan
membahas tentang perintah CREATE DATABASE karena table berada dalam suatu
database. Bisa juga dibilang bahwa di dalam sebuah database terdapat banyak
table. Jika database-nya belum ada, maka kita tidak bisa membuat table
bukan..?? Mari kita lanjutkan belajarnya.
CREATE DATABASE
Untuk perintah CREATE DATABASE tidaklah
sesulit perintah CREATE TABLE. Aturan penamaan sebuah database sama seperti
aturan penamaan sebuah variabel, dimana secara umum nama database boleh terdiri
dari huruf, angka dan underscore (_). Jika database yang akan dibuat sudah ada,
maka akan muncul pesan error. Bentuk umumnya adalah sebagai berikut
CREATE DATABASE nama_database;
Misalkan kita ingin membuat database dengan nama “universitas
Palangkaraya”, contoh perintahnya adalah sebagai berikut :
CREATE DATABASE universitas_palangkaraya;
Setelah pembuatan database, kita coba cek apakah benar sudah ada atau
belum. Perintahnya adalah :
SHOW DATABASES;
Maka akan muncul semua databases yang ada.
CREATE TABLE
Database sudah dibuat. Saatnya
kita membuat table-table yang berada di dalam database. Jadi kita harus memilih
salah satu database yang ada. Caranya adalah dengan perintah USE nama_database.
Tadi kita sudah membuat database dengan nama universitas_palangkaraya. Maka
perintah untuk menggunakan database tersebut adalah :uk umumnya adalah sebagai
berikut :
USE universitas_palangkaraya;
Untuk melihat daftar table yang ada dalam database tersebut, bisa
menggunakan perintah yang mirip dengan SHOW DATABASES;. Syntax-nya adalah
sebagai berikut ini :
SHOW TABLES;
Bentuk umum perintah CREATE TABLES adalah sebagai
berikut :
CREATE TABLE nama_tabel (
kolom1 tipe_data(panjang),kolom2 tipe_data(panjang),...kolom_n tipe_data(panjang),
PRIMARY KEY (nama_kolom)
);
Penamaan kolom/field mempunyai aturan yang sama dengan penamaan database,
yaitu secara umum nama database boleh terdiri dari huruf, angka dan underscore
(_). Sedangkan jenis/tipe data untuk sebuah kolom sudah diposting sebelumnya,
dapat dilihat di sini. Misalkan kita ingin membuat table mahasiswa dengan
susunan seperti berikut ini :

Maka perintahnya adalah sebagai berikut :
CREATE TABLE mahasiswa (
nim int(5) NOT NULL AUTO_INCREMENT,
nama varchar(30) NOT NULL,
alamat varchar(50) NOT NULL,
nomor_tlp varchar(12) NOT NULL,
primary key (nim));
Yang perlu diingat adalah, nama lain dari kolom/coloumn dalam MySql
adalah Field. Setelah table berhasil dibuat, untuk mengetahui detail dari table
tersebut, ketik perintah DESC nama_table. Contohnya adalah sebagai berikut ini
:
DESC mahasiswa;
Demikian sedikit penjelasan saya mengenai perintah CREATE pada MySql.
Selanjutnya saya akan mencoba menjelaskan tentang
2.2 Alter
Ada saatnya dimana kita harus mengganti struktur table yang pernah kita
buat. Untungnya MySql mendukung/menyediakan perintah untuk melakukan kegiatan
tersebut. Perintahnya adalah ALTER TABLE. Penggunaanya sedikit
sulit. Mudah-mudahan penjelasan saya bisa menambah pemahaman supaya lebih mudah
untuk dipelajari. Bentuk umum perintahnya adalah sebagai berikut :
ALTER TABLE nama_tabel alter_options;
dimana :
-
ALTER TABLE
merupakan perintah dasar untuk mengubah tabel.
-
nama_tabel
merupakan nama tabel yang akan diubah strukturnya.
-
alter_options
merupakan pilihan perubahan tabel. Contoh Option yang bisa digunakan adalah
sebagai berikut:

Sekarang
saatnya kita bahas satu persatu supaya bisa paham. Sebelumnya, buatlah sebuat
table terlebih dahulu untuk percobaan.
Misal di sini kita buat table sederhana dengan nama peserta dan strukturnya sebagai berikut :
Misal di sini kita buat table sederhana dengan nama peserta dan strukturnya sebagai berikut :

Perintahnya
adalah sebagai berikut :
CREATE TABLE peserta (
NIP int(5) NOT NULL,
nama varchar(30) NOT NULL);
*sengaja tidak di beri “primary key” dan
“auto increment”
seharusnya
jika diberi perintah sebagai berikut :
DESC peserta;
maka
hasilnya adalah sebagai berikut :

Karena
perintah alter table terdapat banyak sekali variasinya, maka saya akan membahas
beberapa saja yang sering saya gunakan. Panjang banget dong..?? Betul sekali.
Tenang saja, saya sudah membuat link sehingga memudahkan untuk belajar.
2.3 Drop
Perintah
DROP biasa digunakan untuk menghapus database,table,kolom/field. Perintah DROP
juga bisa di gabungkan dengan perintah lainnya, misalnya digabungkan dengan
perintah ALTER TABLE yang nantinya akan bisa menghapus kolom atau sebuah
primary key. Untuk lebih jelasnya tentang perintah ALTER TABLE bisa dibaca di
sini.
Pada
pembahasan kali ini akan kita bahas tentang perintah DROP yang gunanya untuk
menghapus database dan table saja. Baiklah kita langsung menuju pokok acara.
Sebelumnya
kita buat dulu sebuah database dengan table di dalam database tersebut. Jika
anda bingung cara menggunakan perintah CREATE, anda bisa melihatnya di sini.
Langsung saja kepada contohnya:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> CREATE DATABASE
universitas_palangkaraya;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+-------------------------+
| Database |
+-------------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| universitas_pasti_lulus |
+-------------------------+
5 rows in set (0.00 sec)
Database
universitaas_palangkaraya sudah berhasil dibuat.
Selanjutnya
adalah membuat table di dalam database universitas_palangkaraya
mysql> use universitas_palangkaraya;
Database changed
mysql> CREATE TABLE mahasiswa (
-> nim int(5) NOT NULL AUTO_INCREMENT,
-> nama varchar(30) NOT NULL,
-> alamat varchar(50) NOT NULL,
-> nomor_tlp varchar(12) NOT NULL,
-> primary key (nim));
Query OK, 0 rows affected (0.07 sec)
mysql> show tables;
+-----------------------------------+
| Tables_in_universitas_palangkaraya
|
+-----------------------------------+
| mahasiswa |
+-----------------------------------+
1 row in set (0.00 sec)
Database
dan table sudah berhasil di buat. Selanjutnya adalah menghapus kedua hal
tersebut. Capek-capek buat database+table kok cuma dihapus..? Namanya juga
belajar. Oke kita lanjutkan menghapus kedua hal tersebut menggunakan perintah
DROP. Bentuk perintahnya adalah sebagai berikut:
DROP TABLE nama_tabel;
DROP DATABASE nama_database;
Pasti
sudah tahu bedanya kan..?? DROP TABLE nama_tabel; digunakan untuk menghapus
table, dan perintah DROP DATABASE nama_database; digunakan untuk menghapus
database. Baiklah kita lanjut menghapus database dan table yang sudah kita buat
sebelumnya.
mysql> show tables;
+-----------------------------------+
| Tables_in_universitas_palangkaraya |
+-----------------------------------+
| mahasiswa |
+-----------------------------------+
1 row in set (0.00 sec)
mysql> drop table mahasiswa;
Query OK, 0 rows affected (0.01 sec)
mysql> show tables;
Empty set (0.00 sec)
mysql> drop database
universitas_pasti_lulus;
Query OK, 0 rows affected (0.06 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test
|
+--------------------+
4 rows in set (0.00 sec)
Tabel
berada dalam sebuah database, artinya : di dalam sebuah database bisa terdapat
banyak tabel. Jadi jika kita menghapus database, maka tabel yang berada di
dalamnya akan ikut terhapus semua. Tapi jika kita menghapus table, maka
database tidak ikut terhapus.
Perintah
DROP bisa di bilang cukup berbahaya. Maka berhati-hatilah dalam menggunakan
perintah tersebut. Jangan lupa untuk melakukan Back-up sebelum anda melakukan
perintah DROP.
Mari kita pelajari
menganai pengertian field, record, table, file, data dan basis data lengkap di
artikel yang singkat ini. Pasti kamu yang sering belajar atau yang sudah
mengenal database sudah tidak asing lagi dengan istilah-istilah tersebut, untuk
kamu yang belum mengetahui definisi dari istilah tersebut, dapat kamu pelajari
atau membacanya di bawah ini untuk memahaminya.
Field adalah
kumpulan dari karakter yang membentuk satu arti, maka jika terdapat field
misalnya seperti NomerBarang atau NamaBarang, maka yang dipaparkan dalam field
tersebut harus yang berkaitan dengan nomer barang dan nama barang. Atau
definisi field yang lainnya yaitu tempat atau kolom yang terdapat dalam suatu
table untuk mengisikan nama-nama (data) field yang akan di isikan.
Record adalah
kumpulan field yang sangat lengkap, dan biasanya dihitung dalam satuan baris.
Tabel adalah merupakan kumpulan dari beberapa record dan juga field. File
adalah terdiri dari record-record yang menggambarkan dari satu kesatuan data
yang sejenis. Misalnya seperti file nama barang berisikan data tentang semua
nama barang yang ada. Data adalah kumpulan fakta atau kejadian yang digunakan
sebagai penyelesaian masalah dalam bentuk informasi. Pengertian basis data
(database) adalah basis data yang terdiri dari dua kata, yaitu kata basis dan
data. Basis dapat di artikan markas ataupun gudang, maupun tempat berkumpul.

Objek-objek
database pada yang dimaksud - pada MySQL - adalah sebagai
berikut :
- Database
- Table
- View
- Index
- Procedure (Stored Procedure)
- Function
- Trigger
Daftar Perintah DDL pada MySQL
Berikut adalah contoh perintah DDL
yang digunakan pada MySQL.
·
Pembuatan (CREATE)
o CREATE DATABASE
o CREATE FUNCTION
o CREATE TABLE
- Perubahan (ALTER & RENAME)
- ALTER DATABASE
- ALTER FUNCTION
- ALTER PROCEDURE
- ALTER TABLE
- ALTER VIEW
- RENAME TABLE
- Penghapusan (DROP)
- DROP DATABASE
- DROP FUNCTION
- DROP INDEX
- DROP PROCEDURE
- DROP TABLE
- DROP TRIGGER
- DROP VIEW
Tabel Matrix Perintah DDL MySQL
OBJECT
|
CREATE
|
ALTER
|
DROP
|
RENAME
|
DATABASE
|
Yes
|
Yes
|
Yes
|
|
FUNCTION
|
Yes
|
Yes
|
Yes
|
|
INDEX
|
Yes
|
Yes
|
||
PROCEDURE
|
Yes
|
Yes
|
Yes
|
|
TABLE
|
Yes
|
Yes
|
Yes
|
Yes
|
TRIGGER
|
Yes
|
Yes
|
||
VIEW
|
Yes
|
Yes
|
Yes
|
BAB II
LANGKAH KERJA
2.1
Pelajari bagian ‘BELAJAR DARI CONTOH’ dan jelaskan !
2.2
Buatlah database yang diberikan nama sesuai NIM anda
masing-masing yang memiliki struktur sebagai berikut :
|
|
|
1..1 1..n
3. Ubah struktur
penjualan menjadi :
|
|
|
6. Renamae tabel
dtl_penjualan menjadi detail_penjualan.
BAB III
PEMBAHASAN
3.1 Membuat database dan tabel
Untuk membuat database dan
tabel baru kita menggunakan perintah DDL yaitu “Create”.

Database yang dibuat adalah database
dengan nama “dbc114107”. Kemudian tulislah pada query :
create
table album (
kode_album
varchar(5),
judul
varchar(50),
penyanyi
varchar(50),
harga
decimal,
stok
smallint
);
Penjelasan sintax program :
|
Create table ini merupakan perintah
untuk membuat table album baru. Dimana saat table ini di buat, maka table ini
akan masuk dalam sebuah data base.
Untuk membuat tabel dari
album dengan field :
Karena disini harus ada
primary key pada kode_album dengan menuliskan pada query :
alter table album add primary key pk_album
(kode_album);
Setelah tabel album selesai dikerjakan dan dibuat tabelnya, buatlah lagi
tabel penjualan. Buatlah tabelnya dengan menuliskan pada query :
create table penjualan (
kode_penjualan varchar(20),
tanggal datetime
);
Serta buatlah primary key pada kode_penjualan :
alter table penjualan add primary key
pk_penjualan (kode_penjualan);
Kemudian tabel album dan
tabel penjualan dibuat agar memiliki relasi antara keduanya dengan membuat
tabel dtl_penjualan dengan field-field yang saling berhubungan dengan tabel
induknya.
create table dtl_penjualan (
kode_penjualan varchar(20),
kode_album varchar(5),
jumlah smallint,
harga decimal
);
Setelah itu agar memiliki
relasi dengan tabel-tabel yang ada dalam database tersebut pemberian primary
key harus sama dengan variable yang ada pada tabel album dan tabel penjualan.
Untuk itulah dengan menggunakan foreign key (fk) pada primary key yang
digunakan.
alter table dtl_penjualan add foreign key
fk_kode_album (kode_album) references album
(kode_album);
pada bagian ini untuk
mengubah primary key “kode_album” menjadi foreign key dengan mereferensi pada
“kode_album” dari tabel album.
alter table dtl_penjualan add foreign key
fk_kode_penjualan (kode_penjualan) references penjualan
(kode_penjualan);
pada bagian ini untuk
mengubah primary key “kode_penjualan” menjadi foreign key dengan mereferensi
pada “kode_penjualan” dari tabel penjualan
![]() |
| Tabel penjualan |
1. Mengubah struktur penjualan
Untuk mengubah struktur
penjualan kita menggunakan perintah DDL yaitu “Alter” untuk menambahkan field pada tabel dari database.
alter table penjualan
add total decimal after tanggal;

2. Mengubah struktur album
Untuk mengubah struktur
penjualan kita menggunakan perintah DDL yaitu “Alter” untuk menambahkan field pada tabel dari database. Selain itu
juga untuk meletakkan field baru dibagian lain selain field yang ada kita
gunakan “after” pada query yang kita
tuliskan.
alter table album
add sampul blob after penyanyi;

3. Mengubah struktur dtl_penjualan
Untuk mengubah struktur
penjualan kita menggunakan perintah DDL yaitu “Alter” untuk menambahkan field pada tabel dari database.
alter table dtl_penjualan
change jumlah qty smallint;

4. Rename tabel dtl_penjualan menjadi
detail_penjualan
Untuk mengganti nama sebuah
tabel kita hanya menggunakan perintah DDL yaitu “Rename” pada query.
rename table dtl_penjualan to
detail_penjualan;
maka nama tabel akan
berubah, dapat kita lihat dari list tabel pada database tersebut:
BAB IV
KESIMPULAN
Dalam perintah DDL ini
merupakan bahasa sederhana dari bahasa pemrograman MySQL untuk membuat database
awal serta membuat dan mengedit field tabel yang akan digunakan sebelum
menggunakan perintah dari bahasa DML. Karena itulah DDL ini merupakan langkah
awal yang penting dalam membuat database awal sebelum berlanjut ke langkah
selanjutnya.
“Create” perintah untuk membuat database atau tabel baru pada database
yang ada. “Alter” perintah untuk
mengubah atau menambahkan field ataupun primary key pada tabel. “Rename” perintah untuk mengubah nama
tabel tetapi tidak bisa untuk mengubah nama database. “Drop” untuk menghapus tabel ataupun juga database.
BAB V
DAFTAR PUSTAKA
Dosen
Teknik Informatika, 2012. Modul Pratikum
Basis Data I, Palangka Raya : Jurusan Teknik Informatika Fakultas Teknik
Universitas Palangka Raya.
Kenzie
Alvano, Sarjono. Data Definition Language
(DDL) dan Data Manipulation Language (DML), http://sarjonomudo.blogspot.co.id/2013/07/data-definition-language-ddl-dan-data.html
(diakses, pada hari Jumat 22 April pukul 20.15 WIB)
BAB VI
LAMPIRAN








Komentar
Posting Komentar
Jangan malu untuk Melakukan yg Terbaik.