Politeknik Telkom Perancangan Basis Data Relasional

Politeknik Telkom

Perancangan Basis Data Relasional

PERANCANGAN BASIS DATA RELASIONAL

POLITEKNIK TELKOM
BANDUNG
2009
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

Koordinator & Editor:
Dedy Rahman Wijaya
Tim:
Abdul Rohim
Elly Rosely
Komala Ratna Sari

Tora Fahrudin
Wahyu Hidayat

Dilarang menerbitkan kembali, menyebarluaskan atau
menyimpan baik sebagian maupun seluruh isi buku dalam
bentuk dan dengan cara apapun tanpa izin tertulis dari
Politeknik Telkom.
Hak cipta dilindungi
Telkom 2009

undang-undang

@

Politeknik

Perancangan Basis data

Politeknik Telkom


Perancangan Basis Data Relasional

No part of this document may be copied, reproduced, printed,
distributed, modifed, removed and amended in any form by
any means without prior written authorization of Telkom
Polytechnic.

KATA PENGANTAR

Segala puji bagi Allah SWT, yang telah melimpahkan
nikmat-Nya kepada penulis sehingga dapat menyelesaikan
penulisan course ware ini. Course ware ini digunakan oleh
penulis sebagai acuan untuk mata kuliah Perancangan Basis
Data di Politeknik Telkom. Course ware ini ditujukan bagi
mahasiswa program studi diploma.
Course ware ini terdiri dari sepuluh bab, yaitu
Pengenalan Basis Data, Entity Relationship Model, Konversi
ER ke Tabel, Normalisasi, Aljabar Relasional, Bahasa Basis
Data, Bahasa Basis Data Lanjutan, Pengenalan Arsitektur
Basis Data, dan Aplikasi Basis Data. Semua materi tersebut

merupakan bahan kuliah yang sesuai dengan kurikulum yang
berlaku di Politeknik Telkom.
Pada kesempatan ini, penulis menyampaikan terima
kasih yang tulus kepada berbagai pihak atas segala bantuan
dan dukungannya sehingga penulis dapat menyelesaikan
penulisan course ware ini. Akhirnya, penulis mohon maaf jika
dalam tulisan ini masih banyak kekurangan. Sumbangan ide,
saran, dan kritik yang membangun untuk perbaikan diktat ini
sangat penulis harapkan.
Bandung, Maret 2009

Penulis,

Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

DAFTAR ISI


KATA PENGANTAR.............................................................iii
DAFTAR ISI............................................................................iv
Daftar Gambar....................................................................ix
Daftar Tabel........................................................................xii
1
PENGENALAN BASIS DATA....................1
1.1. Data dan Informasi....................................................2
1.2. Siklus Informasi...........................................................2
1.3. Pentingnya data dan informasi.............................3
1.4. Sistem Basis Data dan Sistem File......................3
1.5. Definisi Basis Data dan Sistem Basis Data
(DBMS)...........................................................................5
1.6. Komponen Sistem Basis Data...............................6
1.7. Abstraksi Data.............................................................7
1.8. Model Basis Data........................................................8
1.9. Basis Data Relasional.............................................11
1.10...................................... Alternative Terminology
........................................................................................12
1.11...................Perancangan Basis Data Relational

........................................................................................13
1.12. Faktor penting menyangkut pemodelan data
dari dunia nyata.......................................................13
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

1.13.................Metodologi Perancangan Basis Data
........................................................................................14
1.14............................................... Bahasa Basis Data
........................................................................................16
2
ENTITY RELATIONSHIP MODEL............23
2.1 ER Sebagai Salah Satu Pemodelan Konseptual
Basis Data...................................................................24
2.2 Entitas dan Himpunan Entitas.............................24
2.3 Atribut...........................................................................26
2.4 Relasi............................................................................27

2.5 Derajat Himpunan Relasi......................................28
2.6 Kardinalitas Relasi...................................................30
2.7 Key.................................................................................32
2.8 Diagram ER................................................................33
2.9 Constraint Cardinalitas..........................................34
3
KONVERSI ER KE TABEL......................42
3.1 Himpunan Entitas Lemah......................................43
3.2 Spesialisasi.................................................................43
3.3 Generalisasi................................................................44
3.4 Agregasi.......................................................................45
3.5 Ringkasan notasi simbol di ER............................46
3.6 Penurunan skema ER ke Tabel...........................47
3.7 Representasi Atribut sebagai Kolom................47
3.8 Representasi Himpunan Entitas sebagai Tabel
........................................................................................48
3.9 Representasi Relasi (* pada kardinalitas N to
N)....................................................................................49
3.10Hubungan kardinalitas dengan tabel yang
terbentuk.....................................................................49

3.11Representasi Spesialisasi (IS A)..........................50
3.12Representasi Agregasi...........................................51
4
NORMALISASI....................................59
4.1 Definisi Normalisasi.................................................60
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

4.2 Tujuan Normalisasi..................................................60
4.2.1
Update Anomaly..............................................60
4.2.2
Insertion Anomaly...........................................61
4.2.3
Deletion Anomaly............................................61
4.3 The Three Keys.........................................................62
4.4 Functional Dependencies......................................64

4.4.1
Partial Funcional Dependency....................65
4.4.2
Transitive Functional dependency...........66
4.5 Bentuk Normal dan Langkah-Langkah
Normalisasi.................................................................67
4.5.1
Bentuk Normal Pertama (1st Normal
Form)............................................................................67
4.5.2
Bentuk Normal Ke Dua (2nd Normal
Form)............................................................................69
4.5.3
Bentuk Normal Ke Tiga (3rd Normal
Form)............................................................................71
4.5.4
Bentuk Normal Boyce Codd (BC Normal
Form)............................................................................72
4.5.5
Bentuk-Bentuk Normal Lainnya.................73

4.6 Denormalisasi............................................................73
5
ALJABAR RELASIONAL........................80
5.1 Query dan Aljabar Relasional..............................81
5.2 Operasi Select...........................................................82
5.3 Operasi Project..........................................................83
5.4 Operasi Cartesian Product....................................83
5.5 Operasi Unio...............................................................84
5.6 Operasi Set Difference...........................................85
5.7 Operasi Intersection................................................86
5.8 Operasi rename........................................................86
5.9 Join.................................................................................87
5.10Fungsi Agregasi........................................................88
5.11Operasi Division........................................................88
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional


