Modul Sistem Basis Data





LEMBAR PENULIS

Pembimbing : Nia Kumaladewi MMSI. - 197504122007102002
Kelas

: 3C – Sistem Informasi

Penulis

:
Nama

NIM

BAB 1 :
Maulana Rifan Haditama

(11190930000060)

BAB II :
Salman Yusuf

(11190930000051)

BAB III :
M Ridho Alghifari

(11190930000062)

BAB IV :
Muhammad Alvin Hilmy

(11190930000056)

BAB V :
Yayi Puspita Sari

(11190930000052)

BAB VI :
Aqshol Afifi

(11190930000057)

BAB VII :
Figo Alsistani

(11190930000054)

BAB VIII :
Hana Rahmaniah Sabila

(11190930000058)

BAB IX :
Annisa Rosdiyana

Editor

: Maulana Rifan Haditama & Salman Yusuf

Desain

(11190930000059)

: M. Ridho Alghifari
ii



KATA PENGANTAR
Puji syukur kami haturkan kehadirat Tuhan Yang Maha Esa, karena berkat rahmat serta
karunia-Nya penyusunan modul Sistem Basis Data ini bisa terselesaikan dengan baik. Kami
juga mengucapkan terima kasih kepada semua pihak yang telah mendukung dalam
terselesaikannya modul ini. Di antaranya Ibu Nia Kumaladewi MMSI. selaku dosen mata
kuliah Sistem Basis Data, serta teman-teman sekalian.
Adapun tujuan dari penulisan dari modul ini adalah untuk memenuhi tugas mata kuliah
Sistem Basis Data. Selain itu, modul ini juga bertujuan untuk menambah wawasan tentang
Sistem Basis Data bagi para pembaca dan juga bagi penulis. Kami pun senantiasa menyadari
bahwa masih terdapat kekurangan dalam modul ini. Baik dari segi penulisan maupun
pembahasan. Oleh sebab itu, kami mengharapkan saran dan kritik yang bersifat konstruktif
demi kebaikan di masa depan.

15 November 2020

Tim Penyusun

iii



DAFTAR ISI

LEMBAR PENULIS ............................................................................................................................. ii
KATA PENGANTAR .......................................................................................................................... iii
DAFTAR ISI......................................................................................................................................... iv
DAFTAR TABEL ................................................................................................................................ vi
DAFTAR GAMBAR ........................................................................................................................... vii
BAB I KONSEP DASAR...................................................................................................................... 9
1.1 Pendahuluan ................................................................................................................................ 9
1.2 Basis Data .................................................................................................................................. 10
1.3 Hirarki Data .............................................................................................................................. 10
1.4 Manfaat Basis Data ................................................................................................................... 11
1.5 Operasi Basis Data .................................................................................................................... 12
1.6 Persyaratan Basis Data ............................................................................................................. 13
1.7 Data Indepedency....................................................................................................................... 15
1.8 Integritas Data ........................................................................................................................... 16
BAB II SISTEM BASIS DATA ......................................................................................................... 19
2.1 Pengertian Sistem Basis Data ................................................................................................... 19
2.2 Komponen Sistem Basis Data .................................................................................................. 20
2.3 Abstraksi Data ........................................................................................................................... 22
2.4 Schema ....................................................................................................................................... 23
2.5 Bahasa Basis Data ..................................................................................................................... 24
BAB III DATABASE MANAGEMENT SYSTEMS ....................................................................... 30
3.1 Definisi dan Tujuan DBMS ...................................................................................................... 30
3.2 Komponen DBMS ..................................................................................................................... 32
3.3 Karakteristik DBMS ................................................................................................................. 32
3.4 Fungsi DBMS ............................................................................................................................ 34
3.5 Pengguna dalam DBMS ........................................................................................................... 36
3.6 Pengaplikasian DBMS di Berbagai Sektor ............................................................................. 37
3.7 Jenis-jenis DBMS ...................................................................................................................... 38
3.8 Kelebihan dan Kekurangan Penggunaan DBMS................................................................... 39
BAB IV MODEL DATA .................................................................................................................... 43
4.1 Pendahuluan .............................................................................................................................. 43
4.2 Varian relasi .............................................................................................................................. 46
4.3 Derajat relasi/kardinalitas ....................................................................................................... 48
iv



4.4 Model data tingkat lanjut ......................................................................................................... 49
BAB V ENHANCED ENTITY RELATIONSHIP (EER) MODEL ............................................... 52
5.1 Pendahuluan .............................................................................................................................. 52
5.2 Definisi Enhaced Entity Relationship (EER) Model ............................................................... 52
5.3 Konsep Enhaced Entity Relationship (EER) ........................................................................... 53
5.4 Tujuan dan Manfaat Enhanced Entity Relationship (EER) Model ..................................... 59
5.5 Kelebihan dan Kekurangan Enhanced Entity Relationship (EER) Model ......................... 59
BAB VI MODEL DATA RELASIONAL DAN HAMBATAN DATA RELASIONAL ............... 63
6.1 Pengertian model data relasional ............................................................................................ 63
6.2 Konsep Model Data Relasional ................................................................................................ 63
6.3 Batasan Integritas Data Relasional(constraint) ..................................................................... 64
6.4 Operasi dalam Model Data Relasional.................................................................................... 66
6.5 Praktik Terbaik untuk Membuat Model Data Relasional .................................................... 68
6.6 Keuntungan dan kerugian menggunakan model data relasional ......................................... 68
BAB VII TRANSFORMASI MODEL DATA.................................................................................. 75
7.1 Komponen-komponen penyusun model ER ........................................................................... 75
7.2 Cara Membuat Entity Relationship Diagram ........................................................................ 77
7.3 Transformasi model data ke basis data fisik .......................................................................... 79
7.4 Teknis untuk melakukan tranformasi ERD ke dalam basis data fisik ................................ 79
7.5 IMPLEMENTASI HIMPUNAN ENTITAS LEMAH DAN SUB ENTITAS ...................... 81
BAB VIII NORMALISASI DATA .................................................................................................... 86
8.1 Normalisasi Data ....................................................................................................................... 86
8.2 Bentuk-bentuk Normalisasi Data ............................................................................................ 86
8.3 Konsep Ketergantungan ........................................................................................................... 89
8.4 Status Kunci .............................................................................................................................. 91
8.5 Dekomposisi ............................................................................................................................... 92
BAB IX PENERAPAN NORMALISASI .......................................................................................... 97
9.1 Teknik Normalisasi ................................................................................................................... 97
9.2 Bentuk tidak normal ................................................................................................................. 97
9.3 Bentuk 1NF ................................................................................................................................ 98
9.4 Bentuk 2NF ................................................................................................................................ 99
9.5 Bentuk 3NF .............................................................................................................................. 100
9.6 Pengujian Normalisasi ............................................................................................................ 102
DAFTAR PUSTAKA ........................................................................................................................... ix
KESAN & PESAN PENULIS ............................................................................................................ xiv

v



DAFTAR TABEL

Tabel 3.1 Contoh pengaplikasian DBMS di berbagai sektor........................................ 38
Tabel 6.1 Batasan Utama ................................................................................................. 65
Tabel 8.1 Unnormalisasi ................................................................................................... 87
Tabel 8.2 First Normal Form ........................................................................................... 88
Tabel 8.3 Second Normal Form ....................................................................................... 88
Tabel 8.4 Third Normal Form ......................................................................................... 89
Tabel 8.5 Functional Dependency ................................................................................... 90
Tabel 8.6 Transitive Dependency .................................................................................... 90
Tabel 8.7 Trivial Dependency .......................................................................................... 91
Tabel 9.1 Unnormalisasi ................................................................................................... 98
Tabel 9.2 1NF .................................................................................................................... 98
Tabel 9.3 2NF .................................................................................................................... 100
Tabel 9.4 3NF .................................................................................................................... 101
Tabel 9.5 Pengujian Normalisasi ..................................................................................... 102

vi



DAFTAR GAMBAR
Gambar 1.1 Basis Data dalam sebuah Hard Disk ......................................................... 10
Gambar 1.2 Hirarki Data ................................................................................................. 10
Gambar 1.3 Independency Data Dalam Arsitektur Tiga Level ................................... 16
Gambar 1.4 Integrity Referensial.................................................................................... 17
Gambar 2.1 Komponen Sistem Basis Data ..................................................................... 20
Gambar 2.2 Level abstraksi data .................................................................................... 22
Gambar 2.3 Contoh penulisan schema ........................................................................... 24
Gambar 3.1 Beberapa software DBMS yang populer di dunia .................................... 32
Gambar 4.1 Entity Relationship Diagram ...................................................................... 44
Gambar 4.2 Simbol-simbol ERD ..................................................................................... 46
Gambar 4.3 Unary Relation ............................................................................................. 47
Gambar 4.4 N-ary Relation.............................................................................................. 47
Gambar 4.5 Relasi 1 ke 1.................................................................................................. 48
Gambar 4.6 Relasi 1 ke N ................................................................................................. 48
Gambar 4.7 Relasi N ke 1 ................................................................................................. 48
Gambar 4.8 Relasi M ke N ............................................................................................... 49
Gambar 5.1 EER diagram menggambarkan subclass dan superclass ........................ 54
Gambar 5.2 Constraints Spesialisasi / Generalisasi....................................................... 55
Gambar 5.3 Perbedaan Tanda Completeness Constraints Total dan Partial............. 55
Gambar 5.4 Perbedaan Ciri Disjointness Constraints : Disjoint dan Overlap ........... 56
Gambar 5.5 Contoh Kategorisasi. ................................................................................... 57
Gambar 5.6 Contoh Agregasi EER Model. .................................................................... 57
Gambar 5.7 Contoh Agregat Skema ER......................................................................... 58
vii



Gambar 5.8. Contoh Agregat........................................................................................... 59
Gambar 6.1 Tabel data ..................................................................................................... 64
Gambar 6.2 Batasan Integritas Referensial ................................................................... 66
Gambar 6.3 Insert ............................................................................................................. 67
Gambar 6.4 Update ........................................................................................................... 67
Gambar 6.5 Delete ............................................................................................................ 67
Gambar 6.6 Delete ............................................................................................................ 68
Gambar 7.1 Entitas ........................................................................................................... 75
Gambar 7.2 Atribut .......................................................................................................... 76
Gambar 7.3 Relasi Many to Many .................................................................................. 77
Gambar 7.4 Entity Relationship Diagram – Internet Sales Model .............................. 79
Gambar 7.5 Transformasi entitas menjadi sebuah tabel-tabel .................................... 80
Gambar 7.6 Transformasi entitas yang mempunyai drajat relasi 1-1......................... 80
Gambar 7.7 Transformasi entitas yang mempunyai drajat relasi N-1 ........................ 80
Gambar 7.8 Transformasi entitas yang mempunyai drajat relasi N-N ....................... 81
Gambar 7.9 Bentuk ERD dari suatu himpunan entitas lemah dan kuat .................... 81
Gambar 7.10 Bentuk Tabel yang terbentuk dari transformasi ERD pada gambar
nomer 7 ....................................................................................................... 82
Gambar 7.11 Sub entitas dan super entitas .................................................................... 82
Gambar 8.1 Status Kunci ................................................................................................. 92
Gambar 8.2 Dekomposisi ................................................................................................. 93
Gambar 8.3 Anomali ........................................................................................................ 94

viii



BAB I
KONSEP DASAR
Learning Outcome:


Memahami hirarki data yang diuraikan tentang elemen data, record, dan file



Mengetahui persyaratan basis data



Memahami Independency data dan Integritas data

1.1 Pendahuluan
Basis data (database) dapat dibayangkan sebagai sebuah lemari arsip. Jika kita memiliki
lemari arsip dan bertugas mengelolanya, maka akan melakukan hal-hal seperti; memberi
sampul, memberi nomor, lalu menempatkan arsip-arsip tersebut dengan urutan tertentu dalam
lemari tersebut. Kalau berbicara basis data pada masing-masing table atau file sesuai dengan
fungsinya, sehingga dengan mudah dapat melakukan penelusuran data yang diinginkan.
Masalah yang dihadapi pada lemari arsip adalah kelambatan dalam menelusuri data yang ada
pada lemari arsip tersebut, misalkan ingin mencari arsip untuk pegawai tertentu akan dihasilkan
dengan lambat, dikarenakan petugas harus mencari lembaran-lembaran yang ada pada
dokumen tersebut. Sedangkan kalau berbicara basis data, maka seluruh data disimpan dalam
basis data pada masing-masing table atau file sesuai dengan fungsinya, sehingga akan dengan
mudah dapat melakukan penelusuran data yang diinginkan, sehingga akan cepat mendapatkan
informasi yang diperlukan.

9



1.2 Basis Data

Basis data (database) adalah kumpulan informasi yang disimpan di dalam computer
secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk
memperoleh informasi dari basis data tersebut.
1.3 Hirarki Data

Gambar 1.2 Hirarki Data

Secara tradisional hirarki data dalam dikelompokkan menjadi 3 (tiga) buah yaitu;
Berkas (File / Tabel / Relasi), Rekaman (Record / Baris / Tuple), Elemen Data (Field / Atribut
/ Kolom). Berikut dapat dilihat pada gambar 1.2.

10



1.3.1 Elemen Data (Field)
Field merupakan data yang sejenis, yang terbentuk dari kumpulan record –
record yang menggambar kan kesatuan data. Misalnya pada matakuliah. yang berisi
tentang semua data tentang matakuliah tersebut.
1.3.2 Rekaman (Record)
Record merupakan suatu file yang telah terbentuk dari kumpulan record atau
kumpulan dari file. Record juga menggambarkan data dari individu – individu.
Contohnya : file dokumen.
1.3.3 Berkas (File)
Berkas merupakan data yang tersimpan di komputer atau arsip. Atau define lain
dari file ialah informasi – informasi yang terkumpul dan saling berhubungan yang di
simpan ke dalam secondary storage. Beberapa tipe yang di miliki konsep file, seperti
yang bertipe data binary, bertipe data numeric, dan ada juga character. Ada pun yang
bertipe program.
Beberapa contoh file yaitu :
Dokumen : pdf, doc, ods, html, odt, xls
Gambar

: tiff, jpeg, gif, jpg, png dan tif

Suara

: midi, wav, mp3, dan rm

Video

: flv, avi, 3gp, KV, wmv, mpeg, mpg

System

: exe, sys, tmp, com, bat, dan bak.

1.4 Manfaat Basis Data


Kecepatan dan Kemudahan (Speed), pemanfaatan database memungkinkan untuk dapat
menyimpan, merubah, dan menampilkan kembali data tersebut dengan lebih cepat dan
mudah.



Efisiensi Ruang Penyimpanan (Space), efisiensi penggunaan ruang penyimpanan dapat
dilakukan, karena penekatan jumlah redudansi data, baik dengan sejumlah pengkodean
atau dengan membuat tabel-tabel yang saling berhubungan (relational database).
11





Keakuratan (Accuracy), pembentukan relasi antar data bersama dengan penerapan
aturan / batasan (constraint) tipe, domain dan keunikan data dapat diterapkan dalam
sebuah database.



Ketersediaan (Availability), dapat memilah data utama / master, transaksi, data histori
hingga data kadaluwarsa. Data yang jarang atau tidak digunakan lagi dapat diatur dari
sistem database aktif.



Kelengkapan (Completeness), lengkap / tidaknya data dalam sebuah database bersifat
relatif. Bila pengguna sudah menganggap sudah lengkap yang lain belum tentu sama.



Keamanan (Security), untuk menentukan siapa saja yang berhak menggunakan
database beserta objek-objek di dalamnya dan menentukan jenis-jenis operasi apa saja
yang boleh dilakukan.



Kebersamaan pengguna (sharebility), database dapat digunakan oleh beberapa
pengguna dan beberapa lokasi. Database yang dikelola oleh sistem (aplikasi) yang
mendukung multiuser dapat memenuhi kebutuhan, akan tetapi harus menghindari
inkonsistensi data.

1.5 Operasi Basis Data
Di dalam sebuah disk, basis data dapat diciptakan dan dapat pula ditiadakan. Di dalam
sebuah disk, kita dapat pula menempatkan beberapa (lebih dari satu) basis data. Sementara
dalam sebuah basis data, kita dapat menempatkan satu atau lebih file/tabel. Pada file/tabel
inilah sesungguhnya data dapat disimpan/ditempatkan. Setiap basis data umumnya dibuat
untuk mewakili sebuah semesta data yang spesifik. Misalnya, ada basis data kepegawaian,
basis data akademik, basis data inventori (pergudangan), dan sebagainya. Sementara dalam
basis data akademik, misalnya kita dapat menempatkan file mahasiswa, file mata_kuuliah, file
dosen, file jadual, file kehadiran, file nilai, dan seterusnya. Operasi-operasi dasar yang dapat
kita lakukan berkenaan dengan basis data dapat meliputi:


Pembuatan basis data baru (create database), yang identik dengan pembuatan lemari
arsip yang baru.



Penghapusan basis data (drop database), yang identik dengan perusakan lemari arsip
(sekaligus beserta isinya jika ada).



Pembuatan file/tabel baru ke suatu basis data (create table), yang identik dengan
penambahan map arsip baru ke sebuah lemari arsip yang telah ada.
12





Penghapusan file/tabel dari suatu basis data (drop table), yang identik dengan
perusakan map arsip lama yang ada di sebuah lemari arsip.



Penambahan/pengisian data baru ke sebuah file/tabel di sebuah basis data (insert),
yang identik dengan penambahan lembaran arsip ke sebuah map arsip.



Pengambilan data dari sebuah file/tabel (retrieve/search), yang identik dengan
pencarian lembaran arsip dari sebuah map arsip.



Pengubahan data dari sebuah file/tabel (update), yang identik dengan perbaikan isi
lembaran arsip yang ada di sebuah map arsip.



Penghapusan data dari sebuah file/tabel (delete), yang identik dengan penghapusan
sebuah lembaran arsip yang ada di sebuah map arsip.
Operasi yang berkenaan dengan pembuatan objek (basis data dan tabel)
merupakan operasi awal yang hanya dilakukan sekali dan berlaku seterusnya. Sedang
operasi-operasi yang berkaitan dengan isi tabel (data) merupakan operasi rutin yang
akan berlangsung berulang-ulang dan karena itu operasi-operasi inilah yang lebih tepat
mewakili aktivitas pengelolaan (management) dan pengolahan (processing) data dalam
basis data.

1.6 Persyaratan Basis Data
Ketentuan yang harus diperhatikan pada pembuatan file basis data agar dapat
memenuhi kriteria sebagai basis data, yaitu: redudansi data, inkonsistensi data, pengaksesan
data, data terisolasi untuk standarisasi, masalah keamanan, masalah integritas data, dan
multiuser.
1.6.1 Redudansi dan Inkonsistensi Data
Redundasi data merupakan adanya duplikasi data dalam beberapa file data yang
sama disimpan di dalam lebih dari satu lokasi. Redundasi data terjadi kelompok yang
berbeda di dalam suatu orgainisasi mendaptkan data yang sama secara independen dan
menyimpannya secara independen juga. Redundasi data menghabiskan tempat
penyimpanan data dan menimbulkan inkonsistensi data, dalam arti atribut yang sama
mungkin nilai yang berbeda.

13



