praktikum database
DESCRIPTION
Praktikum database modul 2TRANSCRIPT
MODUL 2
DDL (Data Definition Language)
MAKSUD DAN TUJUAN
Agar mahasiswa memahami cara, manipulasi basis data dengan perintah DDL
MATERI
Membuat, mengubah dan menghapus struktur dan definisi metadata dari objek-
objek database.
DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan
atribut-atribut basis data, tabel, atribut (kolom), batasan-batasan terhadap suatu
atribut, serta hubungan antar tabel. Yang termasuk dalam kelompok DDL ini
adalah CREATE, ALTER, dan DROP.
a. Membuat Database
Syntax : CREATE DATABASE namadatabase;
namadatabase tidak boleh mengandung spasi dan tidak boleh
memiliki nama yang sama antar database. Berikut ini perintah untuk
membuat database dengan nama rental :
mysql> create database rental;
Syntax tambahan : untuk menampilkan daftar nama database yang ada
pada mysql menggunakan perintah :
Mysql> SHOW DATABASES;
Praktikum Basis Data Menggunakan MYSQL Page 10
b. Menghapus Database
Syntax : DROP DATABASE namadatabase;
Database yang akan dihapus sesuai dengan namadatabase. Berikut
ini perintah untuk menghapus database dengan nama rental :
Mysql> drop database rental;
c. Membuat Tabel
Sebelum membuat suatu tabel, terlebih dahulu harus memilih salah
satu database sebagai database aktif yang akan digunakan untuk
menyimpan tabel-tabel dengan menggunakan syntax : USE
namadatabase;
Berikut ini perintah untuk menggunakan database dengan nama rental :
Mysql> use rental;
Praktikum Basis Data Menggunakan MYSQL Page 11
Syntax membuat table :
CREATE TABLE namatabel2
(
Field1 TipeData1,
Field2 TipeData2
);
namatabel tidak boleh mengandung spasi (space). Field1 dan
TipeData1 merupakan nama kolom pertama dan tipe data untuk
kolom pertama. Jika ingin membuat tabel dengan kolom lebih dari
satu, maka setelah pendefinisian tipe data sebelumnya diberikan tanda
koma (,). Berikut ini perintah untuk membuat tabel dengan nama nama
jenisfilm :
mysql> create table jenisfilm (
jenis char(6),
harga int);
Syntax tambahan :
Untuk menampilkan daftar nama tabel yang ada pada database yang
sedang aktif/digunakan (dalam hal ini database rental) :
Mysql> SHOW TABLES;
Praktikum Basis Data Menggunakan MYSQL Page 12
Untuk menampilkan deskripsi tabel (dalam hal ini jenisfilm) syntaxnya
adalah :
DESC namatabel;
Mysql> desc jenisfilm;
d. Menghapus Tabel
Syntax : DROP TABLE namatabel;
Tabel yang akan dihapus sesuai dengan namatabel, berikut ini
perintah untuk menghapus tabel dengan nama jenisfilm :
Mysql> drop table jenisfilm;
e. Mendefinisikan null/not null
Syntax :
CREATE TABLE namatabel
(
Field1 TipeData1 NOT NULL,
Praktikum Basis Data Menggunakan MYSQL Page 13
Field2 TipeData2
);
Contoh :
mysql> create table jenisfilm(
Jenis char(6) not null,
Harga int);
f. Mendefinisikan Nilai Default
Nilai default adalah nilai yang otomatis diberikan oleh sistem untuk
suatu kolom ketika ada penambahan baris baru, sementara nilai pada
kolom tersebut tidak diisi oleh pengguna. Syntax :
CREATE TABLE namatabel
(
Field1 TipeData1,
Field2 TipeData2 DEFAULT nilai
);
nilai adalah nilai default dari kolom tersebut.
mysql> create table jenisfilm1(
Jenis char(6),
Harga int default 0);
Praktikum Basis Data Menggunakan MYSQL Page 14
g. Mendefinisikan Primary Key Pada Tabel
Terdapat tiga cara untuk mendefinisikan primary key. Berikut ini
adalah Syntax mendefinisikan primary key untuk Field1
CREATE TABLE namatabel
(
Field1 TipeData1 NOT NULL PRIMARY KEY,
Field2 TipeData2
);
Atau
CREATE TABLE namatabel
(
Field1 TipeData1,
Field2 TipeData2,
PRIMARY KEY(Field1)
);
atau
ALTER TABLE namatabel ADD CONSTRAINT
namaconstraint PRIMARY KEY (namakolom);
Berikut ini perintah untuk membuat tabel jenisfilm dengan kolom
kode tipe datanya varchar(6), harga tipe datanya int dengan
mendefinisikan nilai not null dan primary key untuk kolom jenis serta
nilai default untuk kolom harga :
Mysql> create table jenisfilm (
Praktikum Basis Data Menggunakan MYSQL Page 15
jenis char(6) not null primary key,
harga int default 0);
atau
mysql> create table jenisfilm (
jenis char(6) not null,
harga int default 0,
primary key (jenis));
atau
mysql> create table jenisfilm (
jenis char(6) not null,
harga int default 0);
Mysql> alter table jenisfilm add constraint pk
primary key(jenis);
h. Menghapus Primary Key Pada Tabel
Perintah :
Cara 1 : Jika primary key dibuat dengan menggunakan alter table :
ALTER TABLE namatabel DROP CONSTRAINT
namaconstraint;
Cara 2 : Jika primary key dibuat melalui create table :
ALTER TABLE namatabel DROP PRIMARY KEY;
Berikut ini perintah yang digunakan untuk menghapus primary key
pada tabel jenisfilm :
Mysql> alter table jenisfilm drop primary key;
Praktikum Basis Data Menggunakan MYSQL Page 16
i. Menambah Kolom Baru Pada Tabel
Syntax :
ALTER TABLE namatabel ADD fieldbaru tipe;
namatabel adalah nama tabel yang akan ditambah fieldnya.
Fieldbaru adalah nama kolom yang akan ditambahkan, tipe
adalah tipe data dari kolom yang akan ditambahkan. Berikut ini
perintah untuk menambah kolom keterangan dengan tipe data
varchar(25) :
Mysql> alter table jenisfilm add keterangan
varchar(25);
j. Mengubah Tipe Data atau Lebar Kolom Pada Tabel
Perintah :
ALTER TABLE namatabel MODIFY COLUMN field tipe
namatabel adalah nama tabel yang akan diubah tipe data atau lebar
kolomnya. Field adalah kolom yang akan diubah tipe data atau
lebarnya. Tipe adalah tipe data baru atau tipe data lama dengan lebar
kolom yang berbeda. Berikut ini perintah untuk mengubah tipe data
untuk kolom keterangan dengan char(20) :
Praktikum Basis Data Menggunakan MYSQL Page 17
Mysql> alter table jenisfilm modify column
keterangan char(20);
k. Mengubah Nama Kolom
Syntax :
ALTER TABLE namatabel CHANGE COLUMN
namalamakolom namabarukolom tipedatanya;
namatabel adalah nama tabel yang akan diubah nama kolomnya,
namalamakolom adalah kolom yang akan diganti namanya,
namabarukolom adalah nama baru kolom, tipedatanya adalah
tipe data dari kolom tersebut. Berikut ini perintah untuk mengubah
nama kolom keterangan menjadi ket :
Mysql> alter table jenisfilm change column
keterangan ket char(20);
l. Menghapus Kolom Pada Tabel
Syntax :
ALTER TABLE namatabel DROP COLUMN namakolom;
Berikut ini perintah untuk menghapus kolom ket pada tabel jenisfilm :
Mysql> alter table jenisfilm drop ket;
Praktikum Basis Data Menggunakan MYSQL Page 18
m. Mendefinisikan Foreign Key Pada Tabel
Untuk mendefinisikan foreign key, maka harus dipastikan bahwa tabel
dan atribut yang dirujuk (tabel induk dari foreign key) sudah
didefinisikan terlebih dahulu. Syntax :
CREATE TABLE namatabel
(
Field1 TipeData1,
Field2 TipeData2,
FOREIGN KEY (Field2) REFERENCES namatabelinduk
(namakolominduk)ON UPDATE CASCADE
ON DELETE NO ACTION
)
atau
ALTER TABLE namatabel ADD CONSTRAINT
namaconstraint FOREIGN KEY (namakolom)
REFERENCES namatabelinduk (namakolominduk) ON
UPDATE CASCADE ON DELETE NO ACTION;
Berikut ini perintah untuk membuat tabel film beserta kolom-
kolomnya :
Mysql> create table film(
Kode_film char(3) not null primary key,
Jenis char(6) not null,
Judul varchar(30),
Jml_keping int,
Jml_film int,
Praktikum Basis Data Menggunakan MYSQL Page 19
Foreign key(jenis) references
jenisfilm(jenis) on update cascade
on delete no action);
atau
mysql> create table film (
kode_film char(3) not null primary key,
jenis char(6) not null,
judul varchar(30),
jml_keping int,
jml_film int);
mysql> alter table film add constraint fk
foreign key (jenis) references jenisfilm(jenis)
on update cascade on delete no action;
n. Menghapus Foreign Key
Perintah :
ALTER TABLE namatabel DROP FOREIGN KEY
namaconstraint; Berikut ini perintah untuk menghapus foreign
key pada tabel film :
Mysql> alter table film drop foreign key fk;
Praktikum Basis Data Menggunakan MYSQL Page 20
Tugas
Praktikum Basis Data Menggunakan MYSQL Page 21
Praktikum Basis Data Menggunakan MYSQL Page 22
Praktikum Basis Data Menggunakan MYSQL Page 23
Praktikum Basis Data Menggunakan MYSQL Page 24