6
BAHASA BASIS DATA..........................93
6.1 Pendahuluan..............................................................94
6.2 Standarisasi SQL......................................................94
6.3 Membangun Basidata.............................................96
6.3.1
Membuat BasisData.......................................96
6.3.2
Membuat Tabel Data.....................................96
6.3.3
Melakukan Perubahan pada Tabel.........103
6.4 Maintenance Data pada Basisdata..................105
6.4.1
Memasukan Data..........................................105
6.4.2
Merubah Data.................................................107
6.4.3
Menghapus Data...........................................108
6.5 Mengakses Basisdata..........................................108
6.5.1

Menganti Judul Kolom..................................109
6.5.2
Function pada SQL........................................110
6.5.3
Menentukan Kondisi.....................................111
6.5.4
Menguruntukan Data...................................113
7
BAHASA BASIS DATA LANJUTAN........120
7.1 Fungsi Aggregation...............................................121
7.2 Query dari Beberapa Tabel................................125
7.3 Nama Alias................................................................127
7.4 Bentuk-bentuk Perintah Join..............................128
7.4.1
LEFT JOIN..........................................................129
7.4.2
RIGHT JOIN.......................................................130
7.4.3
FULL JOIN..........................................................131
7.5 Subquery...................................................................132
8
PENGENALAN ARSITEKTUR BASIS DATA
.......................................................146
8.1 Pendahuluan............................................................147
8.2 Struktur DBMS.........................................................147
8.3 Produk-produk DBMS............................................149
8.4 Database Oracle.....................................................149
8.4.1
Arsitektur Database Oracle.......................149
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

8.4.2
Struktur Database Oracle..........................150
8.4.3
Oracle Instance..............................................151
8.4.4
Oracle Memory Structure...........................151
8.4.5
Oracle Processes Structure.......................153
8.4.6
Oracle Storage Structure...........................154
8.5 Arsitektur Sistem database................................156
8.5.1
Centralized Sistems.....................................157
8.5.2
Client-Server Sistems..................................157
8.5.3
Parallel Sistems.............................................158
8.5.4
Distributed Sistems......................................159
8.5.5
Network types................................................160
9
APLIKASI BASIS DATA.......................166
9.1 Pendahuluan............................................................167
9.2 Sistem Pendukung Keputusan (DecisionSupport Sistem)......................................................167
9.2.1
Analisis Data...................................................169
9.2.2
Penggalian Data (Data Mining)................172
9.2.3
Penggudangan Data (Data Warehousing)
173
9.3 Basis Data Spasial (Spatial Databases).........175
9.3.1
Representasi Informasi Geometris.........177
9.3.2
Basis Data Perancangan............................177
9.3.3
Data Geografis...............................................179
9.3.4
Representasi Data Geografis....................180
9.3.5
Aplikasi Data Geografis..............................180
9.4 Basis Data untuk Multimedia (Multimedia
Databases)................................................................181
9.4.1
Pengambilan Berbasis Kesamaan
(Similarity-Based Retrieval)...............................182
9.4.2
Data sinambung (Continuous-Media
Data)...........................................................................183
9.5 Basis Data Bergerak (Mobility and Personal
Databases)................................................................183
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

9.5.1
Model Komputasi Bergerak.......................184
9.5.2
Routing dan Pemrosesan Query..............185
9.6 Sistem Pencarian Informasi (Information
Retrieval)...................................................................185
9.7 Pengindeksan Dokumen......................................187
9.7.1
Browsing dan Hypertext.............................187
9.8 World Wide Web (WWW).....................................189
9.8.1
WEB Sebagai Bentuk Aplikasi Basis Data
190
Daftar Pustaka......................................198

Daftar Gambar

Gambar 1-1 Siklus informasi........................................................2
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

Gambar 1-2 Perkembangan Database..........................................5
Gambar 1-3 Komponen DBMS....................................................7
Gambar 1-4 Abstraksi Data..........................................................8
Gambar 1-5 Model Database.....................................................10
Gambar 1-6 Ilustrasi sebuah relasi.............................................12
Gambar 1-7 Terminologi............................................................12
Gambar 1-8 Pendekatan Konvensional......................................15
Gambar 1-9 Pendekatan ER.......................................................16
Gambar 2-1 Himpunan Entitas Mahasiswa................................25
Gambar 2-2 Contoh himpunan entitas........................................25
Gambar 2-3 Gambaran Himpunan entitas di Tabel....................25
Gambar 2-4 Contoh Atribut Komposit.......................................26
Gambar 2-5 Entitas mahasiswa dengan Atribut.........................27
Gambar 2-6 Relasi di gambarkan dengan belah ketupat............27
Gambar 2-7 Himpunan Entitas Mahasiwa Ber-Relasi dengan
Himpunan Entitas Organisasi.....................................................28
Gambar 2-8 Contoh Derajat Relasi Unary.................................29
Gambar 2-9 Contoh Derajat Relasi Binary.................................29
Gambar 2-10 Contoh Derajat Relasi Ternary.............................30
Gambar 2-11 Relasi dengan Kardinalitas 1 ke 1........................30
Gambar 2-12 Relasi dengan Kardinalitas 1 ke Banyak..............31
Gambar 2-13 Relasi dengan Kardinalitas Banyak ke 1..............31
Gambar 2-14 Relasi dengan Kardinalitas Banyak ke Banyak....32
Gambar 2-15 Contoh Diagram ER.............................................33
Gambar 2-16 Relasi 1 ke 1....................................................34
Gambar 2-17 Relasi 1 ke banyak........................................34
Gambar 2-18 Relasi Banyak ke 1........................................35
Gambar 2-19 Relasi Banyak ke Banyak............................35
Gambar 3-1 Contoh Himpunan Entitas Lemah..........................43
Gambar 3-2 Contoh Spesialisasi.................................................44
Gambar 3-3 Contoh Agregasi.....................................................45
Gambar 3-4 Relasi di pandang sebagai Himpunan Entitas........45
Gambar 3-5 Ringkasan Notasi pada Diagram ER......................46
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