Contoh Redundasi yaitu:
• Didalam sistem yang menggunakan input indentitas mahasiswa tapi di sistem yang
lain menginputnya menggunakan indentitas saja.
• Pada sistem pengkodean yang berbeda , misanya pada toko pakaian mengguanakan
kode yang berbeda pada penjualan, persediaan, dan sistem produksi dengan kode yang
digunakan untuk mengkode ukuran akaian yang dijual kepelanggan.
1.6.2 Pengaksesan Data
Data dalam basis data harus siap diakses oleh siapa saja yang membutuhkan dan
mempunyai hak untuk mengkasesnya. Oleh karena itu perlu dibuat suatu program
pengelolaan atau suatu system aplikasi untuk mengakses data yang dikenal sebagai
Database Management System (DBMS).
1.6.3 Data Terisolasi untuk Standarisasi
Jika data tersebar dalam beberapa file dalam bentuk format yang tidak sama,
maka akan menyulitkan dalam menulis program aplikasi, baik untuk mengambil dan
menyimpan data. Oleh karena itu dalam satu database harus dibuat satu format yang
sama sehingga mudah dibuat program aplikasinya.
1.6.4 Masalah Keamanan (Security)
Setiap pemakai system basis data tidak semua bagian diperbolehkan untuk
mengakses semua data, misalnya data mengenai gaji pegawai hanya boleh dibukka oleh
bagian keuangan, sedang bagian Gudang dan bagian lain tidak diperkenankan untuk
membukanya. Keamanan dapat diatur dan disesuaikan baik ditingkat basis data atau
aplikasinya.
1.6.5 Multiple User
Salah satu alasan basis data dibangun karena nantinya data tersebut akan
digunakan oleh banyak orang, baik dalam waktu berbeda maupun bersamaan. Oleh
karena itu diperlukan basis data yang handal dan dapat mendukung banyak pemakai
atau multiuser.

14



1.7 Data Indepedency
Tujuan utama dari 3 tingkat arsitektur adalah memelihara kemandirian data (data
independence) yang berarti perubahan yang terjadi pada tingkat yang lebih rendah tidak
mempengaruhi tingkat yang lebih tinggi.Ada 2 jenis data independence, yaitu:
1.7.1 Physical Data Independence
bahwa internal schema dapat diubah oleh DBA tanpa menggangu conceptual
schema. Dengan kata lain physical data independence menunjukkan kekebalan
conceptual schema terhadap perubahan internal schema.
Contoh : – Menambah indeks tambahan
– Merubah penyimpanan data
– Merubah organisasi file dari sequential ke index sequential
1.7.2. Logical Data Independence
bahwa conceptual schema dapat diubah oleh DBA tanpa menggangu external
schema. Dengan kata lain logical data independence menunjukkan kekebalan external
schema terhadap perubahan conceptual schema.
Contoh : – Menambah dan menghapus suatu tipe record
– Merubah format data
Prinsip data independence adalah salah satu hal yang harus diterapkan di dalam
pengelolaan sistem basis data dengan alasan-alasan sbb :
1. DBA dapat mengubah isi, lokasi, perwujudan dalam organisasi basis data tanpa
mengganggu program-program aplikasi yang sudah ada.
2. Pabrik/agen peralatan/software pengolahan data dapat memperkenalkan produkproduk baru tanpa mengganggu program-program aplikasi yang sudah ada.
3. Untuk memindahkan perkembangan program-program aplikasi
15



4. Memberikan fasilitas pengontrolan terpusat oleh DBA demi keamanan dan integritas
data

dengan

memperhatikan

perubahan-perubahan

kebutuhan

pengguna.

Mapping ( Transformasi )
Proses pendefinisian informasi dari satu level ke level lainnya.
Konseptual/Internal Mapping
Pendefinisian hubungan antara view konseptual dengan basis data di level internal.
(Bagaimana record-record / field-filed didalam level konseptual didefinisikan di level
internal)
Eksternal/Konseptual Mapping
Pendefinisikan hungan antra view konseptual dengan view eksternal

Gambar 1.3 Independency Data Dalam Arsitektur Tiga Level

1.8 Integritas Data
Integritas data adalah menjamin konsistensi data terhadap semua konstrain yang
diberlakukan terhadap data tersebut, sehingga memberikan jaminan keabsahan data itu sendiri.
Tujuannya adalah menjaga data agar data yang tidak valid tidak masuk ke database. Menjaga
konsistensi data pada relasi keterkaitan antar tabel.

16



Integritas data dapat dikelompokkan sebagai berikut :
1.8.1 Domain Integrity
Domain Integritas merupakan validasi dari masukan untuk sebuah kolom. Anda
dapat memaksa domain integritas dengan membatasi tipe (melalui data types), format
(melalui

check

constraints

dan

rules),

atau

range

nilai-

nilai yang mungkin (melalui Foreign Key Constraints, Check Constraints, Default
Definitions dan rules).
1.8.2 Integrity Entity
Entity integritas mendefenisikan sebuah baris sebagai sebuah entitas yang unik
untuk suatu tabel. Entity integritas memaksa integritas dari colum atau primary key
dari suatu tabel (melalui index, unique, constrains, primarykey) tidak boleh null.
1.8.3 Integrity Referensial
Integrity Referensial memastikan bahwa seluruh nilai dari foreign key cocok
dengan nilai primary key yang dihubungkan.

Gambar 1.4 Integrity Referensial

17



LATIHAN
SOAL
1. Uraikan hirarki data secara tradisional!
2. Apakah operasi untuk membuat basis data baru?
3. Apakah operasi untuk mengubah data dalam sebuah file/table?
4. Sebutkan dimensi yang ada pada data independency?
5. Apa pengertian dari integrity referensial?

JAWABAN
1. Hirarki data secara tradisional dibagi manjadi 3 yaitu berkas, rekaman, dan elemen data
2. Operasi untuk pembuatan basis data baru adalah CREATE DATABASE
3. Operasi untuk mengubah data dalam file adalah UPDATE
4. - Physical data independency
- Logical data independency
5. Garis yang menghubungkan kunci tamu (foreign key) di suatu table dengan kunci primer
(primary key) di table lainnya

18



BAB II
SISTEM BASIS DATA
Learning Outcome :


Memahami definisi dan tujuan dari Sistem Basis Data



Mengetahui komponen-komponen utama dari Sistem Basis Data



Memahami abstraksi data dan pembagian levelnya



Memahami schema Sistem Basis Data



Mengetahui Bahasa yang digunakan dalam Sistem Basis Data

2.1 Pengertian Sistem Basis Data

2.1.1 Basis Data
Basis Data atau database, berasal dari kata Basis dan Data, adapun pengertian
dari kedua pengertian tersebut adalah sebagai berikut :


Basis : dapat diartikan sebagai markas atau gudang, tempat bersarang atau
berkumpul.



Data : representasi fakta dunia nyata yang mewakili suatu objek seperti manusia
(pegawai, siswa, pembeli, pelanggan), barang, hewan , peristiwa, konsep, keadaan,
dan sebagainya yang direkam dalam bentuk angka, huruf, simbol, teks, gambar,
bunyi, atau kombinasinya.
Basis Data sebagai satu kesatuan dapat didefinisikan sebagai berikut:



Himpunan kelompok data (arsip) yang saling berhubungan yang di organisasi
sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.



Kumpulan data yang saling berhubungan yang disimpan secara bersama
sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk
memenuhi berbagai kebutuhan.



Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media
penyimpanan elektronik. Untuk selanjutnya disebut Tabel (Table), sebagai
komponen utama untuk membangun Basis Data (Fathahansyah, 2012).



Basis Data atau Database adalah kumpulan data terkait. Yang dimaksud dengan
data adalah fakta yang diketahui yang dapat direkam dan memiliki arti tersirat.
Misalnya nama, nomor telepon, dan alamat (Elmasri & Navathe, 2004).

19



2.1.2 Sistem Basis Data
Berbeda dengan Basis Data (Database), Sistem Basis Data dapat di artikan suatu
sistem yang didalamnya terdiri dari koleksi data atau dari suatu kumpulan data yang
saling berhubungan dan memungkinkan berbagai program untuk mangakses dan
memanipulasi data tersebut. Sistem Basis Data juga merupakan suatu sistem yang
menyusun dan mengelola data organisasi perusahaan, sehingga mampu menyediakan
informasi yang diperlukan oleh pemakai (Yakub, 2008, h.16).
2.2 Komponen Sistem Basis Data

Gambar 2.1. Komponen Sistem Basis Data

Menurut (Fathansyah, 2012), dalam sebuah basis data, secara lengkap akan terdapat
komponen-komponen utama sebagai berikut:
2.2.1 Perangkat Keras (Hardware)
Perangkat keras yang biasanya terdapat dalam sebuah sistem basis data adalah :
Perangkat keras yang biasanya terdapat dalam sebuah sistem basis data adalah :
a. Komputer (satu untuk sistem stand alone atau lebih dari satu untuk sistem
jaringan).
b. Memori sekunder yang on line (Harddisk).
c. Memori sekunder yang off line (Tape atau removable disk) untuk keperluan
backup data.
d. Media/perangkat komunikasi (untuk sistem jaringan).
2.2.2

Sistem Operasi (Operating System)
Sistem operasi merupakan program yang mengaktifkan sistem komputer,

mengendalikan seluruh sumber daya (resource) dalam komputer dan melakukan
20



operasi-operasi dasar dalam komputer (operasi I/O, pengelolaan file, dan lain-lain).
Sejumlah sistem operasi yang banyak digunakan seperti : MS-DOS, MS-Windows,
Linux (untuk komputer stand alone atau komputer client dalam sistem jaringan) atau
Novel-Netware, MS-Windows server, Unix, Linux (untuk komputer server dalam
sistem jaringan komputer).
2.2.3 Basis Data (Database)
Sebuah sistem basis data dapat memiliki beberapa basis data. Setiap basis data
berisi sejumlah objek basis data (seperti tabel, indeks, dan lain-lain).
2.2.4 Sistem (Aplikasi/Perangkat Lunak) Pengelola Basis Data (DBMS)
Pengelolaan basis data secara fisik tidak dilakukan oleh pemakai secara langsung,
tetapi ditangani oleh sebuah perangkat lunak (sistem) yang khusus. Perangkat lunak
inilah (disebut DBMS) yang akan menentukan bagaimana data diorganisasi, disimpan,
diubah dan diambil kembali. Ia juga menerapkan mekanisme pengamanan data,
pemakaian data secara bersama, pemaksaan keakuratan/konsistensi data, dan
sebagainya.
2.2.5 Pemakai (User)
Ada beberapa jenis atau tipe pemakai terhadap suatu sistem basis data yang
dibedakan berdasarkan cara mereka berinteraksi terhadap sistem :
o Programmer Aplikasi
Pemakai yang berinteraksi dengan basis data melalui Data Manipulation Language
(DML), yang disertakan (embedded) dalam program yang ditulis dalam bahasa
pemrograman induk (seperti C, C++, Pascal, PHP, Java, dan lain-lain).
o User Mahir (Casual User)
Pemakai yang berinteraksi dengan sistem tanpa menulis modul program. Mereka
menyatakan query (untuk akses data) dengan bahasa query yang telah disediakan
oleh DBMS.
o User Umum (End User/Naïve user)
Pemakai yang berinteraksi dengan sistem basis data melalui pemanggilan satu
program aplikasi permanen (executable program) yang telah disediakan
sebelumnya.

21



o User Khusus (Specialized User)
Pemakai yang meulis aplikasi basis data non konvensional, tetapi untuk
keperluan-keperluan khsusus, seperti aplikasi Artificial Intelligence, Sistem
Pakar, Pengolahan citra, dan lain-lain, yang bias saja mengakses basis data
dengan atau tanpa DBMS yang bersangkutan.
2.2.6 Aplikasi (Perangkat Lunak) lain
Aplikasi (perangkat lunak) ini bersifat optional. Artinya, ada atau tidaknya
tergantung pada kebutuhan kita.
2.3 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. Terdapat 3 level abstraksi :

Gambar 2.2. Level abstraksi data

2.3.1

Level Fisik (Physical Level)
Lapis fisik merupakan lapis terendah, lapis ini menjelaskan bagaimana (how)

data sesungguhnya disimpan. Pada lapis inilah struktur data dijabarkan secara rinci.
2.3.2

Level Logika / Konseptual (Conceptual Level)
Lapis konseptual lebih tinggi dari lapis fisik. Lapis ini menjabarkan data apa

saja yang sesungguhnya disimpan pada basis data, dan juga menjabarkan hubunganhubungan antar data secara keseluruhan. Seorang pengguna dalam level ini dapat
22



mengetahui bahwa data mahasiswa disimpan pada tabel mahasiswa, tabel krs, tabel
transkrip dan lain sebagainya. Level ini biasa dipakai oleh DBA.
2.3.3

Level Penampakan / pandangan (View Level)
Lapis pandangan merupakan lapis tertinggi pada abstraksi data. Pada lapis ini

pengguna hanya mengenal struktur data yang sederhana, yang berorientasi pada
kebutuhan pengguna. Data yang dikenal oleh masing-masing pengguna bisa berbedabeda dan barangkali hanya mencakup sebagian dari basis data. Misalnya: Bagian
keuangan hanya membutuhkan data keuangan, jadi yang digambarkan hanya
pandangan terhadap data keuangan saja, begitu juga dengan bagian akuntansi, hanya
membutuhkan data akuntansi saja. Jadi tidak semua pengguna database membutuhkan
seluruh informasi yang terdapat dalam database tersebut.
2.4 Schema
Menurut (Connolly & Begg, 2015), deskripsi keseluruhan dari database disebut skema
database. Ada tiga tipe skema yang berbeda dalam database dan ini didefinisikan sesuai dengan
level abstraksi dari arsitektur tiga level.
2.4.1 Schema
Schema memberikan deskripsi hubungan antar data dalam basis data secara
lengkap dan menunjukkan pandangan seorang perancang yang digunakan pada lingkup
sistem atau organisasi secara keseluruhan.
2.4.2 Subschema
Merupakan deskripsi terpisah dari atribut, record, dan batasan nilai yang akan
digunakan oleh sebuah program aplikasi. Subschema menunjukkan pandangan seorang
programmer.
2.4.3 Instance Schema
Instance Schema menunjukkan isian nilai-nilai aktual elemen data dalam sebuah relasi
yang direpresentasikan dalam bentuk tabel.

23



Gambar 2.3. Contoh penulisan schema.

DBMS bertanggung jawab untuk memetakan antara tiga jenis skema ini. Itu juga harus
memeriksa skema untuk konsistensinya. Dengan kata lain, DBMS harus mengkonfirmasi
bahwa setiap skema eksternal dapat diturunkan dari skema konseptual, dan harus menggunakan
informasi dalam skema konseptual untuk memetakan antara setiap skema eksternal dan skema
internal. Skema konseptual terkait dengan skema internal melalui pemetaan konseptual /
internal. Pemetaan ini memungkinkan DBMS untuk menemukan catatan aktual atau kombinasi
catatan dalam penyimpanan fisik yang merupakan catatan logis dalam skema konseptual,
bersama dengan batasan apa pun yang akan diterapkan pada operasi untuk catatan logis
tersebut. Ini juga memungkinkan setiap perbedaan dalam nama entitas, nama atribut, urutan
atribut, tipe data, dan sebagainya untuk diselesaikan. Akhirnya, setiap skema eksternal terkait
dengan skema konseptual oleh pemetaan eksternal / konseptual. Pemetaan ini memungkinkan
DBMS untuk memetakan nama dalam tampilan pengguna ke bagian yang relevan dari skema
konseptual.
2.5 Bahasa Basis Data
Bahasa Basis Data (Database Language) merupakan bahasa yang digunakan oleh user
atau pemakai untuk berkomunikasi/berinteraksi dengan DBMS (Database Management
System) yang bersangkutan. Contoh dari Bahasa Basis Data adalah misalnya SQL, dBase,
QUEL dsb.

24



2.5.1 SQL (Structured Query Language)
Structured Query Language (SQL) adalah sekumpulan perintah khusus yang
digunakan untuk mengakses data dalam database relasional. SQL merupakan sebuah
bahasa komputer yang mengikuti standar ANSI (American Nasional Standard Institute)
yang digunakan dalam manajemen database relasional. Dengan SQL, kita dapat
mengakses database, menjalankan query untuk mengambil data dari database,
menambahkan data ke database, menghapus data di dalam database, dan mengubah
data di dalam database. Saat ini hampir semua server database yang ada mendukung
SQL untuk melakukan manajemen datanya.
2.5.2 dBase
dBASE adalah sebuah sistem manajemen basisdata (DBMS) yang secara luas
digunakan pada mikrokomputer yang dikenalkan oleh Ashton-Tate untuk komputer
CP/M, dan kemudian untuk platform Apple II, Apple Macintosh dan IBM PC dengan
DOS yang menjadi salah satu perangkat lunak yang paling laris selama beberapa tahun
pada saat itu. Ketidakmampuan dBASE untuk bertransisi dengan sistem operasi yang
lebih baru, Microsoft Windows pada akhirnya membuat penggunaan dBASE
tergantikan oleh produk-produk lainnya yang lebih baru seperti Paradox, Clipper,
FoxPro, dan Microsoft Access. kepemilikan dBASE pada akhirnya dijual ke Borland
pada tahun 1991 dan pada tahun 1999 Borland menjual hak atas jajaran produk dBASE
pada sebuah perusahaan baru dBASE Inc. Dimulai dari pertengahan tahun 1980-an
banyak vendor membuat dialek ataupun variasi pada produk mereka ataupun pada
bahasanya sendiri. Termasuk didalamnya FoxPro (sekarang dikenal sebagai Visual
FoxPro), Quicksilver, Clipper, Xbase++, Flagship, dan Harbour. Mereka-meraka iniah
yang secara informal dikenal atau disebut sebagai xBase atau XBase. Dasar file format
dBASE, yang dikenal sebagai file .dbf, saat ini merupakan salah satu format yang luas
digunakan oleh banyak aplikasi yang membutuhkan format sederhana untuk
menyimpan data-data secara terstruktur. dBASE dilinsensikan pada penggunanya
untuk jangka waktu lima puluh tahun dalam masa yang tidak mungkin bagi pengguna
untuk mengoperasikan dBASE selama jangka waktu tersebut.
2.5.3 Quel (Query by Example)
QUEL adalah bahasa akses database relasional, serupa dengan cara yang paling
untuk SQL. Diciptakan sebagai bagian dari Ingres usaha di University of California,
Berkeley, berdasarkan Codd sebelumnya menyarankan tetapi tidak dilaksanakan Data
25



Sub-Language ALPHA. QUEL digunakan untuk waktu yang singkat di sebagian besar
produk berdasarkan kode sumber Ingres yang tersedia secara bebas, terutama
PostgreSQL. Sebagai Oracle dan DB2 memperoleh pangsa pasar di awal 1980-an,
sebagian besar perusahaan kemudian mendukung QUEL pindah ke SQL sebagai
gantinya.QUEL terus menjadi tersedia sebagai bagian dari Ingres DBMS, meskipun
tidak ada bahasa khusus QUEL perangkat tambahan telah ditambahkan selama
bertahun-tahun.
Berdasarkan fungsinya bahasa basis data dapat dipilah 3 bentuk, yaitu DCL (Data
Control Language), DDL (Data Definition Language), dan DML (Data Manipulation
Language).
2.5.4 DCL (Data Control Language)
DCL (Data Control Language) merupakan sub bahasa SQL yang digunakan
untuk mengontrol data dan server basis Datanya. Terdapat dua perintah pada DCL
yaitu:


Grant : memberikan hak-hak tertentu bagi user



Revoke : mencabut hak-hak dari seorang user terhadap database tertentu atau
sebagian isi dari database.

2.5.5 DDL (Data Definition Language)
Data Definition 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 adalah kumpulan tabel yang tersimpan pada sebuah file
khusus yang disebut dengan kamus data (data dictionary) atau data directory. Kamus
data merupakan sebuah file yang berupa metadata, yaitu data tentang data. Kamus data
ini akan selalu diakses pada suatu operasi basis data sebelum suatu file data yang
sesungguhnya diakses. DDL merupakan bagian dari perintah SQL untuk:


