BAB I
PENGENALAN DAN INSTALASI MYSQL
A. TUJUAN
▪ Mahasiswa memahami cara instalasi MySQL.
▪ Mahasiswa memahami cara konfigurasi MySQL
B. LANDASAN TEORI
1. MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis data
SQL atau DBMS yang multi-thread, multi-user, dengan sekitar 6 juta
instalasi seluruh dunia. MySQL AB membuat MySQL tersedia sebagai
perangkat lunak gratis di bawah lisensi GNU General Public License
(GPL), tetapi mereka juga menjual di bawah lisensi komersial untuk
kasus-kasus di mana penggunaannya tidak cocok dengan penggunaan
GPL.
MySQL adalah sebuah implementasi dari sistem manajemen basis data
relational (RDBMS) yang didistribusikan secara gratis. Setiap pengguna
dapat secara bebas menggunakan MySQL, namun dengan batasan
bahwa perangkat lunak tersebut tidak boleh dijadikan produk turunan
yang bersifat komersial. MySQL sebenarnya merupakan turunan salah
satu konsep utama dalam basis data yang telah ada sebelumnya. SQL
(Structured Query Language) merupakan sebuah konsep pengoperasian
basis data, terutama untuk pemilihan atau seleksi dan pemasukan data,
yang memungkinkan pengoperasian data dikerjakan dengan mudah
secara otomatis.
Saat ini versi open source MySQL yang dapat didownload dan
digunakan secara gratis adalah MySQL Community Server 5.529. Versi
ini merupakan versi MySQL yang sering digunakan dalam
pengembangan website. Biasanya dalam paket apache server XAMPP
di Windows terdapat MySQL. Pada XAMPP, MySQL dikendalikan secara
administratif menggunakan Bahasa PHP yang kemudian user interface
nya dalam bentuk phpMyAdmin.
2. Instalasi MySQL pada XAMPP
Ikuti langkah-langkah berikut ini untuk melakukan instalasi XAMPP.
Untuk mendapatkan installer XAMPP anda dapat mengakses ke
halaman https://www.apachefriends.org/download.html.
Langkah 1.
Non-aktifkan anti-virus karena dapat menyebabkan beberapa komponen
XAMPP yang tidak bias di install dengan lancar.
Langkah 2.
Untuk pengguna Windows 7 atau Windows 8 anda akan melihat jendela
pop up, peringatan tentang User Account Control (UAC) yang aktif pada
sistem. Klik “OK” untuk melanjutkan installasi.
Langkah 3.
Mulai proses instalasi dengan klik dua kali pada installer XAMPP. Klik
“Next” setelah splash screen.
FABRIYAN FANDI
Langkah 4.
Di sini, kita dapat memilih komponen apa saja yang ingin kita install.
Pilih pilihan default dan pilih “Next”.
Langkah 5.
Pilih folder sebagai tempat XAMPP akan diinstal, di folder ini kita akan
menyimpan semua file aplikasi web kita, jadi pastikan untuk memilih drive
yang masih memiliki banyak ruang (space).
Langkah 6.
Layar berikutnya adalah promo untuk Bitnami, sebuah took aplikasi untuk
server perangkat lunak. Hapus centang pada kotak “Learn mo re about
Bitnami for XAMPP”.AN
Langkah 7.
Sekarang Setup sudah siap untuk menginstall XAMPP. Klik Next dan
tunggu instaler untuk membongkar paket-nya dan memasang komponen
yang dipilih. Mungkin memakan waktu beberapa menit. Nanti mungkin kita
akan diminta untuk menyetujui akses Firewall untuk komponen tertentu
(seperti Apache) selama proses instalasi.
Langkah 8.
Proses Install sudah selesai! Pilih Kotak centang „Do you want to start the
Control Panel now?‟ untuk membuka panel kontrol XAMPP.
C. LANGKAH-LANGKAH PRAKTIKUM
✓ Mengakses PhpMyAdmin
Langkah 1.
Buka XAMPP Control Panel.
BRIYAN FANDI DWI
Langkah 2.
Jalankan Apache Server dan MySQL Server dengan menekan tombol
“Start”. Tunggu hingga muncul warna hijau pada nama Module.
Langkah 3.
Buka web browser anda dan ketikan http://localhost/phpmyadmin/.
Langkah 4.
Pada halaman PhpMyAdmin ini kita dapat melakukan pembangunan basis
data dan juga melakukan manipulasi isi basis data dengan MySQL.
PhpMyAdmin merupakan halaman GUI administratif MySQL server yang
saat ini paling banyak dipakai dalam pengembangan aplikasi berbasis
web.
✓ Mengakses MySQL lewat command prompt
Langkah 1.
Pastikan bahwa server MySQL telah berjalan.
Langkah 2.
Buka command prompt dan ketik „cd\‟ dan tekan “Enter”. Sehingga anda
akan berada di direktori (C:\)I
Langkah 3.
Setelah itu arahkan ke folder C:\xampp\mysql\bin, caranya ketik „cd
C:\xampp\mysql\bin‟ (tanpa „ „) kemudian tekan tomb ol Enter.
Langkah 4.
Setelah berada di dalam folder C:\xampp\mysql\bin, baru anda dapat
mengakses mysql. ketik : „mysql -u root -p‟ (tanpa „ „) kemudian tekan
tombol Enter. Masukkan password (jika ada) kemudian klik tombol Enter
lagi (seara default tidak ada password untuk root).
Langkah 5.
Setelah tampilan seperti di Gambar 1.15 berarti anda telah berhasil masuk
ke MySQL sebagai root user. Untuk melihat database yang ada pada
server anda dapat mengetikan „show databases;‟. Jangan lupa untuk
selalu mengakhiri command dengan „;‟.
FABRIYAN FANDI DWI
D. TUGAS
➢ Jelaskan mengapa dibutuhkan data!
➢ Jelaskan manfaat database dan contohnya!
➢ Untuk menentukan jenis database yang digunakan, apa yang menjadi
acuan dalam pemilihan database tersebut?
➢ Jelaskan istilah atau terminology yang digunakan dalam Database
(database,table, field, record)
➢ Bandingkan perbedaan pengolahan data secara manual dengan
mengunakan system database.
➢ Mengapa dibutuhkan DBMS?
➢ Pada percobaan diatas ada beberapa field yang tipe data dan
ukurannya berbeda. Jelaskan!
BAB II
PERANCANGAN BASIS DATA
A. TUJUAN
▪ Mahasiswa memahami makna entitas, atribut, dan relasi.
▪ Mahasiswa memahami tahap-tahap normalisasi.
▪ Mahasiswa mampu merancang basis data melalui tahap-tahap
perancangannya.
B. LANDASAN TEORI
1. Entitas
Entity adalah suatu obyek yang dapat dikenali dari obyek yang lain.
Contoh : seseorang yang khusus, perusahaan, peristiwa, tanaman dan
lain-lain. Entity mempunyai atribut, contoh : seseorang mempunyai nama
dan alamat. Kumpulan entity adalah suatu kumpulan entity dengan tipe
yang sama yang berbagi properti yang sama pula. Contoh : kumpulan
orang, perusahaan, tanaman, tempat liburan dan lain-lain.
2. Atribut
Entity ditampilkan oleh sekumpulan attribute, yang mana properti
deskriptifnya dikuasai oleh seluruh anggota dalam kumpulan entity.
Tipe attribute:
a) Simple (sederhana) dan composite (gabungan) attributes.
b) Single-valued (satu-fungsi ) dan multi-valued (multi-fungsi )
attributes. Contoh : atribut multi-fungsi : nomor telepon
c) Derived (turunan) attributes : dapat diperhitungkan dari atribut lain
Contoh : umur, tanggal kelahiran.
3. Relasi
Relationship adalah kesesuaian antar beberapa entity. Relationship
set adalah hubungan matematika antara entity n>2, tiap bagiannya
diambil dari satuan entity {(e1, e2, … en) | e1 E1, e2 E2, …, en
En} dimana (e1, e2, …, en) adalah relationship. Attribute dapat
merupakan properti dari relationship set.
Sebagai contoh: depositor merupakan relationship set antara entity
sets customer dan account mungkin beratribut access-date. Mengacu
pada jumlah entity sets yang terlibat dalam relationship set.
Relationship sets yang melibatkan dua entity sets adalah binary (atau
tingkat dua).
Umumnya, hampir semua relationship sets dalam sistem database
adalah binary. Relationship sets mungkin melibatkan lebih dari dua
entity sets. Contoh: misal seorang pegawai bank bekerja
(bertanggung jawab) dalam beberapa cabang, dengan tugas yang
berlainan dalam setiap cabang yang berlainan pula.
Maka disini terdapat relationship set ternary antara entity sets pegawai
(employee), tugas (job) dan cabang (branch). Relationships antara
lebih dari dua entity sets sangat jarang.
4. Kardinalitas
Mengungkap jumlah entitas ke entitas yang lain bias dihubungkan
melalui relationship set. Cardinalitas pemetaan paling banyak digunakan
dalam menggambarkan relationship sets biner. Untuk relationship set
biner cardinalitas pemetaan harus merupakan salah satu dari tipe
berikut:
a) One to one (satu ke satu)
b) One to many (satu ke banyak)
c) Many to one (banyak ke satu)
d) Many to many (banyak ke banyak)
One to one One to many
Catatan : Beberapa elemen di A dan B mungkin tidak dipetakan ke elemen
manapun di himpunan lain.
Many to one Many to many
Catatan : Beberapa elemen di A dan B mungkin tidak dipetakan pada
elemen mana pun di himpunan lain. Mapping Cardinalities mempengaruhi
ER Design
5. Entity Relationship Diagram
Mencerminkan model database: hubungan antara entities (tabel-tabel)
dan relationships (hubungan-hubungan) di antara entities tersebut.
Contoh ERD:
▪ Rectangles melambangkan set-set entitas .
▪ Diamonds melambangkan set-set hubungan (relationship) .
▪ Lines menghubungkan atribut dengan set-set entitas serta set-set
entitas dengan set-set hubungan (relationship).
▪ Ellipses mewakili attributes
▪ Double ellipses mewakili atribut multivalued .
▪ Dashed ellipses menunjukkan sifat yang didapat..
▪ Underline menunjukkan sifat kunci pokok (Primary key)
6. Aturan untuk Rancangan Database
a) Tiap baris harus berdiri sendiri (independent): tidak tergantung
baris-baris yang lain, dan urutan baris tidak mempengaruhi model
database.
b) Tiap baris harus unik: tidak boleh ada 2 atau lebih baris yang
sama persis.
c) Kolom harus berdiri sendiri (independent): tidak tergantung kolom-
kolom yang lain, dan urutan kolom tidak mempengaruhi model
database.
d) Nilai tiap kolom harus berupa satu kesatuan: tidak berupa sebuah
daftar.
7. Tahap Pembuatan Database
Tahap 1 : Tentukan Entitas
Tentukan entities (object-object dasar) yang perlu ada di database.
Sifat-sifat entity:
▪ Signifikan: memang perlu disimpan di database
▪ Umum: tidak menunjuk pada sesuatu yang khusus
▪ Fundamental: dapat berdiri sendiri sebagai entity yang dasar dan
independent
▪ Unitary: merupakan satu kesatuan yang tidak dapat dipecah lagi
Tahap 2 : Tentukan Atribut
Tentukan attributes (sifat-sifat) masing-masing entity sesuai kebutuhan
database:
▪ Tentukan sifat-sifat (fields atau kolom) yang dimiliki tiap entity, serta
tipe datanya.
▪ Attribute yang sesuai harus:
a) Signifikan: memang penting dan perlu dicatat di dalam database
b) Bersifat langsung (direct), bukan derived. Contoh attribute direct:
tanggal_lahir. Contoh attribute derived: umur
▪ Tentukan attribute yang menjadi Primary Key untuk entity yang
bersangkutan.
▪ Jika satu attribute tidak cukup, gabungan beberapa attribute bisa
menjadi Composite Primary Key.
▪ Jika Composite Primary Key banyak (lebih dari 3 attribute), sebaiknya
menambahkan attribute buatan yang menjadi Primary Key yang
tunggal.
Tahap 3 : Tentukan Relasi
▪ Tentukan relationships (hubungan-hubungan) di antara entities
tersebut :
▪ Tentukan jenis hubungan di antara entity yang satu dengan entities
yang lain.
Macam hubungan ada 3:
a) One-to-one (1:1)
b) One-to-many (1:n)
c) Many-to-many (m:n)
▪ Dalam membentuk hubungan di antara 2 entities, tentukan attribute
mana yang digunakan untuk menghubungkan kedua entities tersebut.
▪ Tentukan entity mana yang menjadi tabel utama, dan entity mana
yang menjadi tabel kedua.
▪ Attribute (dari tabel utama) yang menghubungkannya dengan tabel
kedua menjadi Foreign Key di tabel kedua.
Tahap 4 : Pembuatan ERD
▪ Buat Entity Relationship Diagram (ERD) berdasarkan hasil dari Tahap
1- 3.
▪ Ada berbagai macam notasi untuk pembuatan ERD.
▪ Anda bisa menggunakan software khusus untuk menggambar ERD.
Tahap 5 : Normalisasi Basis Data
Tahap 6 : Implementasi Basis Data
C. ALAT DAN BAHAN
▪ Perangkat komputer dengan OS Windows 7.
▪ Modul Praktikum
D. LANGKAH-LANGKAH PRAKTIKUM
Rancanglah basis data untuk menyelesaikan permasalahan berikut ini:
Suatu perusahaan software diminta membuatkan basis data yang akan
menangani data-data perbankan. Data-data yang akan ditanganinya
adalah: data pribadi mengenai nasabah, data account deposit yang dimiliki
oleh nasabah, cabang bank di mana nasabah membuka depositnya, dan
data transaksi yang dilakukan nasabah. Nasabah boleh mempunyai lebih
dari satu account deposit, dan satu account deposit boleh dimiliki oleh
lebih dari satu nasabah sekaligus (joint account).
Langkah-langkah perancangan database perbankan:
1. Menentukan entities (object-object dasar) yang perlu ada di
database.
nasabah: menyimpan semua data pribadi semua nasabah
rekening: menyimpan informasi semua rekening yang telah dibuka
cabang_bank: menyimpan informasi tentang semua cabang bank
transaksi: menyimpan informasi tentang semua transaksi yang
telah terjadi
2. Menentukan attributes (sifat-sifat) masing-masing entity sesuai
kebutuhan database
nasabah
▪ id_nasabah: nomor id untuk nasabah (integer) PK
▪ nama_nasabah: nama lengkap nasabah (varchar(45))
▪ alamat_nasabah: alamat lengkap nasabah
(varchar(255))
rekening
▪ no_rekening: nomor rekening (integer) PK
▪ pin : personal identification number (varchar(10)) o saldo:
jumlah saldo rekening dalam Rp (integer)
cabang_bank
▪ kode_cabang: kode untuk cabang bank (varchar(10)) PK
o nama_cabang: nama lengkap cabang bank (varchar(20))
▪ alamat_cabang: alamat lengkap cabang bank (varchar(255))
transaksi
▪ no_transaksi: nomor transaksi (integer) PK
▪ jenis_transaksi: kredit atau debit (varchar(10)) o tanggal:
tanggal terjadinya transaksi (date)
▪ jumlah: besarnya transaksi dalam Rp (integer)
3. Menetukan relationship (hubungan) antar entitas
nasabah rekening cabang_bank transaksi
nasabah - m:n - 1:n
rekening - n:1 1:n
cabang_bank - -
transaksi -
nasabah memiliki rekening:
▪ Tabel utama: nasabah, rekening
▪ Tabel kedua: nasabah_has_rekening o Relationship: Many-to-
many (m:n)
▪ Attribute penghubung: id_nasabah, no_rekening (FK id_nasabah,
no_rekening di nasabah_has_rekening)
nasabah melakukan transaksi:
▪ Tabel utama: nasabah
▪ Tabel kedua: transaksi
▪ Relationship: One-to-many (1:n)
▪ Attribute penghubung: id_nasabah (FK id_nasabah di transaksi)
cabang_bank menangani rekening:
▪ Tabel utama: cabang_bank
▪ Tabel kedua: rekening
▪ Relationship: One-to-many (1:n)
▪ Attribute penghubung: kode_cabang (FK kode_cabang di
rekening)
rekening terlibat dalam transaksi:
▪ Tabel utama: rekening
▪ Tabel kedua: transaksi
▪ Relationship: One-to-many (1:n)
▪ Attribute penghubung: no_rekening (FK no_rekening di transaksi)
4. Menggambar ERD
E. TUGAS
➢ Buatlah rancangan sebuah database untuk menangani data-data
kuliah. Data-data yang akan ditanganinya adalah: data pribadi
mengenai mahasiswa, data pribadi mengenai dosen, data mata kuliah
dan data ruang kelas. Mahasiswa boleh mengambil lebih dari satu
mata kuliah, dan satu mata kuliah boleh diambil oleh lebih dari satu
mahasiswa sekaligus (joint account). Buatlah ER Diagram manual
untuk kasus tersebut dari tahap 1 sampai tahap 4!
➢ Ambil contoh sembarang database (harus berbeda untuk setiap
mahasiswa). Buatlah rancangan ER Diagram manual database
tersebut dari tahap 1 sampai tahap 4, dengan ketentuan database
minimal mengandung 4 buah entitas.
BAB III
PEMBUATAN ERD MENGGUNAKAN DBDESIGNER
A. TUJUAN
▪ Mahasiswa mampu merancang basis data melalui tahap-tahap
perancangannya.
▪ Mahasiswa mampu mewujudkan hasil perancangan basis data ke
dalam diagram E-R menggunakan DBDesigner.
B. LANDASAN TEORI
▪ Landasan teori pada modul Bab 2
C. ALAT DAN BAHAN
▪ Komputer dengan sistem operasi Windows XP
▪ Program aplikasi DBDesigner
▪ Modul Praktikum Sistem Berkas dan Basis Data
D. LANGKAH-LANGKAH PRAKTIKUM
1. Jalankan program aplikasi DB Designer (Disesuaikan)
2. Klik button new table kemudian klik pada area kerja sehingga
akan menghasilkan tabel baru.
3. Double klik pada tabel baru untuk membuka tabel editor, ganti nama
pada table name dengan nama nasabah, kemudian isikan atribut tabel
dengan data sperti pada langkah nomor 2 sebagai berikut :
Column Name Data Type
id_nasabah Integer
nama_nasabah Varchar(45)
alamat_nasabah Varchar(255)
4. Klik pada column name id_nasabah untuk atur id_nasabah menjadi
primary key sehingga berubah menjadi
5. Klik untuk menutup table editor sehingga tabel nasabah menjadi :
6. Lakukan langkah b sampai e untuk membuat tabel rekening,
cabang_bank dan transaksi.
7. Setelah semua tabel dibuat, hubungkan setiap tabel dengan tabel lain
dengan button sebagai berikut :
Keterangan : klik salah satu button kemudian klik tabel yang akan
dihubungkan.
8. Ubah nama relationship dengan membuka relationship editor,
sehingga setelah selesai hasil akhir manjadi seperti berikut
E. TUGAS
➢ Dari tugas pada modul 3 soal nomor 1 dan 2, buatlah rancangan basis
data
BAB IV
DATADEFINITIONLANGUAGE
A. TUJUAN
▪ Mahasiswa mampu membuat struktur tabel-tabel basis data
berdasarkan perancangan di modul 3 dan mengimplementasikan
tabel-tabel tersebut di basis data.
B. LANDASAN TEORI
Basis data dapat diimplementasikan berdasarkan E-R diagram yang
telah dibuat. Implementasi database bisa:
1. Secara manual (dengan perintah SQL „CREATE TABLE‟)
2. Secara semi-manual dengan bantuan client berbasis GUI (MySQL
Front, PgAccess, phpPgAdmin, dst.)
3. Secara otomatis dengan CASE Tools (DBDesigner)
Macam Relationships :
1. One-to-One : menggunakan notasi 1:1
a) Satu record di entity pertama berhubungan dengan hanya satu
record di entity kedua, dan demikian pula sebaliknya.
b) Entity mana saja bisa menjadi tabel utama, sesuai dengan
situasi/kebutuhan/analisis.
c) Primary Key (PK) dari tabel utama menjadi Foreign Key (FK) di
tabel kedua.
2. One-to-Many (atau Many-to-One) : menggunakan notasi 1:n
a) Jika A terhadap B mempunyai one-to-many relationship (atau B
terhadap A mempunyai many-to-one relationship): satu record di A
bisa berhubungan dengan banyak record di B, tetapi satu record di
B berhubungan dengan hanya satu record di A.
b) Entity di sisi One dalam hubungan One-to-Many menjadi tabel
utama, dan entity di sisi Many menjadi tabel kedua.
c) PK dari tabel utama menjadi FK di tabel kedua.
d) Di contoh sebelumnya, A menjadi tabel utama dan B menjadi
tabel kedua. Maka, ada FK di B yang merupakan PK di A.
3. Many-to-Many : menggunakan notasi m:n
a) Jika A terhadap B mempunyai many-to-many relationship: satu
record di A bisa berhubungan dengan banyak record di B, dan
demikian pula sebaliknya.
b) Dalam implementasi database, harus ada sebuah tabel perantara
di antara A dan B. A dan B menjadi tabel utama, dan tabel
perantara menjadi tabel kedua.
c) PK dari A menjadi FK di tabel perantara (tabel kedua), dan PK
dari B juga menjadi FK di tabel kedua. Gabungan semua FK di
tabel kedua menjadi Composite PK untuk tabel kedua.
d) A terhadap tabel perantara mempunyai 1:n relationship.
e) B terhadap tabel perantara juga mempunyai 1:n relationship.
Tahap Pembuatan Tabel
1. Membuat semua tabel yang paling utama (yang tidak memiliki FK).
2. Membuat semua tabel yang berhubungan langsung (atau memiliki
relationship) dengan tabel yang dibuat di tahap sebelumnya. Mulailah
secara urut dari tabel dengan jumlah FK yang paling sedikit ke yang
paling banyak.
3. Ulangi tahap 2 sampai semua tabel selesai dibuat.
Implementasi Manual
Contoh untuk menentukan Primary Key (PK):
CREATE TABLE dosen (nip INTEGER PRIMARY KEY, nama_dosen
VARCHAR(45), alamat_dosen VARCHAR(255));
CREATE TABLE ruang (kode_ruang VARCHAR(20) PRIMARY KEY,
lokasi_ruang VARCHAR(255), kapasitas_ruang INTEGER);
Contoh untuk menentukan Foreign Key (FK):
CREATE TABLE mahasiswa(nim INTEGER PRIMARY KEY, nip
INTEGER REFERENCES dosen (nip), nama_mhs VARCHAR(45),
alamat_mhs VARCHAR(255))
Contoh untuk banyak FK:
CREATE TABLE mata_kuliah(kode_mk INTEGER PRIMARY KEY, nip
INTEGER REFERENCES dosen (nip), kode_ruang VARCHAR(20)
REFERENCES ruang (kode_ruang), nama_mk VARCHAR(45),
deskripsi_mk VARCHAR(255));
Contoh untuk menentukan composite PK:
CREATE TABLE mhs_ambil_mk(nim INTEGER REFERENCES
mahasiswa (nim), kode_mk INTEGER REFERENCES
mata_kuliah(kode_mk), PRIMARY KEY(nim, kode_mk));
Referential Integrity
1. Integritas database mengacu pada hubungan antar tabel melalui
Foreign Key yang bersangkutan.
2. Pada insert, record harus dimasukkan di tabel utama dahulu,
kemudian baru di tabel kedua.
3. Pada delete, record harus dihapus di tabel kedua dahulu, kemudian
baru di tabel utama.
4. Secara default, kebanyakan DBMS yang ada akan menolak insert
atau delete yang melanggar integritas database.
Advance Create Table Option
1. Default
Untuk menentukan nilai default kolom jika tidak ada data yang di-insert
untuk kolom itu:
CREATE TABLE mahasiswa(nim integer PRIMARY KEY, nama_mhs
varchar(45), fakultas varchar(5) DEFAULT „FKI‟);
2. Not Null
Untuk membatasi agar nilai kolom tidak boleh NULL:
CREATE TABLE ruang(kode_ruang varchar(20) PRIMARY KEY,
lokasi_ruang varchar(255) NOT NULL, kapasitas_ruang integer NOT
NULL);
Jika kolom ditentukan NOT NULL, maka insert harus memasukkan nilai
untuk kolom tersebut. Bisa menggunakan DEFAULT sehingga nilai kolom
ditambahkan secara otomatis.
3. Unique
Untuk memastikan bahwa nilai kolom unik:
CREATE TABLE mata_kuliah(kode_mk integer PRIMARY KEY, nama_mk
varchar(45) UNIQUE);
Untuk multikolom yang unik:
CREATE TABLE dosen(nip integer PRIMARY KEY, nama_dosen
varchar(45), alamat_dosen varchar(255), UNIQUE (nama_dosen,
alamat_dosen));
4. Check
Untuk membatasi nilai kolom, misalnya:
CREATE TABLE produk(kode_produk integer PRIMARY KEY,
nama_produk varchar(45), harga integer, CHECK (harga <= 100000 AND
kode_produk > 100 ));
Check di atas membatasi bahwa harga harus maksimal Rp 100000, dan
kode_produk harus di atas 100.
5. Penentuan Referential Integrity
Contoh:
CREATE TABLE pemasok(kode_pemasok integer PRIMARY KEY,
nama_pemasok varchar(45), kode_produk integer REFERENCES produk
ON DELETE CASCADE ON UPDATE CASCADE);
Untuk contoh di atas, jika ada update atau delete di tabel utama, maka
tabel kedua secara otomatis disesuaikan.
6. Action
NO ACTION atau RESTRICT: update atau delete tidak dilakukan. Ini
merupakan pilihan default.
CASCADE: nilai kolom di tabel kedua disesuaikan dengan nilai kolom di
tabel utama
SET NULL: nilai kolom di tabel kedua dijadikan NULL
SET DEFAULT: nilai kolom di tabel kedua dijadikan nilai DEFAULT (nilai
DEFAULT harus ditentukan pada waktu pembuatan tabel).
7. Autoincrement
Untuk fitur autoincrement, gunakan “serial”:
CREATE TABLE nasabah(id_nasabah serial PRIMARY KEY,
nama_nasabah varchar(45));
Untuk contoh di atas, id_nasabah tidak perlu di-insert, karena database
secara otomatis akan menambahkannya secara urut.
“serial” hanya bisa dari 1 sampai 232.
Jika tidak cukup, gunakan “bigserial” yang bisa dar i 1 sampai 264.
Jika kolom menggunakan “serial” atau “bigserial”, j angan sekali-kali
memasukkan nilai kolom tersebut secara manual! Biarkan database
menambahkannya sendiri secara urut!
Penghapusan record tidak akan mempengaruhi urutan untuk serial dan
bigserial. Nilai untuk kolom yang menggunakan serial/bigserial akan selalu
bertambah 1, tidak akan pernah kembali mundur.
C. ALAT DAN BAHAN
▪ Komputer dengan sistem operasi Windows XP
▪ Program aplikasi XAMPP dengan PhpMyAdmin
▪ Modul Praktikum Sistem Berkas dan Basis Data
D. LANGKAH-LANGKAH PRAKTIKUM
1. Jalankan XAMPP Control Panel.
2. Jalankan server Apache dan MySQL.
3. Buka Command Prompt dan login sebagai root ke MySQL seperti di
langkah pada Modul 1.
4. Buat database baru dengan perintah berikut ini. create database
perbankan;
5. Hubungkan ke dalam database yang telah dibuat dengan perintah
berikut. Sehingga akan muncul pemberitahuan “database changed”.
use perbankan;
6. Membuat tabel nasabah dengan script berikut.
CREATE TABLE nasabah ( id_nasabah INTEGER PRIMARY KEY,
nama_nasabah VARCHAR(45) NOT NULL, alamat_nasabah
VARCHAR(255) NOT NULL );
7. Membuat tabel cabang_bank dengan script berikut.
CREATE TABLE cabang_bank ( kode_cabang VARCHAR(20)
PRIMARY KEY, nama_cabang VARCHAR(45) UNIQUE NOT NULL,
alamat_cabang VARCHAR(255) NOT NULL );
8. Membuat tabel rekening dengan script berikut.
CREATE TABLE rekening (no_rekening INTEGER PRIMARY KEY,
kode_cabangFK VARCHAR(20) REFERENCES
cabang_bank(kode_cabang) ON DELETE CASCADE ON UPDATE
CASCADE, pin VARCHAR(20) DEFAULT '1234' NOT NULL, saldo
INTEGER DEFAULT 0 NOT NULL );
9. Membuat tabel transaksi dengan script berikut ini.
CREATE TABLE transaksi ( no_transaksi SERIAL PRIMARY KEY,
id_nasabahFK INTEGER REFERENCES nasabah(id_nasabah) ON
DELETE SET NULL ON UPDATE CASCADE, no_rekeningFK INTEGER
REFERENCES rekening(no_rekening) ON DELETE SET NULL ON
UPDATE CASCADE, jenis_transaksi VARCHAR(20) DEFAULT 'debit'
NOT NULL, tanggal DATETIME NOT NULL DEFAULT
CURRENT_TIMESTAMP, jumlah INTEGER NOT NULL CHECK
(jumlah>=20000));
FABRIYAN FANDI DWI IMANIAWAN 40
Modul Praktikum Aplikasi Basis Data
10. Membuat tabel nasabah_has_rekening dengan script berikut ini.
CREATE TABLE nasabah_has_rekening (id_nasabahFK INTEGER
REFERENCES nasabah(id_nasabah) ON DELETE CASCADE ON
UPDATE CASCADE, no_rekeningFK INTEGER REFERENCES
rekening(no_rekening) ON DELETE CASCADE ON UPDATE
CASCADE, PRIMARY KEY(id_nasabahFK, no_rekeningFK));
11. Untuk mengecek hasil pembuatan database gunakan perintah show
tables;
12. Kemudian untuk melihat struktur tiap tabel dapat dilakukan dengan
perintah describe. Misalkan untuk meihat struktur tabel nasabah dapat
dilakukan dengan perintah describe nasabah;
E. TUGAS
➢ Implementasikan hasil rancangan database yang menangani data
kuliah pada tugas modul 2 ke dalam program mysql.
BAB5
Data Manipulation Language
A. TUJUAN
▪ Mahasiswa mampu memahami dan mengisi tabel dalam
database.
▪ Mahasiswa mampu memahami dan memanipulasi data dalam
database.
B. LANDASAN TEORI
Data Manipulation Language (DML) adalah suatu statement
yang dijalankan pada saat kita memerlukan :
1. penambahan baris baru pada table.
2. memodifikasi baris yang ada pada table.
3. menghapus baris yang ada pada table.