Gambar 3-6 Atribut multivalued di pecah menjadi entitas baru.47
Gambar 3-7 Atribut himpunan entitas kuat di representasikan
kedalam tabel..............................................................................48
Gambar 3-8 Penurunan Himpunan Entitas Lemah ke tabel.......48
Gambar 3-9 Penurunan Kardinalitas relasi N to N menjadi Tabel
....................................................................................................49
Gambar 3-10 Representasi spesialisasi ke tabel metoda 1.........50
Gambar 3-11 Representasi spesialisasi ke tabel metoda 1.........51
Gambar 3-12 Representasi Agregasi untk tabel mata kuliah,
dosen dan Dosen mengajar mt kul..............................................51
Gambar 3-13 Representasi Agregasi untuk tabel Mahasiwa dan
Mahasiwa Mengambil Mtkul......................................................52
Gambar 4-1 Diagram Normalisasi..............................................60
Gambar 7-1 Entitas Mahasiswa...........................................97
Gambar 7-2 Entitas Kurikulum.............................................98
Gambar 7-3 Entitas Mahasiswa dan Jurusan..................99
Gambar 7-4 Relasi Tabel Mahasiswa dan Tabel
Jurusan.....................................................................................99
Gambar 9-1 Struktur DBMS secara umum....................148
Gambar 9-2 Struktur Database Oracle...........................151
Gambar 9-3 Oracle Instance...............................................151
Gambar 9-4 Oracle Memory...............................................152
Gambar 9-5 Oracle Processes............................................153
Gambar 9-6 Oracle Storage................................................155
Gambar 9-7 Database Functionality................................156
Gambar 9-8 Centralized Sistem........................................157
Gambar 9-9 Client-Server Sistem.....................................157
Gambar 9-10 Parallel Sistems............................................159
Gambar 9-11 Distributed Sistem.......................................159
Gambar 10-1 Arsitektur Data warehouse................................174
Gambar 10-2 Bentuk-bentuk Geografis. dan Representasinya 177
Gambar 10-3 Objek-objek 3 Dimensi yang Lebih Kompleks. .178
Gambar 10-4 Objek sebagai Data Raster dan Data Vektor......180
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

Gambar 10-5 Pengelompokan Buku dalam Perpustakaan.......188
Gambar 10-6 Pengelompokan DAC dalam Sistem Pencarian
Informasi...................................................................................189
Gambar 10-7 Arsitektur Web...................................................191

Daftar Tabel

Tabel 4-1 Contoh Update Anomaly............................................60
Tabel 4-2 Contoh Insert Anomaly..............................................61
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

Tabel 4-3 Contoh Delete Anomaly.............................................61
Tabel 4-4 Tabel Mata Kuliah......................................................62
Tabel 4-5 Contoh Tabel..............................................................64
Tabel 4-6 Tabel Nilai..................................................................66
Tabel 4-7 Tabel Mahasiswa........................................................67
Tabel 4-8 Versi pertama.......................................................68
Tabel 4-9 Versi ke dua...........................................................68
Tabel 4-10 Contoh Tabel T-1..................................................69
Tabel 4-11 Contoh Tabel T-2..................................................69
Tabel 4-12 Contoh T-1hasil.....................................................70
Tabel 4-13 Contoh Tabel T-1-1..............................................70
Tabel 4-14 Contoh Tabel T-1-2..............................................70
Tabel 4-15 Contoh Tabel T-1-3..............................................71
Tabel 4-16 Contoh tabel T-1-1...............................................72
Tabel 4-17 Contoh Tabel T-1-1-1..........................................72
Tabel 4-18 Contoh Tabel T-1-1-2..........................................72
Tabel 7-1 Tabel Data Mahasiswa.......................................97
Tabel 7-2 Data Kurikulum.....................................................98
Tabel 7-3 Tabel Data Jurusan..............................................99
Tabel 7-4 Tabel Data Mahasiswa.......................................99
Tabel 7-10 Jenis Data pada Oracle..................................101
Tabel 7-11 Data Jurusan......................................................106
Tabel 7-12 Data Mahasiswa...............................................106
Tabel 7-13 Data Jurusan......................................................108
Tabel 7-14 Data Mahasiswa...............................................108
Tabel 7-15 Output Select Jurusan....................................109
Tabel 7-16 Output Select Jurusan....................................109
Tabel 7-17 Operator Kondisi..............................................111
Tabel 7-18 Output Select Mahasiswa menggunakan
Where.....................................................................................112
Tabel 7-19 Output Select Mahasiswa menggunakan
Where.....................................................................................112
Tabel 7-20 Contoh Perintah Like......................................112
Perancangan Basis data

Politeknik Telkom

Perancangan Basis Data Relasional

Tabel 7-21 Output Order By Tabel Mahasiswa...........113
Tabel 7-22 Output Order By DESC Tabel Mahasiswa
..................................................................................................113
Tabel 7-23 Output Order By Dua Kolom........................114
Tabel 8-1 Data Kurikulum...................................................122
Tabel 8-2 Hasil Query Jumlah Matakuliah per
Semester...............................................................................123
Tabel 8-3 Hasil Query Jumlah Sks per Semester.......123
Tabel 8-4 Hasil Query Jumlah matakuliah dan Sks per
Semester...............................................................................124
Tabel 8-5 Hasil Query Kelompok Matakuliah..............124
Tabel 8-6 Perbandingan Perintah SQL untuk Limit...125
Tabel 8-7 Mahasiswa dan tabel Jurusan.......................125
Tabel 8-8 Output Relasi antar Tabel..............................126
Tabel 8-9 Pengarang............................................................128
Tabel 8-10 Penerbit...............................................................129
Tabel 8-11 Hasil Relasi Left Join.......................................130
Tabel 8-12 Hasil Relasi Right Join....................................131
Tabel 8-13 Hasil Relasi Full Join........................................132
Tabel 8-14 Data Penerbit....................................................133
Tabel 8-15 Data Buku...........................................................133
Tabel 8-16 Data Pengarang...............................................134
Tabel 8-17 Hasil Query Operator IN................................134
Tabel 8-18 Hasil Query Operator Not IN........................135
Tabel 8-19 Hasil Query Operator Exists........................136
Tabel 8-20 Hasil Query Operator Not Exists................137
Tabel 8-21 Hasil Query Operator Komparasi...............137
Tabel 8-22 Hasil Query Operator ANY............................138
Tabel 10-1 Contoh Cross-Tab............................................170
Tabel 10-2 Tabel Relasional...............................................171