Create : table, view, sequence, synonym, user, index



Drop : table, view, sequence, synonym, index, user



Alter : table, view, sequence, index, user



Rename



Truncate



Comment
26



2.5.6 DML (Data Manipulation Language)
DML (Data Manipulation Language) adalah bentuk bahasa basis data untuk
melakukan manipulasi dan pengambilan data pada suatu basis data. Manipulasi data
pada basis data dapat berupa :


penyisipan atau penambahan data pada file atau tabel dalam suatu basis data.
(insert)



penghapusan data pada file atau tabel dalam suatu basis data. (delete)



Pengubahan data file atau tabel dalam suatu basis data. (update)



Penelusuran data file atau tabel dalam suatu basis data. (search)
DML merupakan bahasa yang bertujuan memudahkan pemakai untuk

mengakses data sebagaimana dipresentasikan oleh model data. Ada dua jenis DML
yaitu:


Prosedural, yang mensyaratkan pemakai menentukan data apa yang diinginkan
serta bagaimana cara mendapatkannya. contoh : dBAse,FoxBase.



Nonprosedural (Deklaratif), yang membuat pemakai data menentukan data apa
yang diinginkan tanpa menyebutkan bagaimana mendapatkannya. Contoh:
SQL,QBE.

2.5.7 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 perubahanperubahan data yang ada pada basis data. Contoh dari transaction control ini adalah
perintah commit dan rollback.

27



LATIHAN
SOAL
1. Sebutkan komponen-komponen utama di dalam Sistem Basis Data.
2. Jelaskan perbedaan antara schema dengan subschema pada Sistem Basis Data.
3. Jelaskan apa yang dimaksud dengan Bahasa Data Definition Language (DDL).
4. Sebutkan dan jelaskan tiga level abstraksi data.
5. Jelaskan apa yang dimaksud dengan data dan sebutkan contohnya.
JAWABAN
1. 1.) Perangkat Keras (Hardware).
2.) Sistem Operasi (Operating System).
3.) Basis Data (Database).
4.) Sistem (Aplikasi/Perangkat Lunak) Pengelola Basis Data (DBMS).
5.) Pemakai (User).
6.) Aplikasi (Perangkat Lunak) lainnya.
2. Schema merupakan deskripsi hubungan antar data dalam basis data secara lengkap dan
menunjukkan pandangan seorang perancang yang digunakan pada lingkup sistem atau
organisasi secara keseluruhan, sedangkan Subschema merupakan deskripsi terpisah
dari atribut, record, dan batasan nilai yang akan digunakan oleh sebuah program
aplikasi. Subschema menunjukkan pandangan seorang programmer.
3. Data Definition Language adalah Bahasa yang 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 adalah kumpulan tabel yang tersimpan pada
sebuah file khusus yang disebut dengan kamus data (data dictionary) atau data
directory.
4. 1.) Level Fisik (Physical Level). Lapis fisik merupakan lapis terendah, lapis ini
menjelaskan bagaimana (how) data sesungguhnya disimpan. Pada lapis inilah struktur
data dijabarkan secara rinci.
28



2.) Level Logika / Konseptual (Conceptual Level). Lapis konseptual lebih tinggi dari
lapis fisik. Lapis ini menjabarkan data apa saja yang sesungguhnya disimpan pada basis
data, dan juga menjabarkan hubungan-hubungan antar data secara keseluruhan.
3.) Level Penampakan / pandangan (View Level). Lapis pandangan merupakan lapis
tertinggi pada abstraksi data. Pada lapis ini pengguna hanya mengenal struktur data
yang sederhana, yang berorientasi pada kebutuhan pengguna.
5. Yang dimaksud dengan data adalah fakta yang diketahui yang dapat direkam dan
memiliki arti tersirat. Contohnya dari data adalah nama, nomor telepon, dan alamat.

29



BAB III
DATABASE MANAGEMENT SYSTEMS
Learning Outcome:


Memahami definisi DBMS dan tujuan dibuatnya DBMS



Mengetahui komponen-komponen, karakteristik, dan fungsi-fungsi DBMS



Mengetahui macam pengguna dan pengaplikasian DBMS di berbagai sektor



Memahami jenis-jenis DBMS



Mengetahui kelebihan dan kekurangan dalam penerapan DBMS

3.1 Definisi dan Tujuan DBMS
Database Management Systems atau DBMS adalah suatu sistem atau software yang
dirancang khusus untuk mengelola suatu database dan menjalankan operasi terhadap data yang
diminta oleh banyak pengguna. Agar lebih memahami definisi DBMS, maka kita dapat
merujuk pada pendapat para ahli berikut ini:
3.1.1

Rogayah
DBMS adalah suatu sistem yang dapat menyusun dan mengelola berbagai

record menggunakan komputer untuk menyimpan atau merekam serta memelihara data
operasional lengkap sebuah organisasi/perusahaan sehingga dapat menyediakan
informasi yang optimal yang dibutuhkan dalam proses mengambil keputusan.
3.1.2

C.J. Date
DBMS adalah tempat atau lokasi untuk sekumpulan berkas data yang sudah

terkomputerisasi dengan tujuan untuk memelihara informasi, dan juga memuat
informasi tersebut, terutama apabila informasi tersebut sedang dibutuhkan.
3.1.3

S. Attre
DBMS adalah semua yang berkaitan dengan software, hardware, firmware dan

berbagai prosedur yang mengelola database. Firmware adalah software yang telah
menjadi modul yang tertanam pada hardware (ROM).

30



3.1.4

Gordon C. Everest
DBMS adalah manajemen yang efektif untuk mengorganidit sumber daya data.

Dengan kata lain, Sistem Basis Data adalah sistem pengorganisasian dan sistem
pengolahan Database pada komputer.
Tujuan utama penggunaan DBMS dalam jaringan komputer adalah untuk menghindari
kekacauan dalam hal pengolahan data dalam jumlah besar, dimana DBMS berfungsi sebagai
perangkat yang berguna untuk mengorganisasi sumber daya data perusahaan. Berikut ini
beberapa tujuan penggunaan DBMS pada jaringan komputer perusahaan:


Agar basis data dapat digunakan secara bersama



Agar proses akses data lebih mudah dan cepat



Untuk menghemat ruang penyimpanan data



Membantu menjaga keamanan data



Mencegah dan menghilangkan duplikasi dan inkonsistentsi data



Menangani data dalam jumlah yang besar
DBMS merupakan perantara bagi pengguna dan database, dan agar dapat berinteraksi

dengan DBMS maka pengguna harus memakai bahasa database yang sudah ditentukan. Ada
dua jenis bahasa komputer yang dapat digunakan dalam berinteraksi dengan DBMS, yaitu:


Data Definition Language (DDL); digunakan untuk menggambarkan desain dari basis
data secara keseluruhan, mulai dari membuat tabel baru, memuat indeks, maupun
mengubah tabel.



Data Manipulation Language (DML); digunakan untuk memanipulasi dan mengambil
data dari database, menghapus data dari database, dan mengubah data pada suatu
database.

31



Gambar 3.1 Beberapa software DBMS yang populer di dunia.

Beberapa software DBMS yang populer diantaranya MySQL, Microsoft Access,
Oracle, PostgreSQL, dBASE, dan SQLite.
3.2 Komponen DBMS
Pada umumnya DBMS memiliki beberapa komponen fungsional atau modul. Adapun
beberapa komponen DBMS adalah sebagai berikut:
a. File Manager; komponen yang mengelola ruang di dalam disk dan juga struktur data
yang digunakan untuk merepresentasikan informasi yang tersimpan pada disk.
b. Database Manager; komponen yang menyediakan interface antar data low-level yang
terdapat pada basis data dengan program aplikasi serta query yang diberikan ke suatu
sistem.
c. Query Processor; komponen yang berfungsi menerjemahkan perintah dalam bahasa
query ke instruksi low-level yang dapat dimengerti database manager.
d. DML Precompiler; komponen yang mengkonversi perintah DML, yang ditambahkan
pada suatu program aplikasi ke pemain prosedur normal dalam bahasa induk.
e. DDL Compiler; komponen yang mengkonversi berbagai perintah DDL ke dalam
sekumpulan tabel yang mengandung meta data.
3.3 Karakteristik DBMS
Secara tradisional, data diatur dalam format file. Lalu, DBMS datang sebagai konsep
baru dan semua penelitian dilakukan untuk membuat DBMS mengatasi segala kekurangan
gaya tradisional dalam manajemen data. DBMS modern memiliki karakteristik sebagi berikut.
32



3.3.1

Entitas Dunia Nyata
DBMS lebih realistis dan menggunakan entitas dari dunia nyata untuk

merancang arsitekturnya. Misalnya, database sekolah dapat menggunakan siswa
sebagai entitas dan usia mereka sebagai atribut.
3.3.2

Tabel Berbasis Relasi
DBMS memungkinkan entitas dan relasi untuk membentuk tabel. Pengguna

dapat memahami arsitektur database hanya dengan melihat nama tabel.
3.3.3

Isolasi Data dan Aplikasi
Sistem database berbeda dari data. Database adalah entitas aktif, sedangkan data

pasif, di mana database bekerja dan mengatur data-data tersebut. DBMS juga
menyimpan metadata, yaitu data tentang data, untuk memudahkan prosesnya di dalam
DBMS.
3.3.4

Meminimalisir Redudansi Data
DBMS mengikuti aturan normalisasi, yang membagi relasi ketika salah satu

nilai atributnya mengalami redundansi. Normalisasi adalah proses yang kaya secara
matematis dan ilmiah yang dapat mengurangi redundansi data.
3.3.5

Konsistensi

Konsistensi adalah keadaan di mana setiap relasi dalam database tetap konsisten.
DBMS memiliki metode dan teknik yang dapat mendeteksi apabila database dalam
keadaan tidak konsisten.
3.3.6

Bahasa Query

DBMS dilengkapi dengan bahasa query, yang membuatnya lebih efisien untuk
mengambil dan memanipulasi data. Pengguna dapat menerapkan banyak opsi
pemfilteran yang berbeda seperti yang diperlukan untuk mengambil sekumpulan data.
3.3.7

ACID Properties
DBMS mengikuti konsep Atomicity, Consistency, Isolation, dan Durability

(ACID). Konsep-konsep ini diterapkan pada transaksi, yang memanipulasi data dalam
33



database. Sifat ACID membantu database tetap sehat di lingkungan multi-transaksional
dan jika terjadi kegagalan.
3.3.8

Multiuser and Concurrent Access
DBMS mendukung lingkungan multi-user dan memungkinkan mereka untuk

mengakses dan memanipulasi data secara paralel. Meskipun ada pembatasan transaksi
ketika pengguna mencoba menangani item data yang sama, tetapi pengguna selalu tidak
menyadarinya.
3.3.9

Multiple views
DBMS menawarkan beberapa tampilan untuk pengguna yang berbeda.

Pengguna yang berada di departemen Penjualan akan memiliki tampilan database yang
berbeda dari seseorang yang bekerja di departemen Produksi. Fitur ini memungkinkan
pengguna untuk memiliki tampilan database sesuai dengan kebutuhan mereka.
3.3.10 Keamanan
DBMS menawarkan berbagai tingkat fitur keamanan, yang memungkinkan
beberapa pengguna memiliki tampilan yang berbeda dengan fitur yang berbeda.
Misalnya, pengguna di departemen Penjualan tidak dapat melihat data milik
departemen Pembelian. Selain itu, juga dapat dikelola berapa banyak data departemen
Penjualan yang harus ditampilkan kepada pengguna.
3.4 Fungsi DBMS
Fungsi DBMS dalam pengembangan suatu aplikasi dan/atau sistem sangat banyak. Saat
ini berbagai perusahaan besar, baik Nasional maupun Internasional, memanfaatkan database
untuk mendukung sistem aplikasi mereka. DBMS digunakan untuk melakukan pemrosesan
data dan sebagai antarmuka untuk memudahkan pengguna memanipulasi database. Setidaknya
ada 10 fungsi DBMS dalam membantu menjaga dan memelihara integritas data dalam sebuah
sistem.

34



3.4.1

Menjaga Integritas Data

DBMS berfungsi untuk mengurangi dan menghilangkan redundansi data dan
memaksimalkan konsistensi data sehingga setiap kali Anda menampilkan data, sesuai
dengan data asli.
3.4.2

Manajemen Penyimpanan Data
DBMS memiliki fungsi utama sebagai penyimpanan data, kecanggihan DBMS

saat ini dapat menyimpan data dalam berbagai jenis seperti video dan gambar.
Pengguna tidak perlu tahu bagaimana data disimpan atau dimanipulasi. DBMS
memiliki prosedur dalam proses ini dan memastikan data yang disimpan sesuai dengan
data yang dimasukkan.
3.4.3

Kamus Data
DBMS memiliki fungsi mengelola elemen dalam database dan bagaimana

mereka ditautkan ke data lain. Ketika sistem memerlukan data dalam database, DBMS
akan memberikan kemudahan melalui SQL untuk mengakses dan mencari data
sehingga pengguna dapat dengan mudah menangani hal ini.
3.4.4

Transformasi dan Penyajian Data
Peran DBMS sebagai transformasi dan penyajian data termasuk mengonversi

setiap data yang dimasukkan ke dalam struktur dan format yang telah ditentukan.
Dengan demikian, DBMS dapat membedakan antara format data logis dan bentuk
fisiknya.
3.4.5

Keamanan Data
DBMS memiliki peran penting dalam bagaimana tingkat keamanan dalam

database. DBMS memiliki peran dalam cara memberikan hak akses kepada orang yang
sesuai. Selain itu, DBMS juga bertanggung jawab untuk mengelola apa yang dapat
dilakukan pengguna pada database.
3.4.6

Memungkinkan Akses Multiple-user
DBMS memungkinkan beberapa pengguna untuk berinteraksi dalam database,

ini akan lebih efisien dan dapat menempatkan pengguna tertentu sesuai dengan peran
dan fungsinya.
35



3.4.7

Menyediakan Prosedur Pencadangan dan Pemulihan
DBMS memungkinkan database yang ada untuk dicadangkan dan dipulihkan

sesuai dengan kebutuhan mereka dengan memanfaatkan teknik-teknik yang dimiliki
setiap DBMS. Ini akan memudahkan pihak-pihak yang berkepentingan ketika sesuatu
terjadi pada database seperti kerusakan dan bencana alam.
3.4.8

Menyediakan Akses Bahasa dan Pemrograman
DBMS menyediakan SQL untuk memanipulasi dan merancang database yang

dikenal sebagai DML dan DDL. Dengan bahasa ini, Database Administrator (DBA)
dapat dengan mudah memasukkan, mengambil, menghapus, dan mengubah data dalam
database dengan menggunakan antarmuka yang disediakan.
3.4.9

Menyediakan Antarmuka untuk Komunikasi
DBMS menyediakan antarmuka untuk berkomunikasi antara database satu

dengan yang lain. Selain itu, DBMS juga dapat memfasilitasi komunikasi antara
database dan alat lain seperti browser.
3.4.10 Manajemen Transaksi
DBMS menyediakan mekanisme untuk mengelola transaksi dan pesanan yang
dikirimkan untuk memastikan konsistensi data. Misalnya, ketika DBA mengakses dan
menghapus data, pada saat yang sama jika ada pengguna lain yang mengakses data
tersebut, maka prosesnya akan tertunda sampai data telah dihapus.
3.5 Pengguna dalam DBMS
DBMS memiliki jenis pengguna dengan hak dan izin yang berbeda dalam
menggunakan DBMS sesuai dengan tujuannya masing-masing. Beberapa pengguna
mengambil data dan beberapa mencadangkannya. Pengguna DBMS secara umum dapat
dikategorikan sebagai berikut.
3.5.1

Administrator
Administrator memelihara DBMS dan bertanggung jawab untuk mengelola

database. Mereka bertanggung jawab untuk menjaga penggunaannya dan oleh siapa itu
36



harus digunakan. Mereka membuat profil akses untuk pengguna dan menerapkan
batasan untuk menjaga keamanan data. Administrator juga menjaga sumber daya
DBMS seperti lisensi sistem, alat yang diperlukan, dan pemeliharaan terkait perangkat
lunak dan perangkat keras lainnya.
3.5.2

Desainer
Desainer adalah sekelompok orang yang benar-benar bekerja pada bagian

desain database. Mereka terus mengawasi data apa yang harus disimpan dan dalam
format apa. Mereka mengidentifikasi dan merancang seluruh set entitas, relasi, dan
kendala.
3.5.3

End-user
End-user adalah mereka yang benar-benar hanya menggunakan DBMS. Mulai

dari mereka yang hanya memperhatikan harga pasar hingga analis bisnis.
3.6 Pengaplikasian DBMS di Berbagai Sektor
Sektor

Fungsi

Perbankan

Untuk informasi nasabah, aktivitas
rekening,

pembayaran,

deposito,

pinjaman, dll.
Penerbangan

Untuk reservasi dan informasi jadwal
penerbangan.

Universitas

Untuk

informasi

mahasiswa,

pendaftaran mata kuliah, dan nilai.
Telekomunikasi

Untuk membantu menyimpan catatan
panggilan, tagihan bulanan, saldo, dll.

Keuangan

Untuk menyimpan informasi tentang
saham,

penjualan,

dan

pembelian

37



instrumen keuangan seperti saham dan
obligasi.
Sales

Untuk menyimpan informasi pelanggan,
produk, dan penjualan.

Manufaktur

Untuk manajemen rantai pasokan dan
untuk melacak produksi barang serta
status inventaris di gudang.

Human Resource Management

Untuk informasi tentang karyawan,
penggajian,

pengurangan

gaji,

pembuatan slip gaji, dll.
Tabel 3.1 Contoh pengaplikasian DBMS di berbagai sektor seperti perbankan, penerbangan, dll.

3.7 Jenis-jenis DBMS
Menurut para ahli, sejarah, fungsi dan tujuannya di atas, perlu ketahui bahwa terdapat
4 (empat) jenis sistem DBMS, yaitu sebagai berikut.
3.7.1

DBMS Hierarchical/Hirarkis
Jenis yang pertama adalah Hierarchial DBMS, disini model data disusun dalam

struktur seperti pohon. Data disimpan dalam format hierarkis (top-down atau bottomup). Data direpresentasikan menggunakan hubungan parent-child. Dalam hirarki ini,
parent mungkin memiliki banyak child, tetapi child hanya memiliki satu parent saja.
3.7.2

Network Model
Jenis Network Model atau model basis data jaringan memungkinkan setiap child

atau anak memiliki banyak parent atau orang tua. Jenis model jaringan membantu
pengguna untuk mengatasi kebutuhan untuk memodelkan hubungan yang lebih
kompleks seperti pesanan atau bagian hubungan many-to-many. Dalam model ini,
entitas diatur dalam grafik yang dapat diakses melalui beberapa jalur.

38



3.7.3

Relational DBMS
Relational DBMS adalah model DBMS yang paling banyak digunakan karena

merupakan salah satu yang paling mudah. Model ini didasarkan pada normalisasi data
di baris dan kolom tabel. Model relasional ini disimpan dalam struktur tetap dan
dimanipulasi menggunakan SQL.
3.7.4

Object-Oriented Model
Dalam Object-Oriented Model atau model berorientasi objek ini, data disimpan