Perancangan Basis data

1 PENGENALAN BASIS DATA

Overview

Dalam kehidupan sehari-hari kita sering membahas mengenai
data dan informasi. Informasi berasal dari kumpulan data
yang disimpan secara terstruktur pada sebuah sistem yang
dikenal dengan basis data (database). Pada bab awal ini akan
dibahas tentang definisi, komponen sistem basis data, sistem
fle, abstraksi data, bahasa basis data, database administrator
dan struktur sistem.

Tujuan

1. Mahasiswa mengetahui dan mengerti konsep basis data.
2. Mahasiswa mengetahui mengenai komponen-komponen
sistem basis data.
3. Mahasiswa mengetahui mengenai abstraksi data dan
Database Language.
Perancangan Basis data

1

1.1.

Data dan Informasi

Menurut Turban, Aronson, and Liang (2005) data dan
informasi didefinisikan sebagai berikut:
• Data, merupakan sesuatu yang menyangkut barang,
kejadian, aktivitas, dan transaksi yang telah tercatat,
diklasifikasikan, dan disimpan namun belum memiliki
makna.
Data
dapat
berupa
nilai
numerik,
alphanumerik, gambar, dan suara.
• Informasi, adalah data yang telah dikelola dalam
bentuk tertentu untuk memberikan makna atau arti
bagi penerimanya.

1.2.



Siklus Informasi
Data dan informasi akan saling berkesinambungan
sehingga membentuk suatu siklus yang disebut
information cycle (siklus informasi).
Data ditangkap oleh indera kemudian menjadi inputan
dalam sebuah model untuk diubah menjadi informasi
bagi penerimanya yang nantinya akan membantu
pengambilan keputusan dan menjadi sebuah hasil
tindakan.

Gambar 1-1 Siklus informasi

1.3.

Pentingnya data dan informasi

 Data dan informasi sebagai sebuah aset penting
perusahaan/organisasi.
 Informasi yang benar dapat menjadikan suatu
perusahaan/organisasi memperoleh margin untuk
melakukan aksi.
 Data dan informasi sebagai salah satu parameter
kemajuan perusahaan/organisasi (maturity level).

1.4.

Sistem Basis Data dan Sistem File

Pada sebuah institusi, data merupakan salah satu hal
yang sangat penting. Setiap bagian/divisi dari institusi
memiliki data sendiri-sendiri. Tapi setiap bagian pun
membutuhkan sebagian data dari bagian yang lain. Hal ini
yang biasa dikenal sebagai “shared data”. Setiap divisi
memiliki aplikasi sendiri-sendiri dalam melakukan manipulasi
dan pengambilan data tersebut. Setiap aplikasi memiliki flefle dalam sistem operasi yang digunakan untuk menyimpan
Perancangan Basis data

3

data-data.
Seiring
dengan
berkembangnya
institusi,
bertambahnya bagian/divisi, bertambah pula data dan
aplikasi yang digunakan. Bertambahnya aplikasi, bertambah
pula fle-fle yang dibuat.
Gaya sistem pemrosesan-fle tersebut menyebabkan
setiap data disimpan dalam bentuk record dalam berbagai
macam fle, dan diperlukan aplikasi yang berbeda dalam
melakukan pengambilan record dari, dan penambahan record
ke dalam fle. Hal ini berlaku pada masa sebelum adanya
Sistem Basis Data (DBMS).
Menyimpan data dalam bentuk fle yang berbeda-beda,
memiliki kekurangan-kekurangan:
 Data redundancy dan inconsistency.
Dikarenakan programer yang berbeda membuat fle dan
aplikasi masing-masing, menyebabkan beragam format
dan aplikasi yang dibuat. Bahkan, aplikasi pun dibuat
menggunakan bahasa pemrograman yang berbedabeda. Lebih jauh lagi, data atau informasi yang sama
bisa terdapat dalam beberapa fle yang berbeda. Ini
yang disebut dengan redundancy. Redundancy data ini
lama kelamaan akan menyebabkan inconsystency dari
data.

 Kesulitan dalam pengaksesan data.
Dikarenakan setiap aplikasi memiliki fle tersendiri untuk
penyimpanan dan pengambilan data, maka jika suatu
bagian dari institusi membutuhkan data dari bagian lain,
akan menemui kesulitan. Hal ini dikarenakan aplikasi
yang dimiliki bagian tersebut, tidak dapat membaca fle
yang terdapat di bagian lain.
 Isolasi data.
Dikarenakan data tersebar dalam berbagai macam fle,
dan fle tersebut dalam beragam format, pembuatan
aplikasi baru akan terasa sulit ketika harus membaca
format dari masing-masing fle tersebut.
 Masalah integritas.
Data yang disimpan harus memenuhi hal yang
dinamakan dengan consistency constraint. Jika sebuah
constraint berubah, maka seluruh aplikasi yang
digunakan harus mengakomodasinya. Masalah akan
muncul, jika constraint melibatkan beberapa data dari
fle yang berbeda-beda.
 Masalah keamanan.
Tidak semua pengguna dari basis data dapat mengakses
semua data. Hal ini akan sulit dilakukan jika
menggunakan gaya penyimpanan data dalam fle.

Perancangan Basis data

5

Gambar 1-2 Perkembangan Database

1.5. Defnisi Basis Data dan Sistem Basis Data
(DBMS)
Basis data adalah penyimpanan kumpulan informasi
secara sistematik dalam sebuah komputer sehingga dapat
diperiksa menggunakan suatu program komputer untuk
memperoleh informasi dari basis data tersebut. Perangkat
lunak yang digunakan untuk mengelola dan memanggil kueri
(query) basis data disebut sistem manajemen basis data
(Database Management System, DBMS).
DBMS memiliki
karakteristik sebagai berikut:







Software program
Supplements operating sistem
Manages data
Queries data and generates reports
Data security

Sedangkan sistem adalah sebuah tatanan yang terdiri
atas sejumlah komponen fungsional yang saling berhubungan
dan secara bersama-sama bertujuan untuk memenuhi suatu
proses pekerjaan. Sehingga bisa dikatakan bahwa sistem
basis data adalah sistem yang terdiri atas kumpulan fle-fle
yang saling berhubungan dan dikelola oleh program (DBMS)
yang memungkinkan beberapa pemakai dan atau program
lain yang memiliki otoritas untuk mengakses dan
memanipulasi data tersebut. Kelebihan pemakaian DBMS
adalah:
• Data berdiri sendiri (Data Independence)
• Pengaksesan data efisien (Efficient data access)
• Integritas data dan keamanan terjamin (Data integrity
and security)
• Administrasi data (Data administration)
• Dapat diakses bersamaan (Concurrent access )
• Recovery saat terjadi kegagalan (Crash recovery)
• Mengurangi waktu pembangunan aplikasi (Reduced
application development time)

1.6.

Komponen Sistem Basis Data

Komponen-komponen pada sebuah sistem basis data
antara lain:
 Perangkat keras
 Sistem operasi
 Basis data
 DBMS (Database Management System)
 Pemakai
 Aplikasi lain

Perancangan Basis data

7

Gambar 1-3 Komponen DBMS

1.7.

Abstraksi Data

Tujuan utama dari sistem basis data adalah untuk
menyediakan fasilitas untuk view data secara abstrak bagi
penggunanya. Namun bagaimana sistem menyimpan dan
mengelola data tersebut, hanya diketahui oleh sistem itu
sendiri. Abstraksi data merupakan level dalam bagaimana
melihat data dalam sebuah sistem basis data. Berikut ini tiga
level abstraksi data:
1.

Level fsik

Merupakan level terendah pada abstraksi data yang
menunjukkan bagaimana sesungguhnya data disimpan.
Pada level ini pemakai melihat data sebagai gabungan
dari struktur dan datanya sendiri.

Perancangan Basis data

9

2.

Level lojik
Merupakan level berikutnya pada abstraksi data,
menggambarkan data apa yang disimpan pada basis
data dan hubungan apa saja yang ada di antara data
tersebut.

3.

Level view
Merupakan level tertinggi dari abstraksi data yang
hanya menunjukkan sebagian dari basis data. Banyak
user dalam sistem basis data tidak akan terlibat dengan
semua data atau informasi yang ada atau yang
disimpan. Para user umumnya hanya membutuhkan
sebagian data atau informasi dalam basis data yang
kemunculannya di mata user diatur oleh aplikasi end
user.

Gambar 1-4 Abstraksi Data.

1.8.

Model Basis Data

 Hierarchical
Memiliki struktur pohon dimana feld hanya memiliki
satu buah induk (parent), masing-masing parent
memiliki banyak child (anak). Model ini memiliki
kecepatan yang baik.
 Network

Relationship dibuat menggunakan linked list (pointer).
Berbeda dengan model hierarchical satu anak dapat
memiliki beberapa induk. Model ini memiliki
fleksibilitas yang tinggi.

 Relational
Model ini direpresentasikan dalam tabel dua dimensi,
tabel-tabel tersebut memiliki hubungan yang disebut
dengan relasi. Model ini memiliki fleksibilitas dan
kecepatan yang tinggi.
 Object oriented
Object Oriented Database adalah sebuah sistem
database yang menggabungkan semua konsep object
oriented seperti pewarisan, abstraksi, enkapsulasi, dll.
Model ini dapat berinteraksi dengan baik dengan
bahasa pemrograman berorientasi objek seperti java
dan C++.

Perancangan Basis data

11

Gambar 1-5 Model Database

1.9.

Basis Data Relasional

Dalam beberapa tahun terakhir, sistem pengelola basis
data (Database Management System - DBMS) menjadi pilihan
dalam hal penyimpanan data bagi sistem informasi mulai dari
pemrosesan aplikasi transaksi komersial yang besar hingga
ke aplikasi yang berbasis desktop PC. Kebanyakan yang
digunakan pada masa ini adalah Model basis data relasional
dengan menggunakan Relational Database Management
System
(RDBMS).
RDBMS
menyediakan
layanan
pengorganisasian data yang mudah tetapi memiliki
kemampuan untuk menangani jumlah data yang sangat
besar. Beberapa contoh dari RDBMS diantaranya:








SQL Server, dibuat oleh Microsoft.
MS Access, dibuat oleh Microsoft.
Oracle Database, dibuat oleh Oracle.
MySQL, dibuat oleh MySQL AB.
Firebird, dibuat oleh komunitas open source
berdasarkan dari kode Interbase.
PostgreSQL, dibuat oleh komunitas open
source.
DB2, dibuat oleh IBM.

Basis data relasional memiliki satu struktur “lojik” yang
disebut Relation (relasi). Struktur relasi merupakan strukture
data 2-dimensi dan pada level “fisik” berupa table (tabel).
Attribute merepresentasikan elemen dari data yang berkaitan
dengan relasi. Sebagai contoh, relasi Mahasiswa memiliki
atribut-atribut seperti nim, nama, tempat lahir. tanggal_ lahir,
dan alamat.
Pada buku-buku teks mengenai perancangan basis data,
sebuah relasi dinotasikan secara konvensional dengan
Relation(attribute1, attribute2, ..) dengan aturan : nama dari
relasi dan atribut-atribut dari relasi yang berada didalam
tanda kurung.
Contohnya: Mahasiswa(NIM, Nama, Alamat, Jenis_kelamin …).
Perancangan Basis data

13

Nilai data dari atribut dari sebuah relasi akan disimpan
dalam tuple atau row (baris) dari tabel. Gambar dibawah
merupakan ilustrasi dari sebuah relasi.

Gambar 1-6 Ilustrasi sebuah relasi

1.10. Alternative Terminology

Table-oriented

Set-oriented

Record-Oriented

Table

Relation

Record-type, file

Row

Tuple

Record

Column

Attribute

Field

Gambar 1-7 Terminologi

Ada beberapa istilah/ terminologi yang berkaitan
dengan konsep basis data Relational. Ada beberapa cara
pandang terhadap data pada konsep basis data relasional.
Yang pertama adalah pandangan yang berorientasi tabel
(table-oriented) dimana sebuah entity-set direpresentasikan
secara lojik menjadi sebuah tabel (table) yang terdiri dari
baris (row) dan kolom (column). Kedua adalah pandangan
berorientasi set/kumpulan (set-oriented) dimana entity-set
direpresentasikan sebagai relasi (Relation), nilai-nilai data
yang sesuai dengan atributnya (attribute) disimpan dalam
sebuah tempat yang dinamakan tuple. Terminologi yang
terakhir adalah pandangan berorientasi record (recordoriented) dimana entity-set di representasikan dengan recordtype/fle
sedangkan
nilai
dari
tiap-tiap
entity
direpresentasikan
dengan
record
yang
terstruktur
berdasarkan feld-feld yang dimiliki.