dalam bentuk objek. Struktur yang disebut kelas yang menampilkan data di dalamnya.
Hal ini mendefinisikan database sebagai kumpulan objek yang menyimpan nilai-nilai
anggota data dan operasi.
3.8 Kelebihan dan Kekurangan Penggunaan DBMS
Meskipun sebenarnya banyak kelebihan yang bisa didapatkan dengan menerapkan
program DBMS pada jaringan komputer, namun ternyata masih terdapat beberapa kekurangan
DBMS.
Kelebihan DBMS


Dapat mengendalikan redudansi data



Memberikan data yang konsisten



Kemampuan mendapatkan informasi yang lebih banyak dan jumlah data yang sama



Pengguna dapat memakai data secara bersama-sama



Memperbaiki integritas data



Menjaga keamanan data



Membantu penetapan standarisasi



Perbandingan skala ekonomi



Dapat menyeimbangkan konflik kebutuhan



Mempercepat akses dan respon data



Mempercepat produktifitas



Meningkatkan pemeliharaan data melalui data independen



Meningkatkan konkurensi



Meningkatkan layanan backup dan recovery

39



Kekurangan DBMS


Penggunaannya cukup kompleks



Kompleksitas DBMS mengakibatkan ukurannya yang besar



Biaya DBMS tidak sama tergantung pada lingkungan dan fungsi yang disediakan



Ada tambahan biaya untuk hardware



Diperlukan biaya konversi untuk penggunaan DBMS yang baru



Umumnya performa kinerja menurun seiring waktu



Performa yang menurun mengakibatkan kegagalan yang lebih besar

40



LATIHAN
SOAL
1. Jelaskan pengertian DBMS dan tujuan dibuatnya DBMS.
2. Jelaskan bahasa komputer yang digunakan untuk berinteraksi dengan DBMS.
3. Jelaskan beberapa pengaplikasian DBMS di berbagai sector.
4. Jelaskan jenis Relational DBMS.
5. Sebutkan lima kelebihan dan kekurangan DBMS!
JAWABAN
1. Database Management Systems atau DBMS adalah suatu sistem atau software yang
dirancang khusus untuk mengelola suatu database dan menjalankan operasi terhadap data
yang diminta oleh banyak pengguna. Tujuan utama penggunaan DBMS dalam jaringan
komputer adalah untuk menghindari kekacauan dalam hal pengolahan data dalam jumlah
besar, dimana DBMS berfungsi sebagai perangkat yang berguna untuk mengorganisasi
sumber daya data perusahaan. Beberapa tujuan penggunaan DBMS diantaranya agar basis
data dapat digunakan secara bersama, agar proses akses data lebih mudah dan cepat, untuk
menghemat ruang penyimpanan data, membantu menjaga keamanan data, mencegah dan
menghilangkan duplikasi dan inkonsistentsi data, serta menangani data dalam jumlah yang
besar.
2. Data Definition Language (DDL); digunakan untuk menggambarkan desain dari basis data
secara keseluruhan, mulai dari membuat tabel baru, memuat indeks, maupun mengubah
tabel.
Data Manipulation Language (DML); digunakan untuk memanipulasi dan mengambil data
dari database, menghapus data dari database, dan mengubah data pada suatu database.
3. Perbankan; untuk informasi nasabah, aktivitas rekening, deposito, pinjaman, dll.
Universitas; untuk informasi mahasiswa, pendaftaran mata kuliah, dan nilai.
Keuangan; untuk menyimpan informasi instrumen keuangan seperti saham dan obligasi.
Sales; untuk menyimpan informasi data pelanggan, produk, dan penjualan.
Manufaktur; untuk manajemen rantai pasokan dan untuk melacak produksi.

41



4. Relational DBMS adalah model DBMS yang paling banyak digunakan karena merupakan
salah satu yang paling mudah. Model ini didasarkan pada normalisasi data di baris dan
kolom tabel. Model relasional ini disimpan dalam struktur tetap dan dimanipulasi
menggunakan SQL.
5. Kelebihan DBMS


Dapat mengendalikan redudansi data



Kemampuan mendapatkan informasi yang lebih banyak dan jumlah data yang sama



Pengguna dapat memakai data secara bersama-sama



Memperbaiki integritas data



Menjaga keamanan data

Kekurangan DBMS


Penggunaannya cukup kompleks



Kompleksitas DBMS mengakibatkan ukurannya yang besar



Biaya DBMS tidak sama tergantung pada lingkungan dan fungsi yang disediakan



Ada tambahan biaya untuk hardware



Umumnya performa kinerja menurun seiring waktu

42



BAB IV
MODEL DATA
Learning outcome:


Dapat memahami tentang konsep entity relationship diagram.



Dapat mendefinisikan pengertian entity relationship diagram dengan baik.



Dapat membuat entity relationship diagram dengan benar sesuai dengan kosep yang
ada.



Dapat memahami konsep entity relationship awal sebelum lanjut pada enchanted entity
relationship.

4.1 Pendahuluan
Dalam merencanakan sesuatu akan lebih mudah dan terlihat jika terdapat suatu model
yang yang dapat menggambarkan secara singkat sehingga para stakeholder dapat memahami
apa yang sedang terjadi. Begitu pula dalam sebuah database suatu perusahaan, instansi atau
organisasi. Dalam konteks merancang database, model adalah pertimbangan penting dari
beberapa konsep, bahasa, grafik yang biasanya digunakan dalam mendeskripsikan struktur data
dan proses operasi suatu database 1.
4.1.1

Konsep Entity relationship diagram (ERD)
Dalam penerapannya model er sangat dibutuhkan pada saat ini dikarenakan,

suatu instansi akan terbantu dalam memahami kegiatan mereka. Entity relationship
diagram (ERD) adalah suatu diagram yang digunakan untuk merancang suatu basis
data, dipergunakan untuk memperlihatkan hubungan atau relasi antar entitas atau objek
yang terlihat beserta atributnya 2. Dalam entitas terdapat kompleksitas yaitu biasa
dikenal dengan generalisasi dan spesialisasi. Entitas tersebut akan di spesifikkan
menjadi superclass atau sub, al ini akan dibahas pada bab selanjutanya.

1

Ramadhani.R,“Types of database models”, dikutip dari https://rima.dosen.ittelkom-pwt.ac.id/wpcontent/uploads/sites/38/2017/10/Pertemuan-3-11-Oktober-2017-Tipe-DBMS.pdf slide 2 pada tanggal 28 oktober 2020
2
"Tahapan pembuatan ERD (entity relationship diagram) dikutip dari
https://repository.dinus.ac.id/docs/ajar/TAHAPAN_PEMBUATAN_ERD_MATERI_05.pdf pada tanggal 5 november 2020

43



Gambar 4.1 Entity Relationship Diagram