1.11. Perancangan Basis Data Relational
Merupakan proses untuk merepresentasikan fakta dunia
nyata (real world) yang dikehendaki ke dalam sistem
komputer, sehingga mudah dipahami pemakai dengan
mempertimbangkan
kemudahan
implementasi
dan
pemrosesannya.
Tujuan dari perancangan basis data :
 Memenuhi kebutuhan informasi pada saat ini dan akan
datang
 Kemudahan
pengembangan
sesuai
dengan
perkembangan organisasi
 Penerapan mekanisme pengamanan data
Istilah ‘dunia nyata’ (real world) bermakna terhadap
keseluruhan data yang belum terstruktur yang secara nyata
ada/terkait dalam lingkup sistem yang sedang ditinjau. Dunia
nyata disini bisa dikatakan sebagai sebuah domain secara
utuh/penuh maupun subdomain, sebagai contoh jika kita
menganggap suatu perusahaan sebagai suatu domain maka
kita dapat menganggap unit-unit yang ada dalam perusahaan
Perancangan Basis data

15

tersebut adalah subdomain atau bisa saja sebuah proses
bisnis atau aktivitas yang ada di perusahaan tersebut juga
bisa kita anggap sebagai sebuah subdomain bahkan domain.
Setiap dunia nyata (real world) yang ada memiliki karakter
yang tidak sama/unik. Sebagai contoh dunia nyata bagi
sistem perbankan pasti tidak sama dengan dunia nyata bagi
sistem rumah sakit. Pertanyaannya adalah apakah dunia
nyata di bank yang satu dengan bank yang lain pasti sama?

1.12. Faktor penting menyangkut pemodelan data
dari dunia nyata
1. Adanya aturan, rule dari proses bisnis yang akan dijadikan
model.
2. Ada struktur (keteraturan) data yang akan disimpan dan
bagaimana struktur data yang akan diimplementasikan ke
dalam sebuah basis data secara fisik.
3. Karakteristik dari data yang akan disimpan sudah jelas.
Contoh : Dalam sistem rumah sakit misalnya ada : dokter,
pasien, obat, kamar, dan lain-lain.

1.13. Metodologi Perancangan Basis Data
Merupakan cara bagaimana suatu basis data dibuat melalui
tahap-tahap tertentu, mulai dari tahap investigasi masalah
sampai tahap implementasinya.
Secara umum ada dua tahapan proses perancangan basis
data, yaitu :
 perancangan logika basis data
 perancangan fisik basis data
1. Perancangan logika basis data
Merupakan proses pendefinisian entitas dan relasi
(Relationship)
dari
dunia
nyata
yang
dirancang,
berdasarkan kebutuhan informasi dan pengolahan data
dari organisasi yang bersangkutan.

– Entity / entitas adalah sekumpulan objek yang dapat
diidentifikasi dan dibedakan di lingkungan pemakai
– Relasi adalah hubungan yang terjadi antar kelompok
entitas.
Sasaran dari perancangan logika basis
fleksibilitas model data yang dihasilkan
pengimplementasiannya dalam komputer.

data adalah
dan efisiensi

2. Perancangan fisik basis data
Merupakan proses untuk mengimplementasikan hasil
perancangan logika ke dalam komputer secara fisik yang
bergantung kepada software DBMS yang dipilih. Proses yang
dilakukan :
 Menentukan struktur untuk setiap tabel, meliputi nama
feld, jenis, lebar dan feld kuncinya.
 Menentukan nama basis data dan nama setiap tabel,
serta lokasi tempat penyimpanannya (drive, directory /
folder).
 Menghitung perkiraan tempat (space) yg dibutuhkan
untuk seluruh tabel dan untuk seluruh index.
 Implementasi dengan menggunakan software DBMS.
Terdapat dua pendekatan dalam perancangannya :
1. Pendekatan konvensional
Perancangan basis data tanpa melalui tahap perancangan
konseptual. Secara umum mempunyai tahapan perancangan
sebagi berikut:
 Pembuatan model relasi
 Normalisasi
 Implementasi dengan menggunakan DBMS tertentu
(Access, SQL, dsb.). Struktur tabel,
atribut kunci,
aturan integritas, relasi antar tabel

Perancangan Basis data

17

REAL
WORLD

Model
relasi

Implementasi
melalui DBMS

Normalisasi

Pembuatan

Model
Data
Relasi

Skema
Basis
Data

Basis
Data

Gambar 1-8 Pendekatan Konvensional
2. Pendekatan Entity-Relationship
Menggunakan pendekatan model konseptual. Secara umum,
mempunyai tahapan sebagai berikut :
 Pembuatan model konseptual (model E-R)





Identifikasi entitas dan atributnya
Pendefinisian relasi antar entitas
Penentuan atribut relasi antar entitas
Menggambar diagram E-R

 Transformasi menjadi model relasi
 Nomalisasi
 Implementasi dengan menggunakan DBMS tertentu
(Access, SQL, dsb.). Struktur tabel,
atribut kunci,
aturan integritas, relasi antar tabel

Pembuatan

REAL
WORLD

Model
Konseptual

Implementasi

Normalisasi
Model
Data
E-R

Model
Data
Relasi

melalui
Skema
Basis
Data

DBMS

Basis
Data

Gambar 1-9 Pendekatan ER

1.14. Bahasa Basis Data
1. Data Defnition Language (DDL)
Data
Defnition
Language
ini
berfungsi
untuk
menspesifikasikan skema basis data. Degan bahasa ini
user dimungkinkan untuk membuat tabel baru, indeks,
mengubah struktur tabel, menetukan stuktur penyimpanan
tabel, dan masih banyak lagi. Hasil dari kompilasi DDL
adala kumpulan tabel yang tersimpan pada sebuah fle
khusus yang disebut dengan kamus data (data dictionary)
atau data directory. Kamus data merupakan sebuah fle
yang berupa metadata, yaitu data tentang data. Kamus
data ini akan selalu diakses pada suatu operasi basis data
sebelum suatu fle data yang sesungguhnya diakses.
2. Interactive Data Manipulation Language (DML)
Level abstraksi yang telah dibahas sebelumnya tidak hanya
berlaku pada definisi atau struktur data tetapi juga pada
manipulasi data. Manipulasi data itu sendiri dapat berupa:
i. pengambilan informasi yang tersimpan pada
basis data.
ii. Pemasukan informasi baru ke dalam basis data.
Perancangan Basis data

19

iii. Penghapusan informasi dari basis data.
iv. Modifikasi informasi yang tersimpan pada basis
data
Pada level fisik, kita harus mendefinisikan algoritma yang
memungkinkan pengaksesan yang efisien terhadap data.
Pada level yang lebih tinggi, yang dipentingkan bukan hanya
efisiensi akses tetapi juga efisiensi interaksi user dengan
sistem.
DML merupakan bahasa yang memungkinkan user untuk
mengakses atau memanipulasi data sebagaimana telah
direpresentasikan oleh model data. Terdapat dua macam
DML, yaitu:
 Prosedural, mengharuskan user untuk menentukan data
apa yang dibutuhkan dan bagaimana untuk mendapatkan
data tersebut.
 Nonprosedural,
mengharuskan
pemakai
untuk
menentukan
data
apa
yang
dibutuhkan
tanpa
menyebuntukan bagaimana mendapatkan data tersebut.
3. Transaction control
Transaction control adalah bahasa basis data yang
mengatur transaksi yang
dilakukan oleh Data
Manipulation Language (DML). Transaction control ini
memiliki peran yang sangat besar untuk menentukan
dilakukan atau tidaknya perubahan-perubahan data yang
ada pada basis data. Contoh dari transaction control ini
adalah perintah commit dan rollback.
4. Embedded and Dinamic SQL, contoh C,C++,Java, Cobol,
Pascal, etc.
Tidak semua DBMS memiliki fasilitas ini, salah satu contoh
DBMS yang memiliki fasilitas ini adalah oracle dimana
oracle dapat me-load class yang ditulis menggunakan
bahasa pemrograman java kedalam database.
5. Authorization, untuk mendefinisikan hak akses spesifik
terhadap objek-objek basis data.

Rangkuman

1. Data dan informasi akan saling berkesinambungan
sehingga
membentuk
suatu
siklus
yang
disebut
information cycle (siklus informasi).
2. Pengelolaan data dan informasi menggunaan DBMS
memiliki
keuntungan
jika
dibandingkan
dengan
menyimpannya menggunakan fle.
3. Basis data adalah penyimpanan kumpulan informasi secara
sistematik dalam sebuah komputer sehingga dapat
diperiksa menggunakan suatu program komputer untuk
memperoleh informasi dari basis data tersebut. Perangkat
lunak yang digunakan untuk mengelola dan memanggil
kueri (query) basis data disebut sistem manajemen basis
data (Database Management System, DBMS).
4. Teradapat tiga level abstraksi data yaitu dari yang paling
dasar adalah level fisik, level lojik, dan level view.
5. Basis data relasional memiliki satu struktur “lojik” yang
disebut Relation (relasi). Struktur relasi merupakan struktur
data 2-dimensi dan pada level “fisik” berupa table (tabel).

Perancangan Basis data

21

Kuis Benar Salah

1. Informasi merupakan hasil dari pengolahan data.
2. Data ditangkap oleh indera kemudian menjadi inputan
dalam sebuah model untuk diubah menjadi pengetahuan
dan tindakan.
3. Data merupakan salah satu parameter kemajuan sebuah
organisasi.
4. Jika data disimpan dalam fle maka setiap aplikasi tidak
memiliki fle tersendiri.
5. Data integrity merupakan masalah yang dapat ditemui
jika kita menyimpan data menggunakan fle.
6. Model object oriented direpresentasikan dalam tabel dua
dimensi, tabel-tabel tersebut memiliki hubungan yang
disebut dengan relasi.
7. Perancangan basis data merupakan proses untuk
merepresentasikan fakta dunia nyata (real world) yang
dikehendaki ke dalam sistem komputer, sehingga mudah
dipahami
pemakai
dengan
mempertimbangkan
kemudahan implementasi dan pemrosesannya.
8. Database Management System (DBMS) merupakan salah
satu jenis perangkat lunak.
9. Data yang disimpan dalam DBMS tidak dapat diakses
secara bersamaan.

10. Memungkinkan beberapa aplikasi menggunakan DBMS
yang sama.

Pilihan Ganda
1.
A
.
B
.
C
.
2.
A
.
B
.
C
.
3.

Berikut ini merupakan hasil pengolahan data, kecuali…
D
Informasi
.
DBMS
E
Pengetahuan
.
Wisdom
Kebijakan
Penyimpanan
data
menggunakan
permasalahan sebagai berikut kecuali…
Data redundancy dan
D
inconsistency
.
Security
Isolation

E.

fle

memiliki

Integrity

Simplicity
Dalam menganalisis suatu domain, hal-hal yang harus

Perancangan Basis data

23

A
.
B
.
C
.
4.
A
.
B
.
C
.
5.
A
.
B
.
C
.

diperhatikan adalah sebagai berikut kecuali…
D Identifikasi entitas dan
Pendefinisian masalah
.
relasi
Business process
Identifikasi produktivitas
oriented
E. domain
Aturan/rule yang jelas
Jawaban
yang
paling
tepat
mengenai
Management System adalah...
D
Menambah data
.
Mengelola data
Mengubah data

E.

Database

Memberikan data

Menghapus data
Berikut ini adalah jenis DBMS untuk skala enterprise
adalah…
D
MySQL
.
SQL server
Firebird

E.

MS Access

PostgreSQL

6
A
.
B
.
C
.

Berikut ini jenis model basis data kecuali...
D
Relational
.
Hirarkial

7
A
B
C

Berikut ini termasuk komponen basis data, kecuali…
Hardware
D Tupperware
Operating sistem
E Software
Brainware

8

Hal yang benar mengenai level view pada abstraksi data

Heuristik

E.

Object oriented

Network

A
B
C
9