ERD pertama kali dikenalkan oleh P.P. Chen pada tahun 1976. Diagram EntityRelationship melengkapi penggambaran grafik dari struktur logika . Dengan kata lain
Diagram E-R menggambarkan arti dari aspek data seperti bagaimana entity-entity,
atribut-atribut dan relationship-relationship disajikan. Sebelum membuat Diagram E-R
, tentunya kita harus memahami betul data yang diperlukan dan ruang lingkupnya. Di
dalam pembuatan diagram E-R perlu diperhatikan penentuan sesuatu konsep apakah
merupakan suatu entity, atribut atau relationship.
`

4.1.2

Entity (entitas)
Entity merupakan objek yang dapat dibedakan dengan yang lain dalam dunia

nyata 3.Sedangkan Entity Set adalah kumpulan dari entity yang sejenis 4. Entity set dapat
berupa objek secara fisik (Rumah, Kendaraan, Peralatan) atau objek secara
konsep(Pekerjaan, Perusahaan). Entity dapat dikategorikan menjadi 4 kelas yaitu role
(peran), event (kejadian), location (lokasi), tangible things/concept (sesuatu yang tidak
nyata atau konsep). Entity biasa di ilustrasikan dengan simbol persegi panjang.

3

“Si ERD bar” dikutip dari metty.staff.gunadarma.ac.id pada tanggal 5 november 2020
Agung.S “database entity relationship diagram” dikutip dari
http://power.lecture.ub.ac.id/files/2015/03/Modul-Basis-Data-I-3-ERD.pdf hal.2 pada tanggal 5 november
2020
4

44



4.1.3

Relationship (relasi).
Relationship (relasi)

jika diartikan secara umum relasi diartikan dengan

hubungan antara dua pihak atau lebih. sedangkan dalam konteks basis data dalam ERD
relationship adalah hubungan alamiah yang terjadi antara entitas. Peran dari relasi
sendiri adalah untuk menunjukkan adanya hubungan antara sejumlah elemen yang
berasal dari entitas yang berbeda. Contoh sederhananya dapat berupa relasi dari entitas
mahasiswa dan matakuliah. Relasi yang terbentuk dari kedua entitas tersebut adalah
mengambil.
4.1.4

Attribute (atribut)
Atribut merupakan pasangan dari entitas yang membuat suatu entitas memiliki

sebuah nilai atau data. Atribut didefinisikan sebagai karakteristik dari tiap entity atau
relationship yang menyediakan penjelasan detail mengenai entity atau relationship
tersebut 5. Nilai dari atribut sendiri bersifat aktual dan fakta berdasarkan data yang ada
di dunia nyata yang disimpan pada atribut dalam entitas atau relasi dimana setiap
attribute memiliki value set (domain) tersendiri. Atribut biasa disimbolkan dengan
lingkaran atau oval. Atribut juga terbagi menjadi beberapa jenis
Jenis-jenis atribut: 6


Key



Simple attribute



Composite attribute



Single-valued attribute



Multi valued attribute



Key attribute



Atribut turunan

5

Agung.S “database entity relationship diagram” dikutip dari
http://power.lecture.ub.ac.id/files/2015/03/Modul-Basis-Data-I-3-ERD.pdf hal.2 pada tanggal 6 november
2020
6
Agung.S “database entity relationship diagram” dikutip dari
http://power.lecture.ub.ac.id/files/2015/03/Modul-Basis-Data-I-3-ERD.pdf hal.3 pada tanggal 6 november
2020

45



Gambar 4.2 Simbol-simbol ERD

4.2 Varian relasi
Beberapa pemikiran mengatakan bahwa yang dinamakan varian relasi akan selalu
melibatkan relasi biner. Akan tetapi pada penerapannya dapat terjadi hubungan yang
melibatkan relasi tunggal atau multi relasi. Relasi biner (melibatkan 2 entitas) merupakan relasi
antara 2 entitas, relasi ini memiliki kemungkinan muncul yang tinggi pada suatu model er
karena itu beberapa pemahaman yang mengatakan varian relasi akan selalu melibatkan relasi
biner.

46



Relasi tunggal, relasi tunggal adalah relasi yang melibatkan hanya satu entitas, dimana
relasi yang terjadi dari sebuah entitas ke entitas yang sama. Contoh pada lingkup entitas dosen.
Relasi yang dapat terjadi adalah hubungan antara dosen pendamping (dosen senior) dengan
dosen baru dalam rangka pembinaan profesi.

Gambar 4.3 Unary Relation

Relasi multi entitas merupakan relasi yang dapat terbangun berdasarkan 2 entitas atau lebih.
Contoh: pada program studi terdapat entitas dosen mata, kuliah, dan ruang. Relasi yang
terbentuk antara ketiga entitas tersebut adalah pengajaran Dimana untuk kegiatan pengajaran
dibutuhkan data dosen yang mengajar, mata kuliah yang diajar, serta ruangan yang digunakan
untuk kegiatan tersebut.

Gambar 4.4 N-ary Relation

47



4.3 Derajat relasi/kardinalitas
Kardinalitas adalah jumlah entitas yang dapat berelasi dengan entitas pada himpunan
entitas yang lain 7. Tujuan dari kardinalitas adalah untuk menunjukan jumlah maksimum entitas
yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas relasi merujuk
kepada hubungan maksimum yang terjadi dari himpunan entitas yang satu ke himpunan entitas
yang lain dan begitu juga sebaliknya. Kardinalitas relasi yang terjadi di antara dua himpunan
entitas dapat berupa:
4.3.1

Relasi one-to-one / 1:1
Setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu

entitas pada himpunan entitas B dan begitu juga sebaliknya. ruang dengan Mata kuliah.

Gambar 4.5 Relasi 1 ke 1

4.3.2

Relasi one-to-many/1:N
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak

entitas pada himpunan entitas B, tetapi tidak sebaliknya. Contoh : Dosen dengan
Mahasiswa

Gambar 4.6 Relasi 1 ke N

4.3.3

Relasi many-to-one/ N:1
Setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu

entitas pada himpunan entitas B, tetapi tidak sebaliknya. Contoh : Dosen dengan Mata
Kuliah

Gambar 4.7 Relasi N ke 1

7

“Modul 4:relasi atau relationship” dikutip dari http://lea.si.fti.unand.ac.id/wpcontent/uploads/2018/02/modul-5-Relasi.pdf hal 3pada tanggal 9 november 2020

48



4.3.4

Relasi many-to-many/ M:N
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak

entitas pada himpunan entitas B dan demikian juga sebaliknya. Contoh : Mahasiswa
dengan Mata Kuliah

Gambar 4.8 Relasi M ke N

4.4 Model data tingkat lanjut
Dalam model data tingkat lanjut dikenal istilah generalisasi dan spesialisasi.
Spesialisasi merupakan Proses mendesain subgrup di dalam suatu entity. Sedangkan untuk
generalisasi dapat didefinisikan sebagai proses

pendefinisian

subclass-subclass yang

disatukan menjadi entitas superclass tunggal berdasarkan karakteristik umum.dimana kedua
karakteristik ini akan membentuk model data yang dikenal dengan enhanted

49



LATIHAN
SOAL
1. Jelaskan definisi entity relationship diagram(ERD)?
2. Jelaskan mengenai beberapa varian entitas?
3. Jelaskan mengenai beberapa varian atribut?
4. Jelaskan mengenai beberapa varian relasi ?
5. Coba buatkan contoh entity relationship diagram dari perpustakaan?

JAWABAN
1. Entity Relationship Diagram (ERD)adalah suatu diagram yang digunakan untuk merancang
suatu basis data, dipergunakan untuk memperlihatkan hubungan atau relasi antar entitas atau
objek yang terlihat beserta atributnya.
2. Entitas dapat dibagi menjadi beberapa macam dari orang, tempat,objek kejadian,dan konsep.
3. Ada banyak macam varian atribut seperti, Key, Simple attribute, Composite attribute, Singlevalued attribute, Multi valued attribute, Key attribute, Atribut turunan
4. Ada 4 macam jenis relasi yaitu one-to-one,berarti setiap entitas pada himpunan entitas A
berhubungan paling banyak dengan satu entitas pada himpunan entitas B dan begitu juga
sebaliknya. one-to-many, Berarti setiap entitas pada himpunan entitas A dapat berhubungan
dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya. many-to-one,berarti
setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada
himpunan entitas B, tetapi tidak sebaliknya.

many-to-many,berarti setiap entitas pada

himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B dan
demikian juga sebaliknya.

50



5.

51



BAB V
ENHANCED ENTITY RELATIONSHIP (EER) MODEL
Learning Outcome :
1. Dapat mendefinisikan Enhaced Entity Relationship (EER) Model dengan benar dan
utuh
2. Daoat memahami konsep dari Enhaced Entity Relationship (EER) Model
3. Dapat memodelkan basis data dengan tepat mengunakan Enhaced Entity Relationship
(EER) Diagram
4. Dapat mengetahui perbedaan Enhaced Entity Relationship (EER) Model dengan Entity
Relationship (ER) Model
5.1 Pendahuluan
Pemodelan data dapat dilakukan dengan berbagai macam cara atau alat pemodelan.
Saat ini alat pemodelan data yang sering digunakan adalah Entity Relationships Diagram (ERD) dan Enhanced Entity Relationships Diagram (EER-D). ER-D pada awalnya diperkenalkan
oleh Chen dengan meniru prinsip-prinsip pembentukan simbol-simbol secara alami seperti
halnya pembentukan aksara pada tulisan China. 8 Seiring dengan perkembangan pemrograman,
alat pemodelan data juga ikut berkembang. Pada awalnya alat pemodelan data menganut
prinsip-prinsip relasional tetapi saat ini sudah tidak lagi harus mengacu pada prinsip-prinsip ini
sehingga sering disebut dengan pemodelan data non-relasional. 9 Pemodelan data nonrelasional diterapkan pada pemrograman berorientasi objek. Pemodelan data non-relasional
yang mengiringi pemrograman berorientasi pada objek tetapi masih memiliki karakteristik
pada ER-D maka munculah EER-D yang menjawab permasalahan ini.
5.2 Definisi Enhaced Entity Relationship (EER) Model
Setelah di Bab sebelumnya telah dibahas mengenai Entity Relationship (ER) model,
maka pada bab ini akan mempelajari tentang Enhaced Entity Relationship (EER) model. ER
model cukup digunakan untuk memodelkan skema basis data ‘tradisional’ (aplikasi
pemrosesan data pada bisnis dan industri pada umumnya). Namun, Sejak akhir tahun 1970
telah terjadi peningkatan kemunculan aplikasi database baru dengan persyaratan yang lebih
menuntut. Konsep dasar model ER dirasa tidak lagi cukup untuk mewakili persyaratan aplikasi
Peter Pin-Shan Chen, "English, Chinese and ER-Diagrams," Data & Knowledge Engineering, pp. 5- 16, 1997.
Ramez Elmasri and Shamkant B Navathe, Fundamentals of Database Systems, 4th ed. International: Pearson
Addison-Wesley, 2004.

8
9

52



terbaru yang lebih kompleks. Untuk mewakili persyaratan ini, diperlukan konsep pemodelan
'semantik' tambahan. Semantik merupakan spesifikasi database yang dapat diterima
berdasarkan batasan integritas statis dan dinamis menjelaskan status database tersebut dan
urutan database yang dianggap legal. Konsep semantik ini digabungkan ke dalam ER model
biasa dan menjadi Enhanced Entity-Relationship (EER) model. Keluaran dari EER model
berupa Diagram EER. Diagram EER itu sendiri adalah rancangan basis data dari diagram ER
yang disempurnakan. Ada fitur tambahan di EER daripada diagram ER biasa. Diagram ER
adalah representasi visual dari data yang didasarkan pada model ER, dan ini menggambarkan
bagaimana entitas terkait satu sama lain dalam database. Sedangkan diagram EER adalah
representasi visual dari data, berdasarkan model EER yang merupakan perpanjangan dari
model original entity-relationship (ER). Itulah perbedaan antara diagram ER dan EER. Jadi,
EER model adalah model data lanjutan dari ER model yang dilengkapi dengan konsep
semantik tambahan dimana diagram EER model sangat mirip dengan diagram ER model biasa.
Konsep

semantik

tambahan

EER

model

meliputi

yaitu

;

subclass/superclass,

spesialisasi/generalisasi, kategorisasi, dan agregasi.
5.3 Konsep Enhaced Entity Relationship (EER)
Konsep EER Model pada dasarnya merupakan gabungan dari konsep ER Model biasa
dan konsep semantik tambahan. Pada Bab sebelumnya telah dibahas mengenai konsep ER
Model yang terdiri dari entitas, atribut, dan hubungan antar entitas. Sedangkan penjelasan
mengenai konsep tambahan pada EER Model yaitu sebagai berikut :
5.3.1

Subclass / superclass
Subclass adalah tipe entitas yang memiliki peran berbeda dan juga merupakan

anggota superclass. Ini merupakan subset dari entitas yang dikelompokkan dalam
pengertian tertentu dan harus disajikan secara eksplisit. Contoh : Entitas PEGAWAI
mempunyai beberapa subclass seperti SEKRETARIS, TEKNISI, AHLI.
Superclass merupakan tipe entitas yang mencakup subclass berbeda yang perlu
direpresentasikan dalam model data. Contoh : Subclass SEKRETARIS, TEKNISI,
AHLI mempunyai superclass PEGAWAI. Hubungan antara superclass dan setiap
subclassnya disebut hubungan superclass / subclass.

53



Gambar 5.1. EER diagram menggambarkan subclass dan superclass.

Konsep penting yang terkait dengan subclass (subtipe) adalah type inheritance. Ingatlah
bahwa tipe entitas ditentukan oleh atribut yang dimilikinya dan tipe hubungan yang
diikutinya. Karena entitas dalam subclass merepresentasikan entitas dunia nyata yang
sama dari superclass, ia harus memiliki nilai untuk atribut spesifiknya serta nilai
atributnya sebagai anggota superclass. Attribute inheritance atau atribut pewarisan
adalah entitas dalam subclass yang dapat memiliki atribut khusus subclass, serta yang
terkait dengan superclass. Dikatakan bahwa entitas yang merupakan anggota subclass
mewarisi semua atribut entitas sebagai anggota superclass. Entitas juga mewarisi semua
hubungan di mana superclass berpartisipasi. Perhatikan bahwa subclass, dengan atribut
dan relasi spesifik (atau lokal) miliknya sendiri bersama dengan semua atribut dan relasi
yang diwarisi dari superclass, dapat dianggap sebagai tipe entitas dengan haknya
sendiri.
5.3.2

Spesialisasi / Generalisasi
Spesialisasi merupakan suatu proses pendefinisian suatu himpunan subclass

dari suatu entitas

(disebut superclass) berdasarkan karakteristik tertentu. Contoh

pendefinisian entitas PEGAWAI berdasarkan peran dalam profesinya dapat terdiri dari
MANAGER, SEKRETARIS, dan TEKNISI sebagai subclass-subclassnya. Sedangkan
pendefinisian entitas PEGAWAI berdasarkan kontrak kerjanya dapat terdiri dari PEG.
TETAP dan PEG. PARUH WAKTU sebagai subclass-subclassnya
Generalisasi adalaah proses pendefinisian subclass-subclass yang disatukan menjadi
entitas

superclass

tunggal

berdasarkan karakteristik umum. Contoh, subclass

MANAGER, SEKRETARIS dan TEKNISI dapat digeneralisasikan menjadi superclass
PEGAWAI berdasarkan atribut umum seperti Nama, Alamat, TTL.

54



5.3.3

Constraints spesialisasi / generalisasi

Gambar 5.2. Constraints Spesialisasi / Generalisasi.

Constraints untuk spesialisasi dan generalisasi antara lain : Simbol d (disjoint)
menyatakan bahwa sebuah entitas hanya bisa menjadi anggota dari satu subclass.
Simbol o (overlap) menyatakan bahwa sebuah entitas dapat menjadi anggota lebih dari
satu subclass. Simbol = (total) menyatakan bahwa setiap entitas pada superclass
menjadi anggota subclass. Simbol – (parsial) menyatakan bahwa ada entitas pada
superclass yang bukan merupakan anggota subclass manapun.

Gambar5.3. Perbedaan Tanda Completeness Constraints : Total ( = ) dan Partial ( - )

55



Gambar 5.4. Perbedaan Ciri Disjointness Constraints : Disjoint ( d ) dan Overlap ( o )

5.3.4

Hierarki dan kisi (lattice) dari spesialisasi / generalisasi
Sebuah subclass mungkin memiliki subclass lebih lanjut di atasnya, membentuk

hierarki atau lattice spesialisasi. Hierarki spesialisasi merupakan spesialisasi bertingkat
dimana setiap subclass berpartisipasi sebagai subclass hanya dalam satu hubungan
superclass / subclass. Sedangkan lattice spesialisasi merupakan spesialisasi bertingkat
dimana sebuah subclass dapat berpartisipasi sebagai subclass di lebih dari satu
hubungan superclass / subclass. Sebuah subclass dengan lebih dari satu superclass
disebut subclass bersama. Subclass bersama mewarisi atribut (attribute inheritance)
dan hubungan dari beberapa superclass, yang menghasilkan beberapa warisan.
5.3.5

Kategorisasi
Kategorisasi (Union) adalah pemodelan subclass tunggal (disebut kategori)

dengan hubungan yang melibatkan lebih dari satu superclass berbeda. Kategorisasi
adalah kebutuhan yang timbul untuk model suatu relationship superclass/subclass
tunggal dengan lebih dari satu superclass dimana superclass-superclass tersebut
menggambarkan jenis entity yang berbeda. Sebuah kategori mempunyai satu atau lebih
superclass yang dapat mewakili tiap tipe entity. Dimana superclass/subclass lainnya
bisa saja hanya mempunyai satu superclass. Kategori dapat diterapkan untuk seluruh
relasi atau hanya sebagian saja. Contoh, kategori PEMILIK yang merupakan subclass
dari gabungan ORANG, BANK dan PERUSAHAAN. Kategori KENDARAANTERDAFTAR yang merupakan subclass dari gabungan MOBIL dan TRUK.
Perbedaan antara kategori dan subclass bersama adalah bahwa entitas subkelas
bersama harus menjadi anggota dari semua entitas kelas super (persimpangan)
56



sedangkan kategori adalah bagian dari gabungan kelas supernya. Oleh karena itu,
entitas yang merupakan anggota kategori harus ada hanya di salah satu kelas super.
Dalam kategori, subclass memiliki pewarisan selektif.
Kategori dapat berupa total atau parsial. Total: setiap kemunculan semua
superclass harus muncul dalam kategori. Parsial: Beberapa kejadian dari semua kelas
super mungkin tidak muncul dalam kategori.

Gambar 5.5 Contoh Kategorisasi.

5.3.6

Agregasi
Pendekatan agregasi merupakan pendekatan dimana jika terdapat relasional

yang melibatkan lebih dari 3 (tigas) entitas maka dianggap relasional ketiga entitas
tersebut dilakukan terlebih dulu kemudian baru melibatkan entitas berikutnya (karena
maksimal jumlah relationship yang diizinkan adalah ternary relationships atau
hubungan yang melibatkan tiga entitas).

Gambar 5.6. Contoh Agregasi EER Model.

Agregasi adalah konsep abstraksi untuk membangun objek komposit dari objek
komponennya. Ada tiga kasus di mana konsep ini dapat dikaitkan dengan model EER.
Kasus pertama adalah situasi di mana kita menggabungkan nilai atribut suatu objek
57



untuk membentuk keseluruhan objek. Kasus kedua adalah saat kami merepresentasikan
hubungan agregasi sebagai hubungan biasa. Kasus ketiga, yang tidak disediakan model
EER secara eksplisit, melibatkan kemungkinan menggabungkan objek yang terkait
dengan contoh relasi tertentu ke dalam tingkat objek agregat tingkat yang lebih tinggi.
Ini terkadang berguna ketika objek agregat tingkat yang lebih tinggi itu sendiri terkait
dengan objek lain. Kami menyebut hubungan antara objek primitif dan objek
agregatnya IS-A-PART-OF; kebalikannya disebut IS-A-COMPONENT-OF. UML
menyediakan ketiga jenis agregasi.

Gambar 5.7 Contoh Agregat Skema ER

Untuk memahami penggunaan agregasi dengan lebih baik, pertimbangkan
skema ER yang ditunjukkan pada Gambar 7 diatas, yang menyimpan informasi tentang
wawancara oleh pelamar kerja ke berbagai perusahaan. Kelas COMPANY adalah
agregasi dari atribut (atau objek komponen) Cname (nama perusahaan) dan Alamat
(alamat perusahaan), sedangkan JOB_APPLICANT adalah gabungan dari Ssn, Name,
Address, dan Phone. Atribut hubungan Contact_name dan Contact_phone mewakili
nama dan nomor telepon orang di perusahaan yang bertanggung jawab untuk
wawancara. Misalkan beberapa wawancara menghasilkan tawaran pekerjaan
(diterima), sedangkan yang lain tidak.
Kemudian membuat kelas agregat tingkat tinggi yang terdiri dari COMPANY,
JOB_APPLICANT, dan INTERVIEW dan menghubungkan kelas ini dengan
JOB_OFFER, seperti yang ditunjukkan pada Gambar 8 dibawah. Ada perbedaan
pendapat mengenai fasilitas agregat ini, beberapa model data semantik mengizinkannya
dan menyebut objek yang dihasilkan sebagai objek komposit atau molekuler.

58



Gambar 5.8. Contoh Agregat.

5.4 Tujuan dan Manfaat Enhanced Entity Relationship (EER) Model
Sebagian besar proyek basis data tidak perlu fiturfitur model berorientasi obyek yang
ada pada EER. Tujuan pemodelan data konseptual (ER model) adalah untuk menghasilkan
sebuah model yang sederhana dan mudah dimengerti. Maka dari itu disarankan untuk tidak
menggunakan superclass/subclass relationship yang kompleks jika tidak diperlukan.
Penggunaan model EER menawarkan keuntungan dibandingkan model ER jika digunakan
pada kondisi yang tepat, misalnya pada keadaan atau kondisi yang perlu pemodelan dengan
data kompleks. Model EER perlu digunakan jika domain yang dimodelkan secara alamiah
bersifat object-oriented, inheritance akan mereduksi kompleksitas perancangan. Disarabkan
untuk menggunakan EER model pada situasi sebagai berikut :
-

Ketika penggunaan attribute inheritance dapat mereduksi penggunaan null pada suatu
single entity relation (yang mengandung multiple subclasses).

-

Subclass dapat digunakan untuk secara eksplisit memodelkan dan menamai subset dari
entity yang berpartisipasi pada relationshipnya sendiri (dimana subclass lain dalam
superclass yang sama tidak berpartisipasi pada relationship tersebut).

-

5.5 Kelebihan dan Kekurangan Enhanced Entity Relationship (EER) Model
Dari seluruh relasional yang terjadi baik yang berasal dari bentuk ER-D maupun yang
telah diperluas atau dikembangkan menjadi EER-D akan tampak saling memberikan kelebihan
masing-masing. ER-D memiliki kelebihan kesederhanaan dalam perancangan tetapi sulit
menginterpretasikan pada kasus yang sesuai dengan keadaan nyata. Keadaan nyata di lapangan
setiap penyelsaian kasus dapat diselesaikan dengan sudut pandang hubungan antar objek,
hubungan antar objek hanya dapat dijelaskan dengan pemodelan data dengan pendekatan
model class. EER-D mampu melakukan pendekatan yang berorientasi objek yang sangat mirip
dengan pendekatan class. Namun bagi sebagian proyek bisnis nyatanya tidak memerlukan
pendekatan yang terlalu kompleks dan tidak semua orang mudah mengerti atau
59



mempelajarinya, karena proyek bisnis tersebut tidak begitu memiliki kompleksitas yang tinggi.
Maka proyek bisnis semacam itu lebih membutuhkan diagram yang sederhana dan mudah
dimengerti seperti ER-D.

60



LATIHAN
SOAL
1. Jelaskan definisi dari EER?
2. Sebutkan konsep dalam Enchaced Entity Relationship (EER)
3. Jika di suatu universitas, MAHASISWA bisa dibagi 6 kategori, namun yang digambar hanya
4 kategori saja, yaitu: (a) Mahasiswa D3 (b) Mahasiswa S1, (c) Mahasiswa Sarmag, gabungan
S1 dan S2, dan (d) Mahasiswa S2, gambarkan spesialisasi entitas MAHASISWA tersebut di
dalam diagram EER.
4. Buatlah diagram EER dimana entitas PEGAWAI, SEKRETARIS, TEKNISI, AHLI.
Kemudian tentukan superclass dan subclassnya,
Superclass : PEGAWAI. Subclass : SEKRETARIS, TEKNISI, AHLI.
5. Jelaskan perbedaan diagram ER dan diagram EER!
JAWABAN
1. Enchaced Entity Relationship (EER) model adalah model data lanjutan dari ER model yang
dilengkapi dengan konsep semantik tambahan seperti subclass-superclass, inheritance,
spesialisasi-generalisasi, agregasi, dan serikat-kategorisasi.
2. semua konsep ER (seperti ; entitas, atribut, dan hubungan antar entitas) ditambah dengan
konsep semantik (seperti ; subclass/superclass, spesialisasi/generalisasi, kategorisasi, dan
agregasi.
3.

61



4.

5. Diagram ER adalah representasi visual dari data yang didasarkan pada model ER, dan ini
menggambarkan bagaimana entitas terkait satu sama lain dalam database. Sedangkan diagram
EER adalah representasi visual dari data, berdasarkan model EER yang merupakan
perpanjangan dari model original entity-relationship (ER)

62



BAB VI
MODEL DATA RELASIONAL DAN HAMBATAN DATA RELASIONAL
Learning Outcome :


Memahami konsep dan tujuan dari relational data model



Mengetahui komponen-komponen secara detail dari relational data model



Memahami apa saja yang termasuk dalam relational database constraint



Memahami operasi dalam relational data model



Mengetahui kelebihan dan kekurangan dari relational data model

6.1 Pengertian model data relasional
Model Data Relasional mewakili database sebagai kumpulan relasi. Relasi tidak lain
adalah tabel nilai. Setiap baris dalam tabel mewakili kumpulan nilai data terkait. Baris-baris
ini dalam tabel menunjukkan entitas atau hubungan dunia nyata. Nama tabel dan nama kolom
berguna untuk menginterpretasikan arti nilai di setiap baris. Data diwakili sebagai sekumpulan
relasi. Dalam model relasional, data disimpan sebagai tabel. Namun, penyimpanan fisik data
tidak terbatas pada cara data diatur secara logis.
6.2 Konsep Model Data Relasional


Atribut: Setiap kolom dalam Tabel. Atribut adalah properti yang mendefinisikan
relasi. misalnya, Student_Rollno, NAMA, dll.



Tabel – Dalam model Relasional, relasi disimpan dalam format tabel. Ini disimpan
bersama dengan entitasnya. Tabel memiliki dua baris dan kolom properti. Baris
mewakili rekaman dan kolom mewakili atribut.



Tuple - Ini tidak lain adalah satu baris tabel, yang berisi satu rekaman.



Skema Hubungan: Skema hubungan mewakili nama hubungan dengan atributnya.



Derajat: Jumlah total atribut yang dalam relasi disebut tingkat hubungan.



Kardinalitas: Jumlah total baris yang ada dalam Tabel.



Kolom: Kolom mewakili sekumpulan nilai untuk atribut tertentu.



Instance relasi - Instance relasi adalah sekumpulan tuple terbatas dalam sistem
RDBMS. Instance relasi tidak pernah memiliki duplikat tuple.

63





Kunci relasi - Setiap baris memiliki satu, dua atau beberapa atribut, yang disebut kunci
relasi.



Domain atribut – Setiap atribut memiliki beberapa nilai dan cakupan yang telah
ditentukan sebelumnya yang dikenal sebagai domain atribut.

Gambar 6.1 Tabel data

6.3 Batasan Integritas Data Relasional(constraint)
Kendala Integritas Relasional dalam DBMS mengacu pada kondisi yang harus ada
untuk relasi yang valid. Kendala Relasional dalam DBMS ini berasal dari aturan di dunia mini
yang diwakili database. Ada banyak jenis Kendala Integritas dalam DBMS. Kendala pada
sistem manajemen database Relasional sebagian besar dibagi menjadi tiga kategori utama
adalah:


Batasan Domain



Batasan Utama



Batasan Integritas Referensial
6.3.1

Batasan Domain
Batasan domain dapat dilanggar jika nilai atribut tidak muncul di domain yang

sesuai atau bukan tipe data yang sesuai. Batasan domain menentukan bahwa dalam
setiap tuple, dan nilai setiap atribut harus unik. Ini ditentukan sebagai tipe data yang
mencakup bilangan bulat tipe data standar, bilangan riil, karakter, Booleans, string
panjang variabel, dll.
64



Contoh:
Create DOMAIN CustomerName
CHECK (value not NULL)
Contoh yang ditampilkan menunjukkan membuat batasan domain sedemikian rupa
sehingga CustomerName bukan NULL
6.3.2 Batasan Utama
Atribut yang dapat mengidentifikasi tuple secara unik dalam relasi disebut kunci
tabel. Nilai atribut untuk tuple yang berbeda dalam relasi harus unik.
Contoh: Dalam tabel yang diberikan, CustomerID adalah atribut utama Dari Tabel Pelanggan.
Kemungkinan besar memiliki satu kunci untuk satu pelanggan, CustomerID =1 hanya untuk
CustomerName =" Google".
ID Pelanggan

Nama Pelanggan

Status

1

Google

Aktif

2

Amazon

Aktif

3

Apple

Aktif

Tabel 6.1 Batasan Utama

6.3.3 Batasan Integritas Referensial
Kendala Integritas Referensial dalam DBMS didasarkan pada konsep Kunci
Asing. Kunci asing/foreign key adalah atribut penting dari hubungan yang harus
dirujuk dalam hubungan lain. Status batasan integritas referensial terjadi di mana
hubungan mengacu pada atribut kunci dari relasi yang berbeda atau sama. Namun,
elemen kunci itu harus ada dalam tabel.

65



Contoh:

Gambar 6.2 Batasan Integritas Referensial

Dalam contoh di atas, kami memiliki 2 hubungan, Pelanggan dan Penagihan.
Tuple for CustomerID =1 direferensikan dua kali dalam kaitannya Penagihan. Jadi
kita tahu CustomerName = Google memiliki jumlah penagihan $ 300
6.4 Operasi dalam Model Data Relasional
Empat operasi pembaruan dasar yang dilakukan pada model database relasional adalah
Insert, Update, delete, dan read.


Insert digunakan untuk menyisipkan data ke dalam relasi



Delete digunakan untuk menghapus tuple dari tabel.



Modifikasi memungkinkan Anda mengubah nilai beberapa atribut dalam tuple yang ada.



Read memungkinkan Anda memilih rentang data tertentu.

Setiap kali salah satu operasi ini diterapkan, kendala integritas yang ditentukan pada skema
database relasional tidak boleh dilanggar.
66



6.4.1 Operasi menyisipkan(Insert)
Operasi sisipkan memberikan nilai atribut untuk tuple baru yang harus dimasukkan ke
dalam relasi.

Gambar 6.3 Insert

6.4.2. Operasi Pembaruan(Update)
Anda dapat melihat bahwa dalam tabel relasi yang diberikan di bawah ini
CustomerName= 'Apple' diperbarui dari Tidak Aktif ke Aktif.

Gambar 6.4 Update

6.4.3. Operasi Hapus (delete)
Untuk menentukan penghapusan, kondisi pada atribut relasi akan memilih tuple yang
akan dihapus.

Gambar 6.5 Delete

Dalam contoh yang diberikan di atas, CustomerName= "Apple" dihapus dari tabel.
Operasi Hapus dapat melanggar integritas referensial jika tuple yang dihapus
direferensikan oleh kunci asing dari tuple lain dalam database yang sama.

67



6.4.4. Pilih Operasi (select)

Gambar 6.6 Delete

Dalam contoh yang diberikan di atas, CustomerName="Amazon" dipilih
6.5 Praktik Terbaik untuk Membuat Model Data Relasional


Data perlu diwakili sebagai kumpulan relasi



Setiap relasi harus digambarkan dengan jelas dalam tabel



Baris harus berisi data tentang contoh entitas



Kolom harus berisi data tentang atribut entitas



Sel tabel harus menahan satu nilai



Setiap kolom harus diberi nama yang unik



Tidak ada dua baris yang bisa identik



Nilai atribut harus berasal dari domain yang sama

6.6 Keuntungan dan kerugian menggunakan model data relasional
6.6.1 Keuntungan


Kesederhanaan: Model data Relasional dalam DBMS lebih sederhana
daripada model hierarkis dan jaringan.



Independensi Struktural: Database relasional hanya berkaitan dengan data
dan bukan dengan struktur. Ini dapat meningkatkan kinerja model.



Mudah digunakan: Model Relasional dalam DBMS mudah karena tabel yang
terdiri dari baris dan kolom cukup alami dan mudah dipahami



Kemampuan kueri: Dimungkinkan untuk bahasa kueri tingkat tinggi
seperti SQL untuk menghindari navigasi database yang kompleks.



Kemandirian data :Struktur database Relasional dapat diubah tanpa harus
mengubah aplikasi apa pun.
68





Dapat Diskalakan: Mengenai sejumlah catatan, atau baris, dan jumlah bidang,
database harus diperbesar untuk meningkatkan kegunaannya.

6.6.2 Kerugian


Beberapa database relasional memiliki batasan panjang bidang yang tidak dapat
dilampaui.



Database relasional kadang-kadang bisa menjadi kompleks ketika jumlah data
tumbuh, dan hubungan antara potongan data menjadi lebih rumit.



Sistem database relasional yang kompleks dapat menyebabkan database
terisolasi di mana informasi tidak dapat dibagikan dari satu sistem ke sistem
lainnya.

69



LATIHAN
SOAL
1. Sebutkan komponen-komponen di dalam model data relasional
2. Jelaskan perbedaan antara primary key dengan foreign key ?
3. Jelaskan apa yang dimaksud database relasional constraint?
4. Sebutkan dan jelaskan tiga contoh operasi database relasional
5. Apa kekurangan dan kelebihan dari database relasional?
JAWABAN
1. Komponen – komponen dari model data relasional adalah :


Atribut/kolom : Setiap kolom dalam Tabel. Atribut adalah properti yang
mendefinisikan relasi. misalnya, Student_Rollno, NAMA, dll.



Tabel – Dalam model Relasional, relasi disimpan dalam format tabel. Ini disimpan
bersama dengan entitasnya. Tabel memiliki dua baris dan kolom properti. Baris
mewakili rekaman dan kolom mewakili atribut.



Tuple/Row - Ini tidak lain adalah satu baris tabel, yang berisi satu rekaman.



Skema Hubungan: Skema hubungan mewakili nama hubungan dengan atributnya.



Derajat: Jumlah total atribut yang dalam relasi disebut tingkat hubungan.



Kardinalitas: Jumlah total baris yang ada dalam Tabel.



Kolom/ Atribut : Kolom mewakili sekumpulan nilai untuk atribut tertentu.



Kunci relasi/primary key - Setiap baris memiliki satu, dua atau beberapa atribut, yang
disebut kunci relasi.



Domain atribut – Setiap atribut memiliki beberapa nilai dan cakupan yang telah
ditentukan sebelumnya yang dikenal sebagai domain atribut.

2. Perbedaan primary key dengan foreign key
Dalam sebuah tabel, akan terdapat beberapa candidate key, namun hanya ada 1 Primary key
(kunci utama). Primary key adalah salah satu candidate key yang kita nobatkan sebagai kolom
unik untuk identifikasi baris dalam tabel.

70



Nilai field yang menjadi primary key harus:
– Unik atau tidak boleh ganda
– Tidak boleh Null (kosong, tidak diketahui, tidak dapat ditentukan)
– Key tersebut lebih natural untuk dijadikan acuan
Contoh Primary Key :
Pada File pegawai berisi attribute :
{no induk, No ktp, Nama, Tempat lahir, Tanggal lahir, Alamat, Kota}
No induk dan no ktp adalah kunci calon (Candidate Key) dan untuk kunci utama (primary
key) adalah salah satu yang dipilih dari kunci calon. Misalnya No. induk di jadikan primary
key, maka primary key nya adalah no induk.
Foreign Key (Kunci Asing)
Foreign Key adalah satu set atribut atau set atribut sebagai key penghubung kedua tabel dan
melengkapi satu relationship (hubungan) terhadap primary key yang menunjukan keinduknya.
Jika sebuah primary key terhubungan ke table/entity lain, maka keberadaan primary key pada
entity tersebut di sebut sebagai foreign key.
Contoh Foreign Key :
Terdapat 2 tabel, tabel pertama mhs dan tabel kedua matkul, di dalam table mhs didalamnya
terdapat

nim,nama,alamat,id_matkul,

dan

pada

table matkul didalamnya terdapat

id_matkul,nm_matkul,sks. nim pada table mhs adalah primary key. Sedangkan primary key
pada table matkul adalah id_matkul. Lalu id_matkul menempel pada table mhs yang kita sebut
sebagai foreign key.
Biasanya disebut table yang berisi foreign key sebagai table anak karena table tersebut mengait
pada table lain. Sedangkan table yang terkait di sebut sebagai table induk. Pada contoh table di
atas, mhs sebagai table anak sedangkan matkul sebagai table induk.
Jadi dapat disimpulkan bahwa primary key adalah penanda unik yang terdapat pada tabel induk
sedangkan foreign key adalah penanda unik yang terdapat pada tabel anakan.

71



3. Maksud dari database relational constraint
Constraint adalah batasan atau aturan yang ada pada table. Constraint mencegah penghapusan
data dari suatu table yang mempunyai keterkaitan dengan table yang lain.
Macam-macam constraint :


NOT NULL :
Suatu kolom yang didefinisikan dengan constraint NOT NULL tidak boleh berisi
nilai NULL.



UNIQUE :
Constraint UNIQUE mendefinisikan suatu kolom menjadi bersifat unik.



PRIMARY KEY :
Constraint PRIMARY KEY membentuk key yang unik untuk suatu table.



FOREIGN KEY :
FOREIGN KEY constraint didefinisikan pada suatu kolom yang ada pada suatu
table, dimana kolom tersebut juga dimiliki oleh table yang lain sebagai suatu
PRIMARY KEY.



CHECK :
Constraint CHECK digunakan untuk mendefinisikan suatu kondisi yang harus
dipenuhi oleh tiap baris data dalam table.



Referential Intergrity Constraint
Refential Integrity Constraint adalah aturan untuk relasi antar tabel untuk menjamin
validasi hubungan antar record di dalam tabel – tabel yang terkait.

Misal Aturan untuk Update :
Cascade : pembaharuan sebuah baris data diikuti oleh pembaharuan baris data pada tabel anak
yang terelasi
Restrict : mencegah pembaharuan data jika terdapat baris data di tabel anak yang terhubungkan
Ignore : mengabaikan referensi. Boleh memperbarui data pada tabel parent, tetapi tidak
memperbarui data pada tabel child

72



Aturan untuk Delete :
Cascade : menghapus seluruh baris data pada tabel child yang terhubung
Restrict : mencegah penghapusan jika terdapat baris data yang terhubung tabel child
Ignore : boleh menghapus data, tapi tidak akan berpengaruh pada tabel anaknya
Aturan untuk Insert :
Restrict : tidak boleh menambah data pada tabel child jika nilai yang dimasukkan pada kolom
yang berelasi tidak terdapat pada parent tabelnya
Ignore : boleh menambah datra pada tabel child meskipun nilai yang dimasukkan pada kolom
ynag berelasi tudak terdapat pada tabel parentnya.
4. Contoh tiga operasi pada database relasional
Operasi menyisipkan(Insert)
Operasi sisipkan memberikan nilai atribut untuk tuple baru yang harus dimasukkan ke dalam
relasi.

Operasi Pembaruan(Update)
Anda dapat melihat bahwa dalam tabel relasi yang diberikan di bawah ini CustomerName=
'Apple' diperbarui dari Tidak Aktif ke Aktif.

Operasi Hapus (delete)
Untuk menentukan penghapusan, kondisi pada atribut relasi akan memilih tuple yang akan
dihapus.
73



Dalam contoh yang diberikan di atas, CustomerName= "Apple" dihapus dari tabel.
Operasi Hapus dapat melanggar integritas referensial jika tuple yang dihapus direferensikan
oleh kunci asing dari tuple lain dalam database yang sama.
5. Kelebihan dan Kekurangan database relasional
a.) Keuntungan


Kesederhanaan: Model data Relasional dalam DBMS lebih sederhana daripada
model hierarkis dan jaringan.



Independensi Struktural: Database relasional hanya berkaitan dengan data dan
bukan dengan struktur. Ini dapat meningkatkan kinerja model.



Mudah digunakan: Model Relasional dalam DBMS mudah karena tabel yang
terdiri dari baris dan kolom cukup alami dan mudah dipahami



Kemampuan kueri: Dimungkinkan untuk bahasa kueri tingkat tinggi seperti SQL
untuk menghindari navigasi database yang kompleks.



Kemandirian data :Struktur database Relasional dapat diubah tanpa harus
mengubah aplikasi apa pun.



Dapat Diskalakan: Mengenai sejumlah catatan, atau baris, dan jumlah bidang,
database harus diperbesar untuk meningkatkan kegunaannya.

b.) Kerugian


Beberapa database relasional memiliki batasan panjang bidang yang tidak dapat
dilampaui.



Database relasional kadang-kadang bisa menjadi kompleks ketika jumlah data
tumbuh, dan hubungan antara potongan data menjadi lebih rumit.



Sistem database relasional yang kompleks dapat menyebabkan database terisolasi di
mana informasi tidak dapat dibagikan dari satu sistem ke sistem lainnya.

74



BAB VII
TRANSFORMASI MODEL DATA
Learning Outcome :


Mampu menjelaskan arti dari setiap bentuk-bentuk dalam model ER



Mampu membuat model ER sederhana



Mampu mentransformasikan model ER ke basis data fisik (table)

7.1 Komponen-komponen penyusun model ER
7.1.1

Entitas
Kumpulan objek yang dapat diidentifikasikan secara unik atau saling berbeda.

Simbol dari entitas biasanya digambarkan dengan persegi panjang. Selain itu, ada juga
“Entitas Lemah” yang dilambangkan dengan gambar persegi panjang kecil di dalam
persegi panjang yang lebih besar. Disebut entitas lemah karena harus berhubungan
langsung dengan entitas lain sebab dia tidak dapat teridentifikasi secara unik.

Gambar 7.1 Entitas

7.1.2

Atribut
Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi

untuk mendeskripsikan karakteristik dari entitas tersebut. Atribut kunci merupakan hal
pembeda atribut dengan entitas. Gambar atribut diwakili oleh simbol elips dan terbagi
menjadi beberapa jenis:


Atribut kunci (key): atribut yang digunakan untuk menentukan entitas secara
unik. Contoh: NPWP, NIM (Nomor Induk Mahasiswa).



Atribut simpel: atribut bernilai tunggal yang tidak dapat dipecah lagi (atomic).
Contoh: Alamat, tahun terbit buku, nama penerbit.
75





Atribut multinilai (multivalue): atribut yang memiliki sekelompok nilai untuk
setiap entitas instan. Contoh: nama beberapa pengarang dari sebuah buku
pelajaran.



Atribut gabungan (composite): atribut yang terdiri dari beberapa atribut yang
lebih kecil dengan arti tertentu. Contoh: nama lengkap yang terbagi menjadi
nama depan, tengah, dan belakang.



Atribut derivatif: atribut yang dihasilkan dari atribut lain dan tidak wajib ditulis
dalam diagram ER. Contoh: usia, kelas, selisih harga.

Gambar 7.2 Atribut

7.1.3

Relasi
Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang

berbeda. Gambar relasi diwakili oleh simbol belah ketupat. Relasi juga terbagi menjadi
beberapa jenis:


One to one: setiap entitas hanya bisa mempunyai relasi dengan satu entitas lain.
Contoh: siswa dengan nomor induk siswa



One to many: hubungan antara satu entitas dengan beberapa entitas dan
sebaliknya. Contoh: guru dengan murid dan sebaliknya.



Many to many: setiap entitas bisa mempunyai relasi dengan entitas lain, dan
sebaliknya. Contoh: siswa dan ekstrakurikuler.

76



Gambar 7.3 Relasi Many to Many

7.1.4

Garis
Garis yang menghubungkan antar atribut untuk menunjukkan hubungan entitas

pada diagram ER.
7.2 Cara Membuat Entity Relationship Diagram
7.2.1

Identifikasi entitas
Langkah pertama dalam membuat ERD adalah mengidentifikasi semua entitas

yang akan kamu gunakan. Tulislah dalam sebuah persegi panjang dengan deskripsi
singkat tentang informasi apa yang akan disimpan. Gambarlah sebuah persegi untuk
setiap entitas yang terpikirkan olehmu, jangan lupa berikan space di sekitar kotak untuk
informasi lainnya nanti.
7.2.2

Identifikasi dan deskripsikan relasi entitas
Cari dua entitas yang sekiranya mempunyai hubungan. Jika sudah ditemukan,

buatlah garis yang menghubungkan keduanya. Selanjutnya, bagaimanakah kedua
entitas

tersebut

berhubungan?

Kamu

bisa

membuat

simbol diamond untuk

mendeksripsikan hubungan kedua entitas tersebut.
7.2.3

Tambahkan atribut
Jangan lupa tambahkan atribut kunci untuk setiap entitas dengan menggunakan

simbol oval. Ingat beberapa perbedaan atribut yang sudah disebutkan di atas.
77



7.2.4

Penuhi diagram
Setelah kamu sudah membuat beberapa contoh entitas yang terhubungkan oleh

garis dan membuat diamond di antara kedua entitas tersebut, berarti semua hubungan
telah mempunyai deskripsi masing-masing. Mungkin tidak setiap entitas mempunyai
hubungan, atau beberapa di antaranya malah memiliki relasi yang banyak, tapi itu tidak
masalah, tetap lanjutkan ERD-mu.
Setelah diagrammu sudah penuh, pastikan kembali hal-hal yang tadinya kamu
ragukan, apakah entitas dan atribut yang belum mempunyai hubungan memang perlu
ditulis? Jika tidak, kamu bisa menghapus atau mengubah nama entitas tersebut. Berikut
ini ada beberapa tips agar ERD-mu efektif dan mudah dipahami:


Pastikan nama entitas hanya muncul sekali dalam setiap diagram.



Namai setiap entitas, relasi, dan atribut pada program.



Uji kembali dengan teliti relasi antarentitas. Apakah mereka dibutuhkan? Atau
adakah hubungan-hubungan yang terlewatkan? Buanglah relasi yang berulang.
Jangan gabungkan relasi dengan satu sama lain.



Gunakan warna terang yang berbeda untuk menandai porsi penting ERD-mu.

78



Gambar 7.4 Entity Relationship Diagram – Internet Sales Model

7.3 Transformasi model data ke basis data fisik
Transformasi merupakan perubahan dari suatu bentuk kebentuk yang lain. Dalam
pembahasan kita akan mengubah bentuk menjadi basis data fisik yang kita gunakan untuk
membangun suatu sistem basis data, yakni ERD (Entity Relationship Diagram)
ditransformasikan dalam bentuk basis data secara fisik.
Komponen ERD (Entity Relationship Diagram) ditransformasikan dalam bentuk tabel
yang merupakan komponen utama pembentukan basis data. Atribut yang terdapat pada masingmasing entitas akan dinyatakan sebagai field atau kolom dari tabel yang sesuai.
7.4 Teknis untuk melakukan tranformasi ERD ke dalam basis data fisik


Setiap entitas akan diimplementasikan dalam bentuk sebagai sebuah tabel. contohnya
seperti berikut ini :

79



Gambar 7.5 Transformasi entitas menjadi sebuah tabel-tabel



Relasi dengan derajat Relasi 1-1 yang menghubungkan 2 buah himpunan entitas yang
direpresentasikan dalam bentuk penambahan/penyertaan atribut-atribut relasi ke tabel
yang mewakili salah satu dari kedua himpunan entitas. contohnya seperti berikut ini :

Gambar 7.6 Transformasi entitas dan relasinya yang mempunyai drajat relasi 1-1



Relasi dengan derajat relasi 1-N yang menghubungkan 2 buah himpunan entitas, juga
akan direpresentasikan dalam bentuk pemberian/pencantuman atribut key dari
himpunan entitas berderajat 1 ke tabel yang mewakili himpunan entitas berderajat N.
Atribut key dari himpunan entitas berderajat 1 menjadi atribut tambahan bagi himpunan
entitas berderajat N.
Contoh :

Gambar 7.7 Transformasi entitas dan relasinya yang mempunyai drajat relasi N-1



Relasi dengan derajat relasi N-N yang menghubungkan 2 buah himpunan entitas,
diwujudkan dalam bentuk tabel khusus yang memiliki field (tepatnya foreign key) yang
berasal dari key-key dari himpunan Entitas yang dihubungkannya.
80



Contoh :

Gambar 7.8 Transformasi entitas dan relasinya yang mempunyai drajat relasi N-N

7.5 Implementasi Himpunan Entitas Lemah Dan Sub Entitas
Himpunan entitas lemah tidak dapat berdiri sendir tanpa entitas kuat. Dalam
mentransformasikan dari ERD ke dalam bentuk basis data fisik keduanya sama akan terbentuk
sebuah tabel. Namun yang membedakan adalah jika entitas kuat jika ditransformasikan ke
dalam basis data fisik langsung menjadi tabel memiliki atribut key yang bertindak sebagai
primary key dan atribut yang lain secara utuh, maka entitas lemah hanya dapat di
transformasikan dalam bentuk tabel dengan menyertakan primary key dari entitas kuat dan
atribut yang dimiliki oleh entitas lemah itu sendiri.
Contoh :

Gambar 7.9 Bentuk ERD dari suatu himpunan entitas lemah dan kuat beserta relasinya

81



Sehingga tabel dalan basis datanya adalah seperti gambar dibawah ini:

Gambar 7.10 Bentuk Tabel yang terbentuk dari transformasi ERD pada gambar nomer 7

Pada gambar di atas jelas terlihat bahwa entitas kuat dapat langsung ditransformasikan
membentuk tabel dengan atribut yang dimiliki oleh dirinya sendiri. Sedangkan kita lihat
pada entitas orang tua yang merupakan entitas lemah setelah ditransformasikan ke bentuk
tabel basis data atributnya harus mengambil primary key dari entitas mahasiswa yang
merupakan entitas kuat karena memang entitas lemah tidak dapat berdiri sendiri. Begiut juga
dengan entitas hobi.
Kemudian untuk implementasi sub entitas contohnya seperti berikut :

Gambar 7.11 Sub entitas dan super entitas

Maksud gambar di atas adalah terdapat suatu relasi antara super entitas dengan sub-sub entitas
di bawahnya namanya adalah hubungan ISA yang ber arti "is a", maksudnya hubungan ini
hampir sama seperti hubungan "inheritance", yakni super entitas akan mewariskan atribut
yang dimilikinya untuk digunakan pada sub entitasnya contoh seperti dosen memiliki
atribut kode dos, apabila dia seorang dosen tetap dia mempunyai NIK dll. Disamping dia
memiliki NIK dia juga akan memiliki kode dos karena dia termasuk turunan dari dosen begitu
82



juga untuk dosen tidak tetap dia juga memiliki atribut yang berbeda juga namun dia juga
turunan dari dosen karena dia memiliki kode dos. Ini yang dinamakan dengan hubungan antara
sub entitas.

83



LATIHAN
SOAL
1. Apa itu model ER ?
2. Apa fungsi dari model ER?
3. Apa perbedaan entitas kuat dan entitas lemah?
4. Apa itu basis data fisik ?
5. Apa tujuan transformasi model data ke basis data fisik?
JAWABAN
1.


Model Entity-Relationship adalah model data konseptual tingkat tinggi untuk
perancangan basis data. Model data konseptual adalah himpunan konsep yang
mendeskripsikan struktur basis data, transaksi pengambilan dan pembaruan basis data.



Model ER adalah data konseptual tak tergantung DBMS dan platform perangkat keras
tertentu. Model ER dikemukakan oleh Chen [1976]. Sejak itu, telah memperoleh
banyak perhatian dan perluasan.



Model ER adalah persepsi terhadap dunia nyata sebagai terdiri objek-objek dasar yang
disebut entitas dan keterhubungan (relationship) antar entitas-entitas itu.

2. Model ER digunakan untuk menyusun struktur data dan hubungan antar data, dan untuk
menggambarkannya digunakan notasi, simbol, bagan, dan lain sebagainya.

84



3.

4. Physical data merupakan suatu konsep bagaimana diskripsi detail data disimpan dalam
sebuah komputer. Physical data merupakan level rendah (low level) yang mendekati ke data
sebenarnya. Dalam physical data menjelaskan definisi data yang meliputi nama atribut, type
data (misalnya varchar, integer dll), size atau ukurannya data. Data yang diimplementasikan
berupa table yang terdiri dari barisan data dalam kolom (field) dan baris (record).
5. Untuk memulai pengisian data yang diperoleh secara lengkap menjadi sebuah tabel yang
nantinya dijadikan informasi yang berguna.

85



BAB VIII
NORMALISASI DATA
Learning Outcome :


Mampu menjelaskan normalisasi data.



Mampu mendeskripsikan perbedaan bentuk-bentuk dalam normalisasi data.



Mampu menormalisasi data minimal dalam bentuk normal pertama, kedua, dan ketiga
(1NF, 2NF, dan 3NF).

8.1 Normalisasi Data
Normalisasi didefinisikan sebagai teknik yang menggunakan metode tertentu untuk
menyusun, mengdekomposisi, atau memecah data untuk mencegah masalah pemrosesan data
dalam database. Permasalahan yang dibahas terkait dengan adanya penyimpanganpenyimpangan (anomalies) akibat adanya duplikasi data dan inefisiensi pengolahan data.
Normalisasi dalam database dimaksudkan untuk menghilangkan abnormalitas dari
pembaruan data yang dilakukan (data update).1 Normalisasi menghilangkan anomali yang ada
dengan mengeliminasi redudansi data dan abnormal update pada skema relasional. Eliminasi
data yang tidak diperlukan tidak akan menghilangkan informasi yang ada, melainkan untuk
meningkatkan efisiensi database.
8.2 Bentuk-bentuk Normalisasi Data
Normalisasi data dimulai dengan model data sederhana dimana ia masih memiliki nilai
lebih dari satu dalam satu baris (multiple values). Bentuk seperti ini dinamakan dengan bentuk
tidak normal atau unnormalized form (UNF), dilanjutkan dengan bentuk normal (normal form)
pertama, kedua, ketiga, Boyce-Codd, kempat, kelima, dan seterusnya. Semakin tinggi
tingkatan bentuk normalisasi yang diimplementasikan, maka semakin padat bentuk yang
didapatkan, bukan sebaliknya.
8.2.1

Bentuk Tidak Normal (Unnormalized Form)
Unnormalized form merupakan tahap persiapan atau tahap awal dari proses

normalisasi dimana tahap ini memuat data sebenarnya yang diambil secara langsung
(contohnya laporan pembelian atau penjualan) dari sekumpulan formulir atau dokumen
dan dari data model yang didasarkan pada formulir atau dokumen aslinya.
86



Relasi tidak normal hanyalah kumpulan data yang berantakan dan tidak beraturan tetapi
tahap persiapan ini sangatlah penting karena setiap tahapan normalisasi bergantung
pada normalisasi sebelumnya.
Ciri-ciri UNF:


Data belum mengikuti suatu format tertentu.



Dapat saja data tidak lengkap atau terduplikasi.



Data dikumpulkan apa adanya sesuai dengan kedatangannya.

Berikut ini contoh dari UNF:

multivalued attribute
Tabel 8.1 Unnormalisasi

8.2.2

Bentuk Normal Pertama (First Normal Form)
Setelah relasi dalam bentuk tidak normal selesai, maka tahap selanjutnya adalah

normalisasi ke dalam bentuk normal pertama (1NF). 1NF merupakan tahap yang sangat
penting dalam proses normalisasi karena pada tahap ini, data dipecah dan
dikelompokkan ke dalam tabel yang berelasi antara satu data dengan data lainnya
sehingga akan tercipta suatu keselarasan dalam satu tabel dan relasinya dengan tabel
lain. Pada tahap ini, semua atribut/domain yang bernilai ganda dihilangkan karena
setiap tuple harus bersifat atomic atau non-divisible (tidak dapat dibagi atau dipecah).
Ciri-ciri 1NF:


Data dimasukan ke dalam tabel dan menjadi sebuah flat file.



Dalam tabel tidak ada atribut bernilai ganda (multivalued attributes dan composite
attributes), sehingga setiap nilai dari atribut adalah atomic.

87



Berikut contoh dari 1NF:

nilai dari atribut bersifat atomic
Tabel 8.2 First Normal Form

8.2.3

Bentuk Normal Kedua (Second Normal Form)
Tabel-tabel yang sudah dalam bentuk normal pertama harus memenuhi

kualifikasi tertentu agar menjadi bentuk normal kedua. Pada tahap ini, primary key dari
setiap tabel ditentukan karena atribut bukan kunci harus secara fungsional bergantung
kepada primary key.
Ciri-ciri 2NF:


Data relasional sudah dalam bentuk normal pertama.



Kunci tiap atribut/field sudah ditentukan (primary key), sehingga atribut bukan
kunci secara fungsi bergantung pada primary key.

Contoh dari 2NF:

tabel dipecah berdasarkan primary key

Tabel 8.3 Second Normal Form

88



8.2.4 Bentuk Normal Ketiga (Third Normal Form)
Apabila suatu tabel sudah mencapai bentuk normal ketiga, maka tabel tersebut
sudah dapat dikatakan sebagai tabel yang baik karena duplikasi data data sudah hilang,
pengoperasian menjadi lebih mudah, dan mengurangi kompleksitas. Dalam 3NF,
semua atribut yang tidak bergantung pada primary key melainkan pada field lain harus
dihilangkan (Transitive Dependency).
Ciri-ciri 3NF:


Sudah dalam bentuk normal kedua.



Tidak adanya ketergantungan transitif.

Contoh dari 3NF:

atribut ket_mem bergantung pada atribut tipe_mem
yang bukan primary key, maka dari itu perlu dibuat
tabel baru untuk menghilangkan transitive dependency.

Tabel 8.4 Third Normal Form

8.3 Konsep Ketergantungan
Hubungan ketergantungan merupakan salah satu konsep dasar normalisasi, yaitu
menggambarkan hubungan antar atribut atau antar field, atau secara spesifiknya menjelaskan
nilai suatu atribut yang menentukan nilai atribut lainnya.2 Berikut beberapa jenis hubungan
ketergantungan:

89



8.3.1

Ketergantungan Fungsional (Functional Dependency)
Ketergantungan fungsional adalah batasan (constraint) antara dua atribut dalam

suatu tabel. Batasan tersebut berupa hubungan satu arah antara dua atribut dimana untuk
setiap nilai unik di atribut A, hanya ada satu nilai di atribut B yang berelasi dengannya
dari seluruh relasi yang ada.3
Contoh dari ketergantungan fungsional:

Apabila diketahui nilai dari salah satu record pada atribut StudentID, kita akan memperoleh atau
mengetahui nama mahasiswa beserta birth of date mereka. Oleh karena itu, dapat dikatakan bahwa
first name, last name, dan DOB bergantung secara fungsional kepada StudentID.
Tabel 8.5 Functional Dependency

8.3.2

Ketergantungan Transitif (Transitive Dependency)

Ketergantungan transitif ada apabila sebuah relasi dibentuk secara tidak langsung oleh
dua ketergantungan fungsional.
Untuk lebih jelasnya, berikut contoh ketergantungan transitif:

Atribut Release_Date tidak bergantung pada primary key Director_ID, melainkan bergantung pada
atribut non-primary key Movie. Relasi ini disebut dengan Transitive Dependency karena dengan
Director_ID, kita dapat mengetahui Release_Date melalui atribut Movie.
Tabel 8.6 Transitive Dependency

90



8.4 Ketergantungan Trivial (Trivial Dependency)
Sebuah relasi dikatakan sebagai Trivial Dependency apabila pada suatu relasi
terdapat banyak ketergantungan fungsional termasuk dengan atribut aslinya.
Untuk lebih jelasnya, lihat contoh di bawah ini.

{StudentID, Student_Name} → StudentID merupakan
Trivial Dependency karena StudentID merupakan bagian
dari himpunan {StudentID, StudentName}. Karena untuk
memenuhi nilai atribut StudentName ditentukan oleh nilai
atribut StudentID.

Tabel 8.7 Trivial Dependency

8.4 Status Kunci
Kunci merupakan atribut yang secara unik mewakili suatu entitas sehingga entitas
antara satu baris/record dengan baris lainnya dapat dibedakan.
8.4.1

Superkey
Merupakan kombinasi dari satu atau beberapa atribut yang membedakan setiap

baris data dalam tabel secara unik.
8.4.2

Candidate Key
Atribut atau sekelompok atribut bersifat unik yang dapat digunakan untuk

mengidentifikasi atau membedakan satu baris data/record dalam suatu entitas dengan
yang lain.
8.4.3

Primary Key
Salah satu candidate key yang dipilih menjadi kunci utama untuk dijadikan

tumpuan agar mencari informasi menjadi lebih ringkas, sehingga dapat dikatakan
bahwa primary key adalah kunci yang sifatnya tunggal, unik, dan tidak boleh kosong
(not null).
8.4.4

Foreign Key
Satu atau sekelompok atribut yang digunakan untuk menghubungkan dua tabel

dimana terdapat suatu atribut yang merupakan suatu primary key dalam suatu tabel
berbeda.
8.4.5

Alternate Key
Merupakan candidate key yang tidak dipilih menjadi primary key.
91



candidate keys

primary key

alternate keys
foreign key

superkey
{EmpSSN, EmpNum, PayrollID}
{EmpSSN, EmpNum}
{EmpSSN, PayrollID}
{EmpSSN}

Gambar 8.1 Status Kunci

8.5 Dekomposisi
Dekomposisi didefinisikan sebagai proses memecah atau menguraikan sesuatu menjadi
bagian-bagian yang lebih kecil (elemen). Dekomposisi harus bersifat lossless atau tidak
menghilangkan informasi-informasi yang dimuat dalam tabel aslinya. Hal ini disebut dengan
lossless-join decomposition. Lossless-join digunakan untuk menjamin integritas atau keutuhan
data dalam operasi gabungan (join) dan merupakan fokus dalam rancangan database relasional.
Dalam database, dekomposisi merupakan upaya memecah suatu tabel menjadi
beberapa tabel agar tidak terdapat anomali dan redudansi. Redudansi merupakan pengulangan
data pada beberapa tupel yang tidak diperlukan, sedangkan anomali adalah penyimpangan pada
tabel yang timbul pada proses modifikasi data yang terdiri dari deletion anomaly, insertion
anomaly, dan update anomaly.

92



Gambar 8.2 Dekomposisi

Deletion anomaly yaitu anomali yang menyebabkan hilangnya informasi akibat dari
penghapusan informasi. Insertion anomaly artinya penambahan tupel baru yang inkonsisten
dengan tupel lain. Sementara update anomaly adalah proses perubahan pada suatu entitas yang
mengakibatkan perubahan pada lebih dari satu tempat dalam satu relasi.

93



Redudansi,
pengulangan
data
pada tupel yang tidak
diperlukan.

Deletion Anomaly,
apabila Rosamund
Pike dihapus, maka
informasi mengenai
Gone
Girl
menghilang.

Insertion Anomali,
apabila
disisipkan
tupel baru, maka
atribut year menjadi
tidak konsisten.

Update
Anomaly,
apabila satu tupel
diubah
atau
diperbaharui,
tidak
lantas
mengubah
informasi pada tupel
Gambar 8.3 Anomali

94



LATIHAN
SOAL
1. Mengapa normalisasi data perlu dilakukan?
2. Diberikan suatu entitas DOSEN dengan atribut {NIP, NIDN, Nama, Jenis Kelamin, Email}.
Tentukan superkey dan candidate keys pada entitas tersebut.
3. Berikan contoh dari transitive dependency!
4. Bagaimana ciri-ciri tabel yang sudah dinormalisasi pada bentuk ketiga?
5. Apakah perbedaan dari primary key dan foreign key?

JAWABAN
1. Normalisasi perlu dilakukan agar terbentuk database yang baik dan efisien. Pada normalisasi
dilakukan untuk menghilangkan data yang berulang, mengurangi kompleksitas pengisian data,
serta mempermudah data untuk dimodifikasi
2. Superkey: {NIP, NIDN, Email}, {NIP, NIDN}, {NIP, Email}, dan {NIP}.
Candidate keys: NIP dan NIDN.
3.

Transitive dependency terlihat pada hubungan antara atribut unit_code dengan atribut
course_name, dimana course_name tidak bergantung pada primary key (unit_code)
melainkan pada atribut course_code.
4. Tabel yang sudah dinormalisasi sampai bentuk ketiga memiliki ciri-ciri yaitu sudah dalam
bentuk normal kedua dan tidak adanya ketergantungan transitif.

95



5.
Primary Key

Foreign Key

Digunakan untuk memastikan bahwa Digunakan untuk menghubungan data di
data dalam suatu atribut sifatnya unik.

antara dua tabel.

Mengidentifikasi suatu record secara Mengidentifikasi primary key pada tabel
unik.

lain yang dihubungkan.

Dalam tabel, hanya diperbolehkan satu Dalam tabel, diperbolehkan lebih dari
primary key.

satu foreign key.

96



BAB IX
PENERAPAN NORMALISASI
Learning Outcome :


Dapat menerapkan teknik normalisasi pada data bentuk tidak normal hingga menjadi
bentuk 3NF



Dapat melakukan pengujian normalisasi

9.1 Teknik Normalisasi
Seperti yang sudah disinggung sebelumnya, normalisasi adalah teknik/pendekatan yang
digunakan dalam membangun desain logic database relasional melalui organisasi himpunan
data dengan tingkat ketergantungan fungsional dan keterkaitan yang tinggi sedemikian
sehingga menghasilkan struktur tabel yang normal. Implementasi dari normalisasi data dapat
dilihat pada proses penjualan video game di sebuah toko.
9.2 Bentuk tidak normal
Pada catatan penjualan pada sebuah too video game, data yang disajikan masih mentah dan
berbentuk tidak normal. Berikut merupakan kumpulan data yang terdapat di dalam catatan
penjualan di sebuah toko video game.
Cust

Item

Name
Alexa

Shipping

Newsletter

Supplier

Address
Xbox one

Jl

Price

phone

melati Xbox

no

Supplier

Microsoft

5, News

(700)BUY- 250
XBOX

Jakarta
Robin

PlayStation 4

Jl.

PlayStation Sony

(700)BUY- 300

Anggrek

News

SONY

no

10,

Bekasi
Richard Xbox one, PS Jl
Vita

Xbox

pajajaran
no
Jakarta

whosale

Toll Free

450

News,

11, PlayStation
News

97



Felix

Playstation 4

Jl.

Elang PlayStation Sony

no

(700)BUY- 300

56, News

SONY

Bogor
Tabel 9.1 Unnormalisasi

9.3 Bentuk 1NF
Suatu tabel dikatakan 1NF jika dan hanya jika setiap atribut dari data tersebut hanya memiliki
nilai tunggal dalam satu baris. Jadi, tabel yang belum dinormalisasi tadi perlu diubah, sehingga
bentuk 1NF menjadi seperti ini:
Cust

Cust

ID

Name

Al213

Alexa

Item

Shipping

Newsletter

Supplier

Address
Xbox one

Price

phone

Jl melati Xbox
no

Supplier

Microsoft (700)BUY- 250

5, News

XBOX

Jakarta
RO998 Robin

PlayStation

Jl.

PlayStation Sony

(700)BUY- 300

4

Anggrek

News

SONY

no

10,

Bekasi
RI766

Richard Xbox one

Jl

Xbox

pajajaran

News

XBOX

Jl

PlayStation Sony

(700)BUY- 200

pajajaran

News

SONY

no

Microsoft (700)BUY- 250

11,

Jakarta
RI766

Richard PS Vita

no

11,

Jakarta
FE328

Felix

Playstation

Jl. Elang PlayStation Sony

(700)BUY- 300

4

no

SONY

56, News

Bogor
Tabel 9.2 1NF

Inti dari normalisasi 1NF adalah tidak boleh ada grouping data ataupun duplikasi data.
Sekarang lanjut pada tahap normalisasi 2NF.

98



9.4 Bentuk 2NF
Syarat

2NF

adalah

tidak

diperkenankan

adanya partial “functional

dependency“ kepada primary key dalam sebuah tabel. Functional dependency adalah setiap
atribut yang bukan kunci (non key) bergantung secara fungsional terhadap primary key.
Intinya

adalah

pada

tahap

normalisasi

2NF

ini

tabel

tersebut

harus

dipecah

berdasarkan primary key. Sehingga bentuk normalisasi 2NF dari tabel tersebut adalah sebagai
berikut:
Cust ID

Cust Name

Shipping Address

Al213

Alexa

Jl melati no 5, Jakarta

RO998

Robin

Jl.

Anggrek

no

10,

no

11,

no

11,

Bekasi
RI766

Richard

Jl

pajajaran

Jakarta
RI766

Richard

Jl

pajajaran

Jakarta
FE328

Felix

Jl. Elang no 56, Bogor

Item

Supplier

Supplier phone

Newsletter

Price

Xbox one

Microsoft

(700)BUY-

Xbox

250

XBOX

News

(700)BUY-

PlayStation 300

SONY

News

(700)BUY-

Xbox

XBOX

News

(700)BUY-

PlayStation 200

SONY

News

(700)BUY-

PlayStation 300

SONY

News

PlayStation 4
Xbox one
PS Vita
Playstation 4

Sony
Microsoft
Sony
Sony

250

99



Cust ID

Item

Al213

Xbox one

RO998

PlayStation 4

RI766

Xbox one

RI766

PS Vita

FE328

Playstation 4
Tabel 9.3 2NF

9.5 Bentuk 3NF
Pada 3NF tidak diperkenankan adanya partial “transitive dependency“ dalam sebuah
terdapat tiga atribut A, B, C. Kondisinya adalah A ⇒ B dan B ⇒ C. Maka C dikatakan
100able. Transitive dependency biasanya terjadi pada 100able hasil relasi, atau kondisi dimana
sebagai transitive dependency terhadap A melalui B.

Intinya pada 3NF ini, jika terdapat suatu atribut yang tidak bergantung pada primary key tapi
bergantung pada field yang lain maka atribut-atribut tersebut perlu dipisah ke 100able baru.
Contohnya ada pada atribut ‘Supplier Phone’, kolom tersebut tidak bergantung langsung
pada primary key ‘Item’ melainkan bergantung pada kolom ‘Supplier’. Hasil dari normalisasi
bentuk 3NF dapat dilihat pada halaman selanjutnya.

100



Cust ID#

Cust Name

Shipping Address

Al213

Alexa

Jl melati no 5, Jakarta

RO998

Robin

Jl. Anggrek no 10, Bekasi

RI766

Richard

Jl pajajaran no 11, Jakarta

FE328

Felix

Jl. Elang no 56, Bogor

Item#

Supplier##

Price

Xbox one

Microsoft

250

PlayStation 4

Sony

300

PS Vita

Sony

200

Supplier#

Supplier phone

Newsletter

Microsoft

(700)BUY-

Xbox News

XBOX
Sony

(700)BUY-

PlayStation

SONY

News

Cust ID##

Item##

Al213

Xbox one

RO998

PlayStation 4

RI766

Xbox one

RI766

PS Vita

FE328

Playstation 4
Tabel 9.4 3NF

101



Seperti itulah cara normalisasi database 1NF, 2NF, dan 3NF dalam contoh kasus normalisasi
data catatan penjualan pada toko video game.
9.6 Pengujian Normalisasi

Kartu Hasil Transaksi
ID Customer

: RO998

Customer Name

Shipping Address

: Jl. Anggrek no 10, Bekasi

: Robin

Item

Supplier

Supplier Phone

Newsletter

Price

PlayStation 4

Sony

(700)BUY-SONY

PlayStation News

300

Kartu Hasil Transaksi
ID Customer

: RI766

Customer Name

Shipping Address

: Jl pajajaran no 11, Jakarta

: Richard

Item

Supplier

Supplier Phone

Newsletter

Price

PlayStation 4

Sony

(700)BUY-SONY

PlayStation News

300

PS Vita

Sony

(700)BUY-SONY

PlayStation News

200

Tabel 9.5 Pengujian Normalisasi

102



LATIHAN
SOAL
1. Jelaskan apa yang dimaksud dengan Teknik normalisasi?
2. Jelaskan mengapa sebuah data dapat dikatakan sebagai bentuk tidak normal?
3. Seperti apa data yang telah memasuki tahap 1NF?
4. Apa tujuan dari adanya normalisasi?
5. Seperti apa data yang telah memasuki tahap 3NF?

JAWABAN
1. Teknik normalisasi adalah teknik pengelompokan data elemen menjadi tabel-tabel yang
menunjukkan entity dan relasinya. Pada proses normalisasi dilakukan pengujian pada beberapa
kondisi apakah ada kesulitan pada saat menambah/menyisipkan,
menghapus, mengubah dan mengakses pada suatu basis data. Bila terdapat kesulitan pada
pengujian tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan kata lain
perancangan basis data belum optimal.
2. Bentuk tidak normal (unnormalized) merupakan kumpulan data yang direkam tidak ada
keharusan dengan mengikuti suatu format tertentu.
Pada bentuk tidak normal terdapat repeating group (Pengulangan Group), sehingga pada
kondisi ini data menjadi permasalahan dalam melakukan manipulasi data (insert, update, dan
delete) atau biasa disebut anomali.
3.


Tidak adanya atribut multi-value, atribut komposit atau kombinasinya.



Mendefinisikan atribut kunci.



Setiap atribut dalam tabel tersebut harus bernilai atomic (tidak dapat dibagi-bagi lagi)



Menghilangkan kerangkapan data,



Mengurangi kompleksitas, dan



Mempermudah pemodifikasian data.

4.

103



5.


Sudah berada dalam bentuk normal kedua (2NF). Dimana syarat dalam bentuk 2NF
yaitu :
o Sudah memenuhi dalam bentuk normal kesatu (1NF)
o Semua atribut bukan kunci hanya boleh tergantung (functional dependency) pada
atribut kunci
o Jika ada ketergantungan parsial maka atribut tersebut harus dipisah pada tabel
yang lain
o Perlu ada tabel penghubung ataupun kehadiran foreign key bagi atribut-atribut
yang telah dipisah tadi



Tidak ada ketergantungan transitif (dimana atribut bukan kunci tergantung pada
atribut bukan kunci lainnya).

104



DAFTAR PUSTAKA
Ulti Desi Arni. “Konsep Hirarki Database dan Contohnya “.
https://garudacyber.co.id/artikel/908-konsep-hirarki-database-dan-contohnya 2018-08-06
10:30:00.
M Fikri Setiadi. “7 Manfaat Database”. http://mfikri.com/artikel/7-Manfaat-database.html. 11
Mei 2017.
Basis Data: “Operasi Dasar Basis Data”.
https://materibasisdata.blogspot.com/2010/10/operasi-dasar-basis-data.html. 24 Okt 2018.
Airlangga University: “Redudansi dan Inkonsistensi Data Redudansi
Data”.https://www.coursehero.com/file/p7b3jg2/Redundansi-dan-Inkonsistensi-DataRedundasi-data-merupakan-adanya-duplikasi/.
Rakhmawati Putri Rasyid: “Data
Independence”.https://rakhmawatiputrirasyid.wordpress.com/tag/data-independence/.18 Juni
2011
Catatan Kuliah Aam73: “Pengertian Integritas
Data”.https://catatankuliahaam73.wordpress.com/2017/03/06/pengertian-integritas-data-2/. 6
Maret 2017
Fathansyah. (2012). Basis Data. Informatika.
Elmasri, R., & Navathe, s. B. (2004). Fundamentals Of Database Systems, Fourth Edition.
Pearson Education, Inc.
Nababan, D. Sistem Basis Data. Universitas Pelita Harapan.
Connolly, T., & Begg, C. (2015). Database Systems, A Practical Approach to Design,
Implementation, and Management. Sixth Edition. Pearson Education Limited.
“Modul 1, Basis Data Dan Sistem Basis Data”, dikutip dari
https://lmsspada.kemdikbud.go.id/pluginfile.php/80590/mod_resource/content/0/Modul%201
-BD%20dan%20SBD.pdf pada tanggal 9 November 2020.
DBMS - Overview. (t.thn.). Diambil kembali dari tutorialspoint:
https://www.tutorialspoint.com/dbms/dbms_overview.htm
ix



Mulyawan, R. (2019, Maret 12). Penjelasan Pengertian DBMS: Menurut Para Ahli, Tujuan,
Macam, Ciri, Karakteristik, Komponen dan Contohnya! Diambil kembali dari
RifqiMulyawan.com: https://rifqimulyawan.com/blog/pengertian-dbms/
Pengertian DBMS: Fungsi, Manfaat, Komponen, Cara Kerja, dan Contohnya. (t.thn.).
Diambil kembali dari Maxmanroe.com:
https://www.maxmanroe.com/vid/teknologi/komputer/pengertian-dbms.html
Susanto, A., & Meiryani. (2019). Database Management System. International Journal of
Scientific & Technology Research, 309-311.
What is DBMS? Application,Types,Example,Advantages. (t.thn.). Diambil kembali dari
Guru99: https://www.guru99.com/what-is-dbms.html

minarnigtiya.B, “entity relationship diagram” dikutip dari
https://www.academia.edu/37245011/Entity_Relationship_Diagram pada tanggal 6 november
2020
Ramadhani.R,“Types of database models”, dikutip dari https://rima.dosen.ittelkompwt.ac.id/wp-content/uploads/sites/38/2017/10/Pertemuan-3-11-Oktober-2017-TipeDBMS.pdf pada tanggal 28 oktober 2020
"Tahapan pembuatan ERD (entity relationship diagram) dikutip dari
https://repository.dinus.ac.id/docs/ajar/TAHAPAN_PEMBUATAN_ERD_MATERI_05.pdf
pada tanggal 5 november 2020
Agung.S “database entity relationship diagram” dikutip dari
http://power.lecture.ub.ac.id/files/2015/03/Modul-Basis-Data-I-3-ERD.pdf hal.2 pada tanggal
5 november 2020
“Si ERD bar” dikutip dari metty.staff.gunadarma.ac.id pada tanggal 5 november 2020
Radlliya.N, “basis data” dikutip dari
https://repository.unikom.ac.id/51466/1/Materi%209%2C10%20%20Pemodelan%20Data%20%5BSBD%20-%202017%5D.pdf pada tanggal 6 november
2020
“Modul 4:relasi atau relationship” dikutip dari http://lea.si.fti.unand.ac.id/wpcontent/uploads/2018/02/modul-5-Relasi.pdf pada tanggal 9 november 2020
x



Artale, Calvanese, Kontchakov, V. Ryzhikov, M. Zakharyaschev, Reasoning over Extended
ER Models, C. Parent et al. (Eds.): ER 2007, Springer-Verlag Berlin Heidelberg 2007
Alessandro Artale, Enrico Franconi, Temporal ER Modeling with Description
Logics, Lecture Notes in Computer Science book series (LNCS, volume 1728), SpringerVerlag Berlin Heidelberg 2007
P. Chen, P., “The Entity-Relationship Model: Towards a Unified View of Data,” ACM
Transactions on Database Systems 1(1), 1976.
Peter Pin-Shan Chen, "English, Chinese and ER-Diagrams," Data & Knowledge Engineering,
pp. 5- 16, 1997.
Ramez Elmasri and Shamkant B Navathe, Fundamentals of Database Systems, 4th ed.
International: Pearson Addison-Wesley, 2004.
R. Elmasri, S. B. Navathe, Fundamentals of Database Systems, Seventh Edition,
Published by Pearson, ISBN-13: 978-0-13-397077-7
Guru99.” Relational Data Model in DBMS: Concepts, Constraints, Example”.
https://www.guru99.com/relational-data-model-dbms.html. (diakses pada tanggal 5
november 2020 pukul 20.00)
SI283.”Perbedaan Candidate Key, Primary Key, Dan Foreign
Key”.http://si283.ilearning.me/2015/11/22/perbedaan-candidate-key-primary-key-danforeignkey/#:~:text=Misalnya%20No.%20induk%20di%20jadikan%20primary%20key%2C
%20maka,relationship%20%28hubungan%29%20terhadap%20primary%20key%20yang%20
menunjukan%20keinduknya.(diakses pada tanggal 11 November 2020 pukul 07.00).
Lunarphue’s Blog.”Constraint in database”.https://lunarphue.wordpress.com/informationtechnology/basis-data/ddl-dan-dml/constraint-in-database/.(diakses pada tanggal 11
November 2020 pukul 15.00).
Entity Relationship Diagram (ERD): Apa dan Bagaimana Cara Membuatnya?, Dewaweb,
https://www.dewaweb.com/blog/entity-relationship-diagram/
Transformasi Model Data ke Basis Data Fisik, Roziq Bahtiar,
http://codeoke.blogspot.com/2012/10/transformasi-ke-Basis-data-fisik.html
xi



Model Entity Relationship, Wawan Laksito,
https://wawanlaksito.wordpress.com/2012/04/10/model-entity-relationship-er/
ERD apa sih?, Afrizal N. Baharsyah, https://www.jagoanhosting.com/blog/erd-apa-sihitu/#:~:text=Jadi%2C%20ERD%20atau%20Entity%20Relationship,%2C%20bagan%2C%20
dan%20lain%20sebagainya.
Struktur Konseptual dan Fisik basis data, Kirana,
https://www.bukusekolah.net/2018/09/struktur-konseptual-dan-fisik-basis-data.html
Perbedaan Entitas Kuat dan Entitas Lemah, Gadget Info, https://id.gadgetinfo.com/difference-between-strong
Elmasri, Ramez and Shamkant B. Navathe, “Basic SQL,” in Fundamentals of Database
Systems, 7th Edition. Hoboken, New Jersey: Pearson.
Erki Eessaar. 2016. The Database Normalization Theory and the Theory of Normalized
Systems: Finding a Common Ground. Baltic J. Modern Computing Vol. 4 (1).
hlm. 5-33.
Fong, Joseph. S. P. 2015. Information Systems Reengineering, Integration, and
Normalization. New York: Springer Internationl Publishing.
Harrington, J. L. 2016. Relational Database Design and Implementation. Massachusetts:
Morgan Kaufmann Publishers.
Lestiawan, Heru. 2019. Modul Database: Normalisasi. Semarang: Universitas Dian
Nuswantoro. Tersedia di: https://repository.dinus.ac.id/ (diakses pada 11 10
November 2020).
Munif, Abdul. 2013. BASIS DATA Untuk SMK/MAK Kelas XI. Jakarta: Kementerian
Pendidikan dan Kebudayaan.
Setiati, M. Fikri. 2017. Informasi Literatur: Konsep Ketergantungan dalam Normalisasi
Data. Tersedia di: http://mfikri.com/artikel/konsep-ketergantungan-dalamnormalisasidata.html#:~:text=3.%20Trivial%20Dependency,dapat%20dilakukan%20peng
hapusan%20trivial%20dependency. (diakses pada 10 November 2020)

xii



Sidiq, Mohamad. 2018. Modul Basis Data: Dependensi Fungsional. Semarang: Universitas
Dian Nuswantoro. Tersedia di: https://repository.dinus.ac.id/ (diakses 10
November 2020).
Singh, Chaitanya. 2015. Informasi Literatur: Transitive Dependency in DBMS. Tersedia di:
https://beginnersbook.com/2015/04/transitive-dependency-in-dbms/ (diakses
pada 10 November 2020)
Widhyaestoeti, D. Teknik dan Penerapan Normalisasi. https://adoc.pub/teknik-danpenerapan-normalisasi.html. (Diakses pada tanggal 3 November 2020)
Muslim, A, R. 2019. Normalisasi Database 1NF, 2NF & 3NF.
https://medium.com/dycode/normalisasi-database-1nf-2nf-3nf-f609174e353a. (Diakses pada
tanggal 3 November 2020)

xiii





C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.
C:\Users\Maulana Rifan Haditama-11190930000060> Terdapat beberapa
tantangan yang cukup menantang dalam pembuatan modul ini, dilihat
dari segi pengelompokan materi serta penyusunannya. Penulis
berjuang keras agar materi dapat dengan mudah diterima oleh pembaca
dengan baik. Namun berkat kerja keras sekaligus kerjasama yang
dilakukan oleh para penulis, tantangan yang diterima itu pun dapat
mudah dilalui seiring berjalannya waktu. Alhamdulillah modul telah
terselesaikan, semoga modul dapat bermanfaat dan usaha yang telah
kami curahkan dapat mempermudah pembaca dalam menggali ilmu terkait
modul ini. Terimakasih.

C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.
C:\Users\Salman Yusuf-11190930000051> Alhamdulillaahi
rabbil’aalamiin. Dalam pembuatan modul sistem basis data ini, penulis
dapat mendapat pengetahuan-pengetahuan baru yang sangat bermanfaat.
Semoga modul ini juga dapat bermanfaat bagi orang-orang lainnya,
karena sistem basis data merupakan suatu hal yang sangat penting dan
tidak dapat dilepas peranannya dari bidang sistem informasi. Penulis
juga ingin menyampaikan permohonan maaf apabila terdapat kesalahan
dalam pembuatan modul sistem basis data ini. Terima kasih.

C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.
C:\Users\M Ridho Alghifari-11190930000062> Di dalam proses
pembuatan modul ini, khususnya BAB Database Management Systems
(DBMS), penulis merasa bersyukur diberikan kesempatan untuk
berkontribusi dalam penyusunan suatu modul Sistem Basis Data. Di
bidang sistem informasi, mempelajari sistem basis data adalah hal
yang sangat penting. Berkat penugasan pembuatan modul ini, penulis
berharap ilmu yang didapat akan berguna di masa depan. Terima kasih,
Bu Nia ^^.



C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.
C:\Users\M. Alvin Hilmy-11190930000056> Alhamdulillahi rabilalamin,
dengan ini bab 4. Entity relationship diagram telah selesai dibuat.
Saya selaku penulis merasa senang dapat berpartisipasi sebagai salah
satu penulis model basis data ini. Dan saya juga bersyukur bisa
mengerjakan bab ini dikarenakan dapat lebih memahami dan mendalami
akan materi ini. Terimakasih juga kepada teman-teman yang membantu
saya dalam memahami apa yang harus saya tulis hingga pada akhirnya
bab ini telah selesai. Dan juga saya sangat berharap kritik beserta
sarannya untuk sebagai bahan evaluasi pada penulisan modul pada lain
waktu. Dan semoga modul yang telah dibuat bisa berguna dan bermanfaat
bagi pembacanya kelak.

C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.

Lorem ipsum

C:\Users\Yayi Puspita Sari-11190930000052> Alhamdulillaahi rabbil’aalamiin..
Dalam pembuatan Bab 5 : Enchaced Entity Relationship (EER) model, penulis
mendapat banyak sekali ilmu dan berkesempatan untuk lebih memahami mengenai
Bab bahasan ini. Terimakasih atas kesempatan untuk ikut menjadi bagian dari
penyusunan modul Sistem Basis Data. Terimakasih juga pada teman-teman yang
saling menyemangati hingga pembuatan Bab ini dapat terselesaikan. Penulis
mohon maaf sebesar-besarnya apa bila terdapat kesalahan baik itu ejaan mau
pun materi yang kurang berkenan. Dimohon kritik dan sarannya agar pada
penulisan selanjutnya dapat lebih baik lagi. Harapan dari penulisan Bab ini
semoga ilmu yang didapatkan bisa bermanfaat bagi penulis sendiribdan juga
para pembaca. Karena sebaik-baiknya ilmu adalah ilmu yang bermanfaat baik
bagi banyak orang. Terimakasih :)

C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.
C:\Users\Aqshol Afifi-11190930000057> Segala puji bagi Allah swt yang
telah memudahkan saya untuk menyelesaikan tugas pembuatan modul ini,
dengan adanya tugas ini saya mendapatkan banyak pengetahuan serta
pengalaman baru yang cukup bermanfaat,saya dapat belajar secara aktif
melalui pencarian sumber materi dan pembuatan soal,saya sebagai
penulis memohon maaf apabila penulisan saya masih jauh dari kata
sempurna,Terimakasih.



C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.
C:\Users\Figo Alsistani-11190930000054> Saya bersyukur karena telah
diberi kesempatan untuk ikul andil dalam pembuatan modul ini.banyak
ilmu yang tekah saya dapat dalam proses pembuatannya. Saya memohon
maaf apabila masih banyak kekurangan dan kesalahan dalam penulisan.
Semoga apa yang saya tulis dapat bermanfaat bagi diri saya sendiri
dan para pembaca.

C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.

Lorem ipsum

C:\Users\Hana Rahmaniah Sabila-11190930000058> Pertama, saya
mengucapkan Alhamdulillah atas rasa syukur saya karena telah
menyelesaikan tugas yang diberikan. Kedua, saya ucapkan terima kasih
karena telah diberi kesempatan untuk mengerjakan bab ini sehingga
saya mendapat banyak pelajaran seiringan dengan pengerjaan modul ini.
Terakhir, saya mengucapkan terima kasih kepada Ibu Nia Kumaladewi
selaku dosen pengampu mata kuliah Sistem Basis Data serta temanteman kelas 3C yang sudah berusaha keras dan menjadi sangat
kooperatif. Saya mohon maaf atas kekurangan dalam bab ini baik dari
segi penulisan maupun pembahasan, namun saya harap tetap memberikan
manfaat bagi para pembaca.

C:\_

Command Prompt

Microsoft Windows [Version 10.0.119042.630]
(c) 2020 Microsoft Corporation. All rights reserved.
C:\Users\Annisa Rosdiyana–11190930000059> Alhamdulillah saya telah
selesai menyusun salah satu bab dari modul Database. Saya merasa
sangat bersyukur karena telah diberi kesempatan untuk berkontribusi
dalam pembuatan tulisan ini, karena saya merasa mendapat banyak
pelajaran dengan adanya ikut andil dalam salah satu pembuatan bab.
Saya memohon maaf apabila masih banyak kekurangan dan kesalahan dalam
penulisannya. Semoga apa yang saya tulis dapat bermanfaat bagi diri
saya sendiri dan juga para pembaca.


Fleepit Digital © 2020