adalah…
Merupakan level
terendah abstraksi
Dapat direpresentasikan
dengan diagram ER.
Berhubungan dengan
indexing, fragmenting,
dan crash recovery

D
E

Berhubungan langsung
dengan user
Salah satu level konseptual
abstraksi data

B
C

Hal-hal berikut ini yang berhubungan dengan metodologi
perancangan basis data kecuali...
Cara pembuatan basis
data
D Perancangan lojik
Penentuan entitas dan
Perancangan fisik
E relasi
Operasi recovery

1
0
A
B
C

Kelebihan DBMS kecuali…
Data Independence
Data integrity
Data avaibility

A

D
E

Crash recovery
Salah semua

Latihan

Perancangan Basis data

25

1.
2.
3.
4.
5.

Gambarkan dan jelaskan proses pengolahan data hingga
data tesebut dapat menjadi sebuah kebijakan (wisdom)!
Jelaskan mengenai masalah integritas data yang terjadi
jika kita menggunakan fle untuk menyimpan data!
Jelaskan mengenai mekanisme crash recovery pada DBMS
Jelaskan perbadaan antara entitas dan relasi dalam
konsep RDBMS
Apakah tujuan dari perancangan basis data?

1 ENTITY RELATIONSHIP MODEL

Overview

Salah satu pemodelan basis data secara konseptual adalah
pemodelan berbasis relasi antar entitas. Pemodelan ini
dikenal karena mudah dimengerti. Konsep utama dari
pemodelan ini berakar pada Entitas entitas dan relasi antar
entitas. Pada bab ini akan di bahas pengertian entitas, atribut
dan relasi, derajat himpunan relasi, kardinalitas relasi, serta
pengenalan key sebagai salah satu constraint dalam ER.

Tujuan

1. Mahasiswa memahami definisi salah pemodelan
konseptual basis data menggunakan ER.
2.
Mahasiswa memahami Konsep Entitas, Atribut, Relasi
dan Kardinalitas relasi.

1.1 ER Sebagai Salah Satu Pemodelan
Konseptual Basis Data
Didalam membuat sebuah Basis Data, hal pertama yang
harus dilakukan adalah mendesain tabel tabel yang akan
digunakan untuk menyimpan data sesuai bisnis proses yang
kita inginkan. Proses konseptual adalah pandangan secara
konsep tentang basis data. Pandangan konseptual ini
Perancangan Basis data

27

tentunya harus bisa diimplementasikan kedalam bentuk tabel,
karena basis data relasional hanya mengenal tabel.
ER adalah salah satu pemodelan basis data konseptual
yang menggambarkan basis data ke dalam bentuk EntitasEntitas dan Relasi yang terjadi di antara entitas-entitas yang
ada. Entitas diartikan sebagai ‘objek’ didunia nyata yang
bisa dibedakan dengan ‘objek’ yang lain. Relasi diartikan
sebagai hubungan yang terjadi diantara satu entitas dengan
entitas yang lainnya.

1.2 Entitas dan Himpunan Entitas
Definisi entitas adalah objek yang dirasa penting di
sistem tersebut, yg bisa berupa :

Objek Konkrit
Contoh : Orang, Buku

Objek Abstrak
Contoh : Jadwal, Pinjaman, Tabungan
Bambang adalah salah satu contoh dari entitas.
Sedangkan bambang, susi, sumarno merupakan himpunan
entitas orang. Dapat kita katakan bahwa Himpunan Entitas
(Entity Set): Sekelompok entitas yang sejenis dan berada
dalam lingkup yang sama. Kumpulan entitas orang dengan
karakteristik mempunyai nim, prodi, dsb bisa kita katakan
merupakan himpunan entitas mahasiwa. Entitas menunjuk
kepada pada individu suatu objek sedangkan himpunan
entitas menunjuk pada rumpun (family) dari individu
tersebut.

Entitas orang

Bambang
Susi
Sumarno

entitas orang

Mahasiswa

an entitas orang yang mempunyai kesamaan karakteristik yaitu nim, prodi, dsb membentuk himpunan entitas ‘mahas

Gambar 2-10 Himpunan Entitas Mahasiswa
Sebuah entitas / himpunan entitas dapat di gambarkan / di
notasikan dengan sebuah gambar persegi panjang.
Berikut merupakan contoh entitas mahasiwa, jadwal dan
pinjaman.

Mahasiswa

Jadwal

Pinjaman

Gambar 2-11 Contoh himpunan entitas
Setiap entitas mempunyai atribut yang melekat pada
entitas tersebut. Berikut gambaran konseptual basis data (*
entitas dan atribut) yang direfleksikan kedalam bentuk fisik
dari basis data (* tabel dan kolom).
Atribut Entitas

Entitas 1
Entitas 2
MAHASISWA

Perancangan Basis data

Entitas 3

29

Gambar 2-12 Gambaran Himpunan entitas di Tabel

1.3 Atribut
Atribut merupakan gambaran karakteristik dari sebuah
entitas atau himpunan entitas. Contoh : atribut untuk
himpunan entitas mahasiswa adalah nim, nama, alamat,
ipk, program studi, hobi, dsb.
Setiap atribut mempunyai domain value set yaitu
batasan batasan yg dibolehkan bagi suatu atribut.
Tipe – tipe atribut dapat dibedakan.
– Simple dan Composite
Atribut Simple yaitu suatu atribut yang tidak bisa
dibagi menjadi bagian yg lebih kecil lagi. Contoh
atribut simple adalah Jenis Kelamin.
Atribut Composite yaitu suatu atribut yang dapat di
bagi menjadi beberapa bagian. Contoh atribut
composite Nama dapat di bagi menjadi nama depan
dan nama belakang.

Gambar 2-13 Contoh Atribut Komposit
– Single value dan multivalued
Atribut Single value yaitu suatu atribut yang bisa di
isi paling banyak 1 nilai untuk setiap baris data.
Contoh atribut single value adalah Jenis Kelamin.
Atribut Multivalued yaitu suatu atribut yang bisa
lebih dari 1 nilai yang sejenis untuk setiap baris data.
Contoh atribut mutlivalued value adalah Alamat, No
telp dan hobi. Ketiga atribut tersebut bisa berisi lebih

dari 1. Contoh untuk 1 entitas oran