Anda di halaman 1dari 185

KONSEP DASAR PENGENALAN

DATABASE RUMPUN
ILMU KOMPUTER

Disusun Oleh:
Drs. Afrizal zein, M.Kom
Emi Sita Eriana, S.Kom., M.Kom
Arief Budi Pratomo, S.Kom., MMSI
Chrisantus Tristianto, ST, M.Kom
Ade Suparman, S.SI., M.Kom
Devie Firmansyah,S.Kom., M.Kom
Habibi Azka Nasution, S.Si., M.Si., M.Sc
Suparyanto, S.T., M.Eng
Erna Juniasti Malaikosa, S.Kom., M.Kom
Arief Hidayat, M.Kom

Penerbit Yayasan
Cendikia Mulia Mandiri
KONSEP DASAR PENGENALAN
DATABASE RUMPUN ILMU KOMPUTER

Penulis:
Drs. Afrizal zein, M.Kom
Emi Sita Eriana, S.Kom., M.Kom
Arief Budi Pratomo, S.Kom., MMSI
Chrisantus Tristianto, ST, M.Kom
Ade Suparman, S.SI., M.Kom
Devie Firmansyah,S.Kom., M.Kom
Habibi Azka Nasution, S.Si., M.Si., M.Sc
Suparyanto, S.T., M.Eng
Erna Juniasti Malaikosa, S.Kom., M.Kom
Arief Hidayat, M.Kom

Editor & Desain Cover:


Paput Tri Cahyono

Penerbit:
Yayasan Cendikia Mulia Mandiri

Redaksi:
Perumahan Cipta No.1
Kota Batam, 29444
Email: cendikiamuliamandiri@gmail.com

ISBN: 978-623-8157-41-9
Terbit: April 2023
IKAPI: 011/Kepri/2022
Exp. 31 Maret 2024

Ukuran:
viii hal + 175 hal;
14,8cm x 21cm

Cetakan Pertama, 2023.


Hak Cipta Dilindungi Undang-Undang.
Dilarang Keras Memperbanyak Karya Tulis Ini Dalam Bentuk Dan Dengan Cara Apapun
Tanpa Izin Tertulis Dari Penerbit
KATA PENGANTAR

Syukur alhamdulillah penulis haturkan kepada


Allah Swt. yang senantiasa melimpahkan karunia dan
berkah Nya sehingga penulis mampu merampungkan
karya ini tepat pada waktunya, sehingga penulis dapat
menghadirkannya dihadapan para pembaca. Kemudian,
tak lupa shalawat dan salam semoga senantiasa
tercurah limpahkan kepada Nabi Muhammad Saw., para
sahabat, dan ahli keluarganya yang mulia.
Dewasa ini teknologi informasi semakin
berkembang sehingga mengubah manusia dalam
menyelesaikan semua perkerjaannya seperti pada saat
pencarian informasi, pengambilan keputusan, membuat
penilaian dan perkiraan untuk perencanaan dan
pengendalian atau analisis pribadi dilakukan dengan
mengunakan komputerisasi.
Ilmu Informatika dan komputer dianggap sebagai
rumpun ilmu “antar bidang” karena sejarah evolusi dan
perkembangannya, yaitu Hardware + Sofware +
Brainware + Information + System.
Dalam keperluan itulah, buku Konsep Dasar
Pengenalan Database Rumpun Ilmu Komputer ini
sengaja penulis hadirkan untuk pembaca. Tujuan buku
iii
ini adalah sebagai panduan bagi setiap orang yang ingin
mempelajari dan memperdalam ilmu pengetahuan.
Buku ini juga untuk memberikan pencerahan kepada
para pendidik, peserta didik, pelaku pendidikan,
pengelola lembaga pendidikan dan masyarakat pada
umumnya, dalam rangka menciptakan generasi emas
yang memiliki ilmu pengetahuan serta wawasan yang
luas.
Penulis menyampaikan terima kasih yang tak
terhingga bagi semua pihak yang telah berpartisipasi.
Terakhir seperti kata pepatah bahwa” Tiada Gading
Yang Tak Retak” maka penulisan buku ini juga jauh dari
kata sempurna, oleh karena itu penulis sangat
berterima kasih apabila ada saran dan masukkan yang
dapat diberikan guna menyempurnakan buku ini di
kemudian hari.

………, April 2023

Penulis

iv
DAFTAR ISI

KATA PENGANTAR ............................................................ iii


DAFTAR ISI ............................................................................ v
BAB I KONSEP DASAR DATABASE ................................. 1
1.1. Pengertian Database ....................................................1
1.2. Model Data ........................................................................3
1.2.1. Model Data Hierarki ...........................................3
1.2.2. Model Data Jaringan ...........................................4
1.2.3. Model Data Relasional .......................................5
1.2.4. Model Data Objek.................................................5
1.3. Entity-Relationship Model ..........................................6
1.4. Normalisasi Database ............................................... 11
1.5. Structured Query Language (SQL) ...................... 14
BAB II NORMALISASI DATA ........................................... 19
2.1. Sejarah Normalisasi ................................................... 19
2.2. Pengertian Normalisasi ........................................... 20
2.3. Design Normalisasi .................................................... 24
2.4. Tujuan Normalisasi Database ............................... 25
2.5. Langkah Normalisasi................................................. 26
BAB III DATA DEFINITION LANGUAGE (DDL) ............ 33
3.1. Pengertian DDL ............................................................ 33
3.2. Perbedaan DDL dengan Data Manipulation
Language (DML) .......................................................... 42
v
BAB IV DATA MANIPULATION LANGUAGE (DML) ........49
4.1. Pengertian DML (Data Manipulation
Language) ...................................................................... 49
4.2. Perintah-Perintah Data Manipulation
Language (DML) ......................................................... 56
BAB V ENTITY RELATIONSHIP DIAGRAM ....................67
5.1. Pendahuluan ................................................................. 67
5.2. Entitas dan Atribut .................................................... 69
5.3. Hubungan Antara Entitas ....................................... 73
5.4. Cardinality ..................................................................... 77
5.5. Konstruksi Entity Relationship Diagram ......... 80
BAB VI MYSQL ....................................................................83
6.1. Pengertian MySQL ..................................................... 83
6.2. Perintah-Perintah MySQL ...................................... 90
BAB VII OPERATOR ..........................................................95
7.1. Pengantar Operator .................................................. 95
7.2. Operator Aritmatika ................................................. 96
7.3. Operator Relasi ........................................................... 97
7.4. Operator Logika ........................................................102
7.5. Operator Pembanding ...........................................107
BAB VIII PERCABANGAN .............................................. 113
8.1. Pengertian Percabangan Database ..................113
8.2. Penggunaan Percabangan Database ...............117
8.3. Kelebihan dan Kekurangan Percabangan
Database .......................................................................121

vi
BAB IX VIEW .................................................................... 129
9.1. Pengertian database view .................................... 129
9.2. Analisa Database View .......................................... 134
9.3. Batasan penggunaan database view ............... 137
9.4. Batasan penggunaan database view ............... 138
9.5. Cara Mengakses Database View Pada Berbagai
DBMS.............................................................................. 141
BAB X TRIGGER............................................................... 143
10.1. Pengertian Trigger Database ............................. 143
10.2. Jenis-Jenis Trigger Database............................... 144
10.3. Kegunaan Trigger Database................................ 146
10.4. Syarat dan Kondisi Trigger Database............. 147
10.5. Keuntungan dan Kerugian Menggunakan
Trigger Database ...................................................... 150
10.6. Perbedaan Trigger Database dengan Stored
Procedure ..................................................................... 152
10.7. Tips dan Trik Penggunaan Trigger Database .....
.......................................................................................... 153
10.8. Kesalahan Umum dalam Penggunaan Trigger
Database ....................................................................... 155
DAFTAR PUSTAKA ........................................................ 157

vii
viii
BAB I
KONSEP DASAR DATABASE

1.1. Pengertian Database


Database adalah kumpulan data terstruktur yang
disimpan secara terpadu dalam suatu sistem yang dapat
diakses dan dikelola oleh pengguna atau aplikasi. Data
yang disimpan dalam database biasanya terorganisir
dalam tabel atau relasi, dan dapat diakses dan diubah
dengan menggunakan bahasa query seperti SQL.
Tujuan utama database adalah untuk menyimpan
data secara terstruktur dan terpadu, sehingga data
dapat diakses dan dimanipulasi dengan mudah dan
efisien. Selain itu, database juga digunakan untuk:
1 Membantu organisasi dalam mengelola dan
memanipulasi data secara efektif dan efisien.
2 Memberikan akses terkontrol ke data, di mana
hanya pengguna yang memiliki hak akses yang
diizinkan dapat mengakses data tertentu.
3 Meningkatkan integritas data dengan
memastikan bahwa data yang dimasukkan ke
dalam database konsisten dan valid.
Database Rumpun Ilmu Komputer | 1
4 Meningkatkan ketersediaan data dengan
menyediakan fitur backup dan recovery,
sehingga data dapat dipulihkan jika terjadi
kegagalan sistem atau bencana alam.
5 Meningkatkan keamanan data dengan
menyediakan fitur pengamanan, seperti
enkripsi dan autentikasi pengguna.

Komponen Database Database terdiri dari


beberapa komponen utama, antara lain:
1 Data: informasi yang disimpan dalam database.
2 Struktur Data: cara data disimpan dan
diorganisir dalam database, seperti tabel,
indeks, relasi, dan lain-lain.
3 Metadata: informasi tentang struktur dan isi
database, seperti definisi tabel, kolom, indeks,
dan lain-lain.
4 Database Management System (DBMS):
perangkat lunak yang digunakan untuk
mengelola database, termasuk mengelola akses
pengguna, menjaga integritas data, dan
melakukan backup dan recovery.

2 | Konsep Dasar Pengenalan


1.2. Model Data
Model data adalah representasi grafis atau
konseptual dari struktur data dalam sebuah database.
Model data digunakan untuk memudahkan pemahaman
dan desain database, serta memastikan integritas data
dan efisiensi dalam penggunaan database.
Beberapa jenis model data yang umum digunakan
adalah:
1. Model hierarki: data disusun dalam struktur
hirarki dengan satu entitas utama dan cabang-
cabang sub-entitas yang terkait.
2. Model jaringan: data disusun dalam struktur
jaringan dengan beberapa entitas utama yang
saling terkait.
3. Model relasional: data disusun dalam tabel yang
saling terkait dan digunakan dalam sistem
manajemen basis data relasional (RDBMS).
1 Model objek: data disusun dalam objek-objek
yang terkait, mirip dengan konsep
pemrograman berorientasi objek (OOP).

1.2.1. Model Data Hierarki


Kelebihan:
Memungkinkan akses data secara cepat dan
efisien, karena hanya perlu mengikuti struktur

Database Rumpun Ilmu Komputer | 3


hirarki untuk menemukan data yang dibutuhkan.
Cocok untuk aplikasi yang hanya memiliki
sedikit jenis entitas dan hubungan yang tetap.
Kekurangan:
Tidak fleksibel dalam mengatasi perubahan
struktur data, karena perubahan struktur hirarki
membutuhkan perubahan besar pada seluruh
database.
Membatasi kemampuan untuk
merepresentasikan hubungan yang kompleks
antara data.

1.2.2. Model Data Jaringan


Kelebihan:
Dapat merepresentasikan hubungan yang
kompleks antara entitas dan memungkinkan
entitas memiliki lebih dari satu hubungan ke
entitas lain.
Memiliki kemampuan untuk melakukan
navigasi data yang efektif.
Kekurangan:
Tidak fleksibel dalam mengatasi perubahan
struktur data, karena perubahan struktur jaringan
membutuhkan perubahan besar pada seluruh
database.

4 | Konsep Dasar Pengenalan


Sulit untuk diimplementasikan pada level
aplikasi dan pengguna akhir.

1.2.3. Model Data Relasional


Kelebihan:
Memiliki fleksibilitas dalam mengatasi
perubahan struktur data dan memungkinkan
perubahan data yang cepat dan mudah dilakukan.
Memiliki kemampuan untuk melakukan
analisis data dan query yang kompleks.
Kekurangan:
Memiliki keterbatasan dalam
merepresentasikan hubungan yang kompleks
antara entitas.
Memiliki keterbatasan dalam mengatasi
kinerja database besar.

1.2.4. Model Data Objek


Kelebihan:
Dapat merepresentasikan data dan hubungan
yang kompleks antara entitas.
Cocok untuk aplikasi yang membutuhkan
pengolahan objek seperti gambar atau suara.
Kekurangan:

Database Rumpun Ilmu Komputer | 5


Memiliki keterbatasan dalam kinerja query
yang kompleks.
Memiliki keterbatasan dalam
interoperabilitas dengan basis data yang berbeda.

1.3. Entity-Relationship Model


Entity-Relationship Model (ER model) adalah
model data yang digunakan untuk merepresentasikan
hubungan antara entitas (objek) dalam suatu sistem
informasi. ER model menunjukkan entitas, atribut, dan
hubungan antara entitas dalam sebuah database. ER
model sangat populer dan digunakan secara luas dalam
desain basis data.
Dalam ER model, entitas direpresentasikan oleh
persegi panjang, sedangkan atribut direpresentasikan
oleh oval. Hubungan antara entitas direpresentasikan
oleh garis dan jenis hubungan antara entitas dapat
dijelaskan oleh tipe garis (misalnya garis ganda untuk
hubungan many-to-many).
ER model memiliki beberapa notasi dan konvensi
yang umum digunakan untuk merepresentasikan
informasi dalam model. Beberapa notasi dan konvensi
yang umum digunakan adalah entitas, atribut,
hubungan, kardinalitas, dan partisipasi.

6 | Konsep Dasar Pengenalan


Komponen-komponen utama dalam Entity-
Relationship Model (ER Model) meliputi entitas, atribut,
dan hubungan. Berikut adalah penjelasan singkat
tentang setiap komponen tersebut:
1. Entitas: Entitas merepresentasikan objek yang
berbeda dalam suatu sistem informasi, seperti
orang, barang, atau transaksi. Entitas
direpresentasikan dalam diagram ER sebagai
persegi panjang. Atribut:
2. Atribut merepresentasikan karakteristik atau
properti dari entitas. Misalnya, atribut dari
entitas pelanggan bisa berupa nama, alamat,
atau nomor telepon. Atribut direpresentasikan
dalam diagram ER sebagai oval.
3. Hubungan: Hubungan merepresentasikan
keterkaitan antara entitas. Contohnya,
hubungan antara pelanggan dan pesanan adalah
"satu pelanggan dapat memiliki banyak
pesanan". Hubungan direpresentasikan dalam
diagram ER sebagai garis. Selain itu, ER Model
juga memiliki beberapa komponen tambahan,
seperti:
a) Kardinalitas: Kardinalitas merepresentasikan
jumlah entitas yang terlibat dalam suatu
hubungan. Misalnya, hubungan antara

Database Rumpun Ilmu Komputer | 7


pelanggan dan pesanan memiliki kardinalitas
"satu ke banyak", karena satu pelanggan
dapat memiliki banyak pesanan.
b) Partisipasi: Partisipasi merepresentasikan
apakah suatu entitas wajib atau tidak wajib
terlibat dalam suatu hubungan. Misalnya,
hubungan antara pelanggan dan pesanan
memiliki partisipasi "wajib", karena setiap
pesanan harus terkait dengan pelanggan.

Pada Entity-Relationship Model (ER Model),


terdapat beberapa jenis relasi yang dapat digunakan
untuk merepresentasikan keterkaitan antara entitas.
Berikut adalah penjelasan singkat tentang jenis-jenis
relasi pada ER Model:
1. One-to-One (1:1): Relasi one-to-one digunakan
ketika setiap entitas pada satu sisi relasi memiliki
hubungan langsung dengan satu entitas pada sisi
lainnya. Contohnya, satu orang memiliki satu nomor
identitas.
2. One-to-Many (1:N): Relasi one-to-many digunakan
ketika setiap entitas pada satu sisi relasi memiliki
hubungan langsung dengan banyak entitas pada sisi
lainnya. Contohnya, satu departemen memiliki
banyak karyawan.

8 | Konsep Dasar Pengenalan


3. Many-to-One (N:1): Relasi many-to-one adalah
kebalikan dari relasi one-to-many, di mana banyak
entitas pada satu sisi relasi memiliki hubungan
langsung dengan satu entitas pada sisi lainnya.
Contohnya, banyak karyawan bekerja di satu
departemen.
4. Many-to-Many (N:N): Relasi many-to-many
digunakan ketika banyak entitas pada satu sisi
relasi memiliki hubungan langsung dengan banyak
entitas pada sisi lainnya. Contohnya, banyak
mahasiswa dapat mengambil banyak kursus, dan
sebaliknya.

Selain jenis-jenis relasi di atas, terdapat juga


beberapa variasi relasi, seperti recursive relationship
(hubungan diri sendiri) dan self-relationship
(hubungan dengan diri sendiri). Namun, jenis-jenis
relasi yang paling umum adalah one-to-one, one-to-
many, many-to-one, dan many-to-many. Berikut adalah
contoh pembuatan Entity-Relationship Model (ER
Model) untuk suatu sistem informasi toko buku,
identifikasi entitas-entitas dalam system,
a. Buku
b. Penulis
c. Penerbit

Database Rumpun Ilmu Komputer | 9


d. Kategori buku
e. Pelanggan
f. Pesanan

Identifikasi atribut-atribut dari setiap entitas:


1. Buku: ISBN, judul, harga, jumlah halaman
2. Penulis: Nama, email, negara asal
3. Penerbit: Nama, alamat, nomor telepon
4. Kategori buku: Nama kategori, deskripsi
5. Pelanggan: Nama, alamat, nomor telepon
6. Pesanan: Nomor pesanan, tanggal, total harga

Identifikasi hubungan antar entitas:


a. Buku dan Penulis: satu penulis dapat menulis
banyak buku, dan satu buku hanya ditulis oleh
satu penulis
b. Buku dan Penerbit: satu penerbit dapat
menerbitkan banyak buku, dan satu buku hanya
diterbitkan oleh satu penerbit
c. Buku dan Kategori buku: satu buku dapat
termasuk dalam satu kategori buku, dan satu
kategori buku dapat memiliki banyak buku
d. Pelanggan dan Pesanan: satu pelanggan dapat
melakukan banyak pesanan, dan satu pesanan
hanya dilakukan oleh satu pelanggan

10 | Konsep Dasar Pengenalan


e. Pesanan dan Buku: satu pesanan dapat memiliki
banyak buku, dan satu buku dapat terdapat
dalam banyak pesanan

Representasikan ER Model dalam bentuk diagram


ER:
1. Buku, Penulis, dan Penerbit direpresentasikan
sebagai entitas persegi panjang
2. Kategori buku, Pelanggan, dan Pesanan
direpresentasikan sebagai entitas lingkaran
3. Hubungan antara entitas direpresentasikan
sebagai garis

1.4. Normalisasi Database


Normalisasi database adalah proses perancangan
struktur database yang bertujuan untuk mengurangi
redundansi data dan meminimalkan anomali data.
Normalisasi database dilakukan dengan memecah
tabel-tabel besar menjadi beberapa tabel kecil yang
terkait, sehingga setiap tabel hanya berisi informasi
yang berkaitan dengan satu topik saja dan tidak
terdapat redundansi data. Hal ini dapat meningkatkan
efisiensi dan konsistensi data pada database.
Tujuan utama normalisasi database adalah untuk
meminimalkan redundansi data dan memastikan

Database Rumpun Ilmu Komputer | 11


bahwa data disimpan dalam struktur yang efisien dan
konsisten. Beberapa tujuan spesifik normalisasi
database adalah:
a. Mencegah duplikasi data: Normalisasi database
bertujuan untuk meminimalkan duplikasi data
pada tabel-tabel database, sehingga data dapat
diambil dan diperbarui dengan mudah dan
cepat.
b. Mengurangi anomali data: Normalisasi database
dapat mengurangi kemungkinan terjadinya
anomali data, seperti ketidakcocokan data,
ketidaksesuaian data, dan ketidakkonsistenan
data, yang dapat mengurangi integritas data.
c. Meningkatkan kinerja database: Dengan
meminimalkan redundansi data, normalisasi
database dapat meningkatkan kinerja database
dengan mengurangi waktu yang dibutuhkan
untuk memperbarui, mengambil, dan
memanipulasi data.
d. Meningkatkan fleksibilitas dan skalabilitas:
Normalisasi database dapat meningkatkan
fleksibilitas dan skalabilitas database dengan
memungkinkan adanya penambahan dan
pengurangan tabel dan kolom dalam database
tanpa mengurangi integritas data.

12 | Konsep Dasar Pengenalan


Ada beberapa jenis normalisasi database, yang
diwakili oleh sejumlah bentuk normalisasi yang
berbeda. Berikut adalah beberapa jenis normalisasi
database yang umum:
1. First Normal Form (1NF): Tujuannya adalah
untuk menghapus kolom yang berulang atau
grup data ke dalam tabel yang berbeda. Setiap
kolom harus hanya berisi nilai atomik, yaitu
nilai tunggal yang tidak dapat dibagi lagi.
2. Second Normal Form (2NF): Tujuannya adalah
untuk memastikan setiap tabel memiliki kunci
utama dan setiap kolom di dalam tabel hanya
bergantung pada kunci utama. Ini memecah
tabel menjadi beberapa tabel untuk memastikan
bahwa tidak ada redundansi data dalam kolom.
3. Third Normal Form (3NF): Tujuannya adalah
untuk memastikan bahwa setiap kolom dalam
tabel hanya bergantung pada kunci utama atau
kolom non-kunci lainnya. Dalam hal ini, tabel
dibagi menjadi beberapa tabel yang lebih kecil,
menghilangkan ketergantungan pada kolom
yang tidak terkait dengan kunci utama.
4. Fourth Normal Form (4NF): Tujuannya adalah
untuk mengatasi ketergantungan multivariat di
antara kolom dalam tabel. Ini dapat mengurangi

Database Rumpun Ilmu Komputer | 13


kompleksitas tabel dengan memisahkannya
menjadi beberapa tabel yang lebih kecil dan
lebih terkait.
5. Fifth Normal Form (5NF): Tujuannya adalah
untuk mengatasi masalah ketergantungan join.
Ini sering digunakan untuk database yang
sangat besar dan kompleks.

1.5. Structured Query Language (SQL)


SQL (Structured Query Language) adalah bahasa
pemrograman yang digunakan untuk mengelola data
dalam database relasional. SQL memungkinkan
pengguna untuk membuat, mengubah, dan menghapus
tabel dan data, serta melakukan kueri dan analisis data.
SQL dibagi menjadi beberapa jenis perintah, seperti
perintah DDL (Data Definition Language) yang
digunakan untuk membuat tabel dan mengubah
struktur database, perintah DML (Data Manipulation
Language) yang digunakan untuk memasukkan,
mengambil, dan memperbarui data dalam tabel, serta
perintah DQL (Data Query Language) yang digunakan
untuk mengambil data dari tabel. SQL telah menjadi
bahasa standar untuk pengelolaan database relasional
dan digunakan secara luas dalam berbagai industri,

14 | Konsep Dasar Pengenalan


seperti teknologi informasi, bisnis, keuangan, dan
lainnya.
Berikut adalah beberapa komponen utama SQL:
a. Klausa SELECT: Digunakan untuk memilih
kolom atau data dari satu atau beberapa tabel.
b. Klausa FROM: Digunakan untuk menentukan
tabel yang akan digunakan dalam kueri.
c. Klausa WHERE: Digunakan untuk memfilter
data yang diambil berdasarkan kondisi tertentu.
d. Klausa JOIN: Digunakan untuk menggabungkan
dua atau lebih tabel dalam satu kueri.
e. Fungsi agregat: Digunakan untuk melakukan
operasi matematika pada kolom data, seperti
SUM, AVG, MAX, dan MIN.
f. Grup: Digunakan untuk mengelompokkan data
berdasarkan nilai tertentu dalam satu atau
beberapa kolom.
g. Urutan: Digunakan untuk mengurutkan data
dalam urutan tertentu berdasarkan nilai
tertentu dalam satu atau beberapa kolom.
h. Indeks: Digunakan untuk meningkatkan kinerja
database dengan mempercepat pencarian dan
pengambilan data.

Database Rumpun Ilmu Komputer | 15


i. Transaksi: Digunakan untuk menjaga integritas
data dengan memastikan bahwa operasi terkait
data dieksekusi secara atomik dan konsisten.
j. SQL memiliki banyak fitur dan fungsionalitas
lainnya yang dapat membantu pengguna dalam
mengelola database. Namun, komponen-
komponen yang disebutkan di atas adalah yang
paling umum dan penting dalam penggunaan
SQL.
k. SQL memiliki banyak jenis perintah, di
antaranya:
l. Data Definition Language (DDL): Perintah ini
digunakan untuk membuat, mengubah, dan
menghapus struktur tabel dan objek database.
Contohnya adalah CREATE, ALTER, dan DROP.
m. Data Manipulation Language (DML): Perintah
ini digunakan untuk memanipulasi data dalam
tabel. Contohnya adalah SELECT, INSERT,
UPDATE, dan DELETE.
n. Data Control Language (DCL): Perintah ini
digunakan untuk mengontrol hak akses
pengguna ke objek database. Contohnya adalah
GRANT dan REVOKE.
o. Transaction Control Language (TCL): Perintah
ini digunakan untuk mengontrol transaksi

16 | Konsep Dasar Pengenalan


dalam database. Contohnya adalah COMMIT,
ROLLBACK, dan SAVEPOINT.
p. Data Query Language (DQL): Perintah ini
digunakan untuk mengekstrak data dari tabel
berdasarkan kriteria tertentu. Contohnya adalah
SELECT.

Selain jenis perintah di atas, SQL juga memiliki


perintah-perintah khusus yang berbeda-beda
tergantung pada sistem manajemen basis data (DBMS)
yang digunakan.

Database Rumpun Ilmu Komputer | 17


18 | Konsep Dasar Pengenalan
BAB II
NORMALISASI DATA

2.1. Sejarah Normalisasi


a. Konsep normalisasi pertama kali diusulkan oleh
Edgar F. Codd pada tahun 1970, ketika ia
mengusulkan bentuk normal pertama (1NF)
dalam makalahnya A Relational Model of Data
for Large Shared Data Banks (ini adalah makalah
di mana ia memperkenalkan seluruh gagasan
basis data relasional).
b. Codd melanjutkan pekerjaannya pada
normalisasi dan mendefinisikan bentuk normal
kedua (2NF) dan bentuk normal ketiga (3NF)
pada tahun 1971.
c. Codd kemudian bekerja sama dengan Raymond
F. Boyce untuk mendefinisikan bentuk normal
Boyce-Codd (BCNF) pada tahun 1974.
d. Ronald Fagin memperkenalkan bentuk normal
keempat (4NF) pada tahun 1977.
e. Fagin kemudian memperkenalkan bentuk
normal kelima (5NF) pada tahun 1979.
f. Fagin kemudian memperkenalkan domain key
normal form (DKNF) pada tahun 1981.

Database Rumpun Ilmu Komputer | 19


g. Carlo Zaniolo memperkenalkan bentuk normal
kunci dasar (EKNF) pada tahun 1982.
h. Ronald Fagin kemudian bekerja sama dengan
Hugh Darwen dan CJ Date untuk menghasilkan
bentuk normal tupel esensial (ETNF) pada
tahun 2012

2.2. Pengertian Normalisasi


Normalisasi adalah teknik desain logis dalam
database yang mengelompokkan atribut entitas dalam
suatu hubungan untuk membentuk struktur relasional
yang baik tanpa redundansi dan dapat menghilangkan
sebagian besar ambiguitas. Singkatnya, Normalisasi
adalah mengelompokkan atribut data menjadi bentuk
entitas yang sederhana, tidak berlebihan, fleksibel, dan
adaptif, sehingga memastikan database yang dibuat
memiliki kualitas yang baik. Normalisasi mencakup
banyak bentuk, dan dalam ilmu basis data setidaknya
ada 9 bentuk normalisasi yang ada, yaitu 1NF, 2NF, 3NF,
EKNF, BCNF, 4NF, 5NF
Database 1NF, 2NF, 3NF sering ditemui saat
membuat database yang optimal. Jika Anda ingin
menjadi administrator basis data, Anda harus tahu cara
mengoptimalkan normalisasi basis data. Misalnya,
suatu hari ketika situs web yang Anda buat mengalami

20 | Konsep Dasar Pengenalan


kinerja lambat, Anda mungkin ditanya apakah database
Anda dinormalisasi dengan benar.
Sasaran normalisasi database tujuannya adalah
untuk menghilangkan dan mengurangi redundansi
data, dan tujuan kedua adalah memastikan data
berada di tabel yang benar. Jika data dalam database
tidak terstandarisasi, ada tiga kemungkinan yang
dapat menyebabkan kerusakan pada keseluruhan
sistem.
a. Insert Exception: Situasi dimana tidak
diperbolehkan untuk memasukkan jenis data
tertentu secara langsung ke dalam database.
b. Hapus anomali: hapus data yang tidak sesuai
harapan, yaitu data yang seharusnya tidak
dihapus mungkin juga akan dihapus.
c. Pengecualian pembaruan: Situasi nilai yang
diubah menghasilkan ketidakkonsistenan basis
data dalam arti bahwa data yang diubah tidak
sesuai atau seperti yang diharapkan. Tidak
semua database dapat dinormalisasi, hanya
tipe "database relasional" yang dapat
dinormalisasi. Fase normalisasi basis data
Untuk melakukan normalisasi basis data, kita
harus menentukan jenis data apa yang akan
disimpan.

Database Rumpun Ilmu Komputer | 21


Normalisasi akan menjadi komponen dari fase
desain untuk database. Namun, membedakan metode
normalisasi dari fase pemodelan ER itu rumit, artinya
kedua metode tersebut dapat digunakan bersama.
Menggunakan diagram hubungan objek (ERD) untuk
menyertakan gambar luas tentang kebutuhan data dan
aktivitas perusahaan, atau tampilan makro. Ini
dihasilkan melalui metode berulang yang melibatkan
pengakuan orang terkait, karakteristik dan koneksi
mereka. Metode normalisasi bergantung pada atribut
organisasi individu dan memberikan citra mikro
individu dalam ERD. Ini adalah metode yang digunakan
dalam database di mana kita membagi tabel sedemikian
rupa sehingga mengurangi redundansi data dan lebih
dari itu semuanya disimpan dalam manner.it yang lebih
baik menggunakan kunci utama dan kunci asing sebagai
hubungan utama untuk menghubungkan tabel
bersama-sama untuk aliran data yang lebih baik.
Proses Normalisasi, merupakan proses
pengelompokan data elemen menjadi table-table yang
menunjukkan entity dan relasinya. Pada proses
normalisasi selalu diuji pada beberapa kondisi, apakah
ada kesulitan pada saat menambah/insert, menghapus/
delete, mengubah/update, dan retrieve pada suatu
Database.

22 | Konsep Dasar Pengenalan


Bila ada kesulitan pada pengujian tersebut, maka
relasi tersebut dipecahkan menjadi beberapa table lagi,
sehingga diperoleh database yang optimal
Ada tiga jenis penyimpangan yang muncul dengan
tidak menstandarisasi database. Itu adalah-paradoks
untuk penyisipan, pembaruan, dan penghapusan.
Normalisasi database tidak lebih dari mengatur baris
dan kolom baris sedemikian rupa untuk mengurangi
duplikasi dan konsistensi sistem dan meningkatkan
kejujuran sistem. Standardisasi basis data digunakan
untuk tujuan berikut:
a. untuk menghapus data usang atau tidak perlu.
b. Untuk meminimalkan redundansi sistem.
c. Verifikasi interaksi antara tabel dan sistem
dalam tabel.
d. Verifikasi bahwa koneksi data dan data diproses
secara logis

Fakta tentang normalisasi: sesuai dengan ahli


normalisasi database kami, berikut adalah faktanya
a. Kata normalisasi dan bentuk normal mengacu
pada struktur a basis data.
b. Normalisasi dikembangkan oleh peneliti IBM
E.F. Codd pada tahun 1970-an.

Database Rumpun Ilmu Komputer | 23


c. Normalisasi meningkatkan kejelasan dalam
mengatur data dalam Database.

2.3. Design Normalisasi


Desain database berlangsung dengan cara berikut:
a. Lakukan diskusi dengan pemangku
kepentingan yang kami rancang basis datanya.
Dapatkan semua persyaratan, atribut apa yang
perlu disimpan dan buat dependensi
fungsional atas set atribut yang diberikan.
b. Gambar diagram Hubungan Entitas
berdasarkan analisis persyaratan.
c. Ubah diagram ER menjadi model relasional dan
akhirnya buat hubungan ini ke dalam database
kami dengan batasan yang sesuai.

Kita cukup banyak tahu, cara menggambar diagram


ER. Tapi, ketika kita mengajukan pertanyaan seperti
berapa banyak hubungan minimum yang diperlukan
untuk memenuhi bentuk normal pertama (1NF),
terkadang itu sedikit membingungkan. Kami
menetapkan aturan sederhana tertentu yang dibentuk
setelah analisis mendalam dari setiap kasus dan
karenanya, dapat digunakan secara langsung.

24 | Konsep Dasar Pengenalan


a. Jika ada partisipasi total di kedua sisi;
Gabungkan dua entitas yang terlibat dan
hubungan menjadi 1 tabel.
b. Lain jika, satu sisi adalah partisipasi total dan
satu sisi parsial;
1. M:N Gabungkan hubungan disisi
partisipasi total.
2. 1:N Gabungkan hubungan disisi partisipasi
total.
3. 1:1 Gabungkan dua entitas yang terlibat
dan hubungan ke dalam tabel 1.
c. lain jika, kedua belah pihak adalah partisipasi
parsial;
1. M:N Pisahkan tabel untuk setiap entitas
serta hubungan. Oleh karena itu, 3 tabel.
2. 1:N Gabungkan hubungan di sisi-N
menggunakan kunci asing yang merujuk 1
sisi.
3. 1:1 Gabungkan hubungan dan satu entitas
menjadi 1 tabel menggunakan kunci asing
dan 1 tabel untuk entitas lain.

2.4. Tujuan Normalisasi Database


Normalisasi Dalam Database: Proses untuk
mengubah struktur data yang kompleks menjadi

Database Rumpun Ilmu Komputer | 25


struktur data yang sederhana dan stabil
disebut normalisasi. Tujuan normalisasi adalah
untuk menghasilkan serangkaian hubungan yang
stabil. Pada dasarnya, hubungan yang dinormalisasi
memiliki struktur sederhana, daripada yang tidak
dinormalisasi. Dengan menerapkan prinsip
normalisasi, kita dapat meningkatkan stabilitas
hubungan.

2.5. Langkah Normalisasi


Normalisasi sering dilakukan dalam langkah-
langkah, yang masing-masing sesuai dengan bentuk
normal. Bentuk normal adalah keadaan hubungan
yang dapat ditentukan dengan menerapkan aturan
sederhana mengenai dependensi pada hubungan
itu.

26 | Konsep Dasar Pengenalan


Deskripsi singkat tentang langkah-langkah besar
diberikan sebagai
a. Bentuk Normal Pertama (1 NF)
Setiap grup berulang dari relasi akan
dihapus. Setelah menerapkan aturan ini,
setiap sel relasi memiliki nilai tunggal.
b. Bentuk Normal Kedua (2NF)
Setiap ketergantungan fungsional parsial
dari hubungan dihapus.
c. Bentuk Normal Ketiga (3NF)
Setiap ketergantungan transitif dihapus.
d. Boyce-Cod Bentuk Normal
Setiap determinan harus menjadi kunci
kandidat.
e. Bentuk Normal Keempat (4NF)
Setiap ketergantungan multi-nilai dihapus.
f. Bentuk Normal Kelima (5NF)
Anomali yang tersisa dihapus.

Dalam proses perancangan database yang


dinormalisasi, dari dokumen-dokumen dasar yang
digunakan dalam sistem informasi.
Contoh 1: Tentukan UNF, 1 NF, 2 NF, dan 3 NF
untuk menormalkan desain database dari dokumen-
dokumen berikut.

Database Rumpun Ilmu Komputer | 27


KARTU ANGGOTA PERPUSTAKAAN

No.Anggota : P01
Nama : Rama
Alamat : Pamulang

Kode Buku Judul Tgl Tgl


pinjam kembali
B001-1 Sistem 8 Juli 15 juli
informasi 2022 2022
Manajemen
B002-1 Basis Data 1 8 juli 15 juli
2022 2022
B003-2 Pemrograman 8 juli 15 juli
Jawa 2022 2022

a. Bentuk 1 NF
Bentuk Normal Pertama biasanya diterapkan
pada tabel yang tidak dinormalisasi. Tabel yang
didenormalisasi adalah tabel dengan atribut
duplikat.
No.
ang Kode Tgl Tgl
Nama Alamat Judul
got Buku Pinjam Kembali
a
P01 Rama Pamulang B001- Sistem 8 Juli 15 juli
1 informasi 2022 2022
Manajemen
P01 Rama Pamulang B002- Basis Data 1 8 juli 15 juli
1 2022 2022
P01 Rama Pamulang B003- Pemrograma 8 juli 15 juli
2 n Java 2022 2022

kekurangan:
28 | Konsep Dasar Pengenalan
1) Terjadi kembali karena tidak ada. anggota dan
tanggal. Masuk beberapa kali.
2) Penyisipan tidak dimungkinkan tanpa transaksi
pinjaman.
3) Pembaruan bidang duplikat akan beberapa kali.
4) Penghapusan akan membingungkan karena jika
kita menghapus member No. P01 maka akan
menghapus juga kode buku yang masih
diperlukan.
Catatan : Untuk bentuk UNF No. Anggota, Nama
dan Alamat hanya ditulis sekali

b. Bentuk 2 NF
Bentuk normal kedua didefinisikan berdasarkan
ketergantungan fungsional. Bentuk normal
kedua didefinisikan sebagai: 1. Dalam bentuk
normal pertama 2. Semua atribut bukan kunci
sepenuhnya bergantung pada kunci utama.
Dalam kasus yang lebih praktis, Bentuk Normal
Kedua mengharuskan setiap atribut bergantung
pada kunci utama. Bentuk normal kedua
diperoleh dengan mencari kunci utama dan
membentuk tabel berdasarkan kunci utama
tersebut. Dari kasus diatas diperoleh: No.
anggota dan kode buku

Database Rumpun Ilmu Komputer | 29


Keterangan
*Primary key
**Foreign Key
Dalam bentuk NF, masalah
memasukkan/inserting, memperbarui, dan
menghapus semuanya diselesaikan, tetapi ada
bidang yang bergantung pada lebih dari satu
tabel (ketergantungan transitif), yaitu,
1) Tgl. Pinjam
2) Tgl. Kembali

c. Bentuk 3 NF
Dalam normal ke tiga mempunyai persyaratan
masing-masil tabel tidak memiliki field
tergantung transitif.

30 | Konsep Dasar Pengenalan


Hasil Akhir :

Database Rumpun Ilmu Komputer | 31


32 | Konsep Dasar Pengenalan
BAB III
DATA DEFINITION LANGUAGE (DDL)

3.1. Pengertian DDL


Data Definition Language (DDL) adalah sebuah
bahasa pemrograman atau kumpulan perintah yang
digunakan untuk mendefinisikan, mengelola, dan
mengontrol struktur database. DDL digunakan untuk
membuat tabel, mengubah struktur tabel, menghapus
tabel, dan menambahkan atau menghapus objek
database lainnya seperti indeks, trigger, dan constraint.
DDL merupakan salah satu bagian dari SQL (Structured
Query Language) yang umumnya digunakan untuk
mengelola database. DDL memungkinkan pengguna
untuk mendefinisikan skema database dengan
mengatur tipe data, batasan integritas, dan relasi antara
tabel. Contoh perintah DDL adalah CREATE TABLE
untuk membuat tabel baru, ALTER TABLE untuk
mengubah struktur tabel yang sudah ada, dan DROP
TABLE untuk menghapus tabel.
Berikut ini adalah pengertian DDL (Data Definition
Language) menurut beberapa ahli:

Database Rumpun Ilmu Komputer | 33


a. Menurut Elmasri dan Navathe, DDL adalah
bahasa SQL yang digunakan untuk membuat,
mengubah, dan menghapus struktur database,
seperti tabel, view, dan indeks.
b. Menurut Ramez Elmasri, Shamkant B. Navathe,
dan Benjamin W. Wah, DDL adalah bahasa SQL
yang digunakan untuk mendefinisikan skema
database dan objek-objeknya, seperti tabel,
view, dan indeks.
c. Menurut Connolly dan Begg, DDL adalah bahasa
SQL yang digunakan untuk mendefinisikan
struktur dari sebuah database, seperti tabel,
view, dan konstrain.
d. Menurut Oracle, DDL adalah perintah SQL yang
digunakan untuk mendefinisikan objek
database, seperti tabel, view, dan indeks, dan
untuk mengontrol hak akses dan privasi
pengguna.
e. Menurut Oracle, DDL adalah bahasa yang
digunakan untuk mendefinisikan objek database
seperti tabel, view, dan indeks. DDL mengatur
struktur database dan berinteraksi dengan
metadata untuk memastikan konsistensi dan
integritas data.

34 | Konsep Dasar Pengenalan


f. Menurut Jeff Smith, seorang pengembang
perangkat lunak dan blogger teknologi, DDL
adalah bahasa yang digunakan untuk
membangun, mengubah, dan menghapus
struktur database. DDL digunakan untuk
mengontrol struktur database, seperti tipe data,
nama tabel, dan kolom.
g. Menurut Bill Karwin, seorang pakar basis data,
DDL adalah jenis bahasa SQL yang digunakan
untuk membuat, mengubah, dan menghapus
struktur database. DDL juga digunakan untuk
menambahkan atau mengubah objek database
seperti tabel dan indeks.

Beberapa fungsi DDL (Data Definition Language)


antara lain:
1. Membuat objek database: DDL digunakan untuk
membuat objek database baru seperti tabel,
view, indeks, dan konstrain.
2. Mengubah struktur objek database: DDL
digunakan untuk mengubah struktur objek
database seperti menambah atau menghapus
kolom, mengubah tipe data, dan menambah atau
menghapus konstrain.

Database Rumpun Ilmu Komputer | 35


3. Menghapus objek database: DDL digunakan
untuk menghapus objek database seperti tabel,
view, dan indeks.
4. Membuat backup database: DDL digunakan
untuk membuat backup database sebelum
melakukan perubahan struktur menggunakan
perintah DDL seperti ALTER dan DROP.
5. Memastikan integritas data: DDL digunakan
untuk menambahkan konstrain ke objek
database untuk memastikan integritas data dan
memastikan bahwa data yang dimasukkan ke
dalam tabel valid dan mematuhi aturan bisnis
dan logika aplikasi.
6. Membuat tabel: DDL digunakan untuk membuat
tabel baru di dalam database. Ini mencakup
menentukan nama tabel, kolom yang
diperlukan, dan tipe data untuk setiap kolom.
7. Mengubah struktur tabel: DDL digunakan untuk
mengubah struktur tabel seperti menambahkan
atau menghapus kolom, mengubah tipe data
kolom, dan menambahkan atau menghapus
konstrain.
8. Membuat indeks: DDL digunakan untuk
membuat indeks pada tabel. Ini membantu

36 | Konsep Dasar Pengenalan


meningkatkan kinerja database dengan
mempercepat pencarian data.
9. Membuat view: DDL digunakan untuk membuat
view, yaitu tabel virtual yang terdiri dari data
yang diambil dari satu atau lebih tabel. View
dapat digunakan untuk mempermudah akses
data dan mengurangi kompleksitas query.
10. Membuat konstrain: DDL digunakan untuk
membuat konstrain, seperti konstrain unik,
konstrain kunci asing, dan konstrain lainnya
untuk memastikan integritas data dalam tabel.
11. Dalam pengembangan database, DDL sangat
penting untuk membangun dan mengelola
database secara efektif dan efisien. DDL
memungkinkan pengembang untuk mengatur
struktur database dan memastikan integritas
data untuk menjaga konsistensi dan keakuratan
data.
12. Tujuan utama dari Data Definition Language
(DDL) adalah untuk mengontrol struktur
database dan memastikan konsistensi dan
integritas data. DDL digunakan untuk membuat,
mengubah, dan menghapus objek database
seperti tabel, view, dan indeks.
13. Beberapa tujuan utama dari DDL antara lain:

Database Rumpun Ilmu Komputer | 37


14. Membuat objek database: DDL digunakan untuk
membuat objek database baru seperti tabel,
view, dan indeks.
15. Mengubah struktur objek database: DDL
digunakan untuk mengubah struktur objek
database seperti menambah atau menghapus
kolom, mengubah tipe data, dan menambah atau
menghapus konstrain.
16. Menghapus objek database: DDL digunakan
untuk menghapus objek database seperti tabel,
view, dan indeks.
17. Membuat backup database: DDL digunakan
untuk membuat backup database sebelum
melakukan perubahan struktur menggunakan
perintah DDL seperti ALTER dan DROP.
18. Memastikan integritas data: DDL digunakan
untuk menambahkan konstrain ke objek
database untuk memastikan integritas data dan
memastikan bahwa data yang dimasukkan ke
dalam tabel valid dan mematuhi aturan bisnis
dan logika aplikasi.

Data Definition Language (DDL) adalah bahasa


yang digunakan untuk mendefinisikan struktur dan
skema database, termasuk tabel, kolom, indeks, dan

38 | Konsep Dasar Pengenalan


konstrain. DDL memainkan peran penting dalam
pengembangan dan pemeliharaan database, dan
memiliki beberapa manfaat, antara lain:
a. Memastikan konsistensi data: DDL memastikan
bahwa data yang dimasukkan ke dalam
database memiliki format dan struktur yang
konsisten. Ini membantu memastikan bahwa
data dapat diakses dan digunakan dengan benar
oleh pengguna yang berbeda.
b. Meningkatkan efisiensi: DDL dapat membantu
meningkatkan efisiensi database dengan
mengoptimalkan struktur dan indeks. Ini
memungkinkan database untuk melakukan
operasi seperti pencarian dan pengambilan data
dengan lebih cepat.
c. Meningkatkan keamanan: DDL dapat membantu
meningkatkan keamanan database dengan
menetapkan konstrain dan hak akses. Ini
membantu melindungi data sensitif dan
mencegah pengguna yang tidak berwenang
untuk mengakses atau memodifikasi data.
d. Memfasilitasi perawatan database: DDL
memudahkan perawatan database dengan
menyediakan mekanisme untuk membuat,
memodifikasi, atau menghapus tabel, kolom,

Database Rumpun Ilmu Komputer | 39


indeks, dan konstrain. Ini memungkinkan
pengguna untuk mengelola database dengan
lebih mudah dan efisien.
e. Meningkatkan skalabilitas: DDL memungkinkan
pengguna untuk menyesuaikan skema database
untuk memenuhi kebutuhan bisnis yang
berubah. Ini membantu meningkatkan
skalabilitas database dan memungkinkan
pengguna untuk mengembangkan aplikasi yang
lebih kompleks.
f. Dengan memahami manfaat DDL, pengguna
dapat menggunakan alat ini dengan lebih efektif
dan memastikan bahwa database mereka
efisien, aman, dan mudah dikelola.
g. Membantu dalam merancang struktur database:
DDL memungkinkan pengguna untuk membuat
dan mengubah struktur database seperti tabel,
kolom, indeks, dan kunci. Hal ini membantu
dalam merancang dan membangun database
yang efektif dan efisien.
h. Meningkatkan integritas data: DDL
memungkinkan pengguna untuk menambahkan
konstrain ke dalam database, seperti kunci unik
dan kunci asing, yang membantu dalam
memastikan integritas data. Konstrain ini

40 | Konsep Dasar Pengenalan


memaksa data yang dimasukkan ke dalam
database untuk memenuhi persyaratan tertentu
sehingga data yang dimasukkan ke dalam
database akan lebih akurat dan konsisten.
i. Mempercepat pemrosesan query: DDL
memungkinkan pengguna untuk membuat
indeks pada tabel yang mempercepat
pemrosesan query. Indeks membantu dalam
mempercepat pencarian data di dalam tabel dan
memungkinkan database untuk mengembalikan
hasil query dengan lebih cepat.
j. Mengoptimalkan penggunaan penyimpanan:
DDL memungkinkan pengguna untuk
mengoptimalkan penggunaan penyimpanan
dengan memungkinkan mereka untuk mengatur
jenis data dan ukuran kolom dalam tabel. Hal ini
membantu dalam mengurangi penggunaan
penyimpanan yang tidak perlu dan
memungkinkan pengguna untuk
mengoptimalkan kinerja database.
k. Meningkatkan keamanan: DDL memungkinkan
pengguna untuk membuat pengguna dan hak
akses, yang membantu dalam memastikan
bahwa hanya pengguna yang berwenang yang
dapat mengakses dan memodifikasi database.

Database Rumpun Ilmu Komputer | 41


l. Mudah untuk dikembangkan dan dikelola: DDL
memungkinkan pengguna untuk dengan mudah
mengembangkan dan memodifikasi database.
Hal ini membuat pengembangan dan
pengelolaan database menjadi lebih efisien dan
efektif.

3.2. Perbedaan DDL dengan Data Manipulation


Language (DML)
Data Definition Language (DDL) dan Data
Manipulation Language (DML) adalah dua jenis bahasa
SQL yang berbeda dan memiliki fungsi yang berbeda
dalam mengakses dan mengelola data dalam database.
DDL digunakan untuk mengontrol struktur database,
sementara DML digunakan untuk mengelola data dalam
database. Berikut adalah beberapa perbedaan antara
DDL dan DML:
a. Fungsi: DDL digunakan untuk membuat,
mengubah, dan menghapus struktur database
seperti tabel, view, dan indeks. DML digunakan
untuk mengelola data dalam database seperti
menambahkan, mengubah, dan menghapus data
dalam tabel.
b. Objek yang dikelola: DDL digunakan untuk
mengelola objek database seperti tabel dan

42 | Konsep Dasar Pengenalan


view. DML digunakan untuk mengelola data
dalam objek database seperti menambahkan
data ke dalam tabel atau mengubah data yang
sudah ada.
c. Level akses: DDL memerlukan hak akses yang
lebih tinggi daripada DML karena DDL
mengelola struktur database. DML dapat
dilakukan dengan hak akses yang lebih rendah
karena hanya mengelola data dalam database.
d. Perintah: Beberapa contoh perintah DDL
meliputi CREATE, ALTER, DROP, dan RENAME.
Beberapa contoh perintah DML meliputi
SELECT, INSERT, UPDATE, dan DELETE.
e. Pengaruh pada data: DDL dapat memiliki
pengaruh besar pada data karena dapat
mengubah struktur database. DML dapat
mempengaruhi data tetapi tidak akan
mengubah struktur database.

Data Definition Language (DDL) adalah jenis


bahasa SQL yang digunakan untuk membuat,
mengubah, dan menghapus struktur database, seperti
tabel, view, dan indeks. Berikut adalah beberapa jenis
perintah DDL yang umum digunakan:

Database Rumpun Ilmu Komputer | 43


1. CREATE: Perintah CREATE digunakan untuk
membuat objek database baru seperti tabel,
view, dan indeks.
2. ALTER: Perintah ALTER digunakan untuk
mengubah struktur objek database seperti
menambah atau menghapus kolom, mengubah
tipe data, dan menambah atau menghapus
konstrain.
3. DROP: Perintah DROP digunakan untuk
menghapus objek database seperti tabel, view,
dan indeks.
4. TRUNCATE: Perintah TRUNCATE digunakan
untuk menghapus seluruh data dalam tabel
tanpa menghapus struktur tabel itu sendiri.
5. RENAME: Perintah RENAME digunakan untuk
mengubah nama objek database seperti tabel
dan kolom.
6. COMMENT: Perintah COMMENT digunakan
untuk menambahkan komentar ke objek
database seperti tabel dan kolom.
7. GRANT: Perintah GRANT digunakan untuk
memberikan izin atau hak akses ke objek
database seperti tabel dan view.

44 | Konsep Dasar Pengenalan


8. REVOKE: Perintah REVOKE digunakan untuk
mencabut izin atau hak akses ke objek database
seperti tabel dan view.

Dengan menggunakan jenis-jenis perintah DDL ini,


administrator database dapat membuat, mengubah, dan
menghapus struktur database dengan mudah dan
mengontrol hak akses pengguna ke objek database.
Berikut ini adalah beberapa contoh penggunaan
perintah DDL (Data Definition Language) dalam SQL:
1. CREATE TABLE: Membuat tabel baru dengan
nama "students" yang memiliki kolom "id",
"name", dan "age":
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT
);
2. CREATE TABLE students (
ALTER TABLE students
ADD gender VARCHAR(10);
3. DROP TABLE: Menghapus tabel "students":
DROP TABLE students;
4. TRUNCATE TABLE: Menghapus seluruh isi tabel
"students":

Database Rumpun Ilmu Komputer | 45


TRUNCATE TABLE students;
5. RENAME TABLE: Mengubah nama tabel
"students" menjadi "new_students":
RENAME TABLE students TO new_students;

Berikut adalah beberapa best practice dalam


menggunakan Data Definition Language (DDL) menurut
para pakar dalam bidang database:
a. Konsistensi penamaan: Konsistensi dalam
penamaan objek database seperti tabel, view,
dan kolom sangat penting. Nama harus jelas dan
deskriptif, dan harus digunakan secara
konsisten di seluruh database.
b. Hindari penggunaan DROP secara tidak sengaja:
Perintah DROP digunakan untuk menghapus
objek database. Pastikan bahwa Anda hanya
menggunakan perintah DROP ketika Anda
benar-benar ingin menghapus objek tersebut.
Selalu pastikan untuk membuat backup
database sebelum menggunakan perintah DROP.
c. Gunakan konstrain dengan bijak: Konstrain
adalah perangkat penting untuk memastikan
keakuratan dan konsistensi data. Pastikan untuk
menggunakan konstrain yang sesuai untuk

46 | Konsep Dasar Pengenalan


setiap objek database, seperti konstrain unik,
konstrain foreign key, dan konstrain check.
d. Gunakan perintah ALTER dengan hati-hati:
Perintah ALTER digunakan untuk mengubah
struktur objek database seperti tabel atau
kolom. Pastikan bahwa Anda hanya
menggunakan perintah ALTER ketika Anda
benar-benar ingin mengubah struktur objek
tersebut. Selalu pastikan untuk membuat
backup database sebelum menggunakan
perintah ALTER.
e. Documentasikan perubahan: Pastikan untuk
mendokumentasikan setiap perubahan yang
Anda lakukan pada struktur database. Ini akan
memudahkan pengembang dan administrator
database di masa depan untuk memahami
perubahan yang telah dilakukan.
f. Uji perubahan: Sebelum melakukan perubahan
pada struktur database, pastikan untuk menguji
perubahan tersebut di lingkungan pengujian.
Hal ini akan membantu Anda mengidentifikasi
masalah dan menghindari kerusakan data yang
tidak disengaja.

Database Rumpun Ilmu Komputer | 47


Dengan mengikuti best practice di atas, pengguna
DDL dapat memastikan bahwa struktur database
mereka konsisten, aman, dan mudah dimengerti oleh
pengguna.

48 | Konsep Dasar Pengenalan


BAB IV
DATA MANIPULATION LANGUAGE (DML)

4.1. Pengertian DML (Data Manipulation Language)


Data Manipulation Language (DML) adalah
kumpulan perintah yang digunakan untuk
memanipulasi data dalam database. DML berfungsi
untuk menambah, menghapus, atau memperbarui data
yang ada dalam tabel atau view. Dengan menggunakan
perintah DML, pengguna dapat memanipulasi data
dalam database sesuai dengan kebutuhan bisnisnya.
Beberapa perintah DML yang umum digunakan antara
lain SELECT, INSERT, UPDATE, DELETE, dan MERGE.
Perintah SELECT digunakan untuk mengambil data dari
tabel atau view dalam database. Perintah INSERT
digunakan untuk menambahkan baris data ke dalam
tabel. Perintah UPDATE digunakan untuk memperbarui
data yang ada dalam tabel. Perintah DELETE digunakan
untuk menghapus baris data dari tabel. Sedangkan
perintah MERGE digunakan untuk menggabungkan data
dari dua tabel atau view menjadi satu.

Database Rumpun Ilmu Komputer | 49


Menurut para ahli, Data Manipulation Language
(DML) adalah kumpulan perintah yang digunakan
untuk memanipulasi data dalam database. DML
digunakan untuk menambah, menghapus, atau
memperbarui data dalam tabel atau view pada
database.
a. Menurut Ramez Elmasri dan Shamkant B.
Navathe, DML adalah kumpulan perintah yang
digunakan untuk memanipulasi data dalam
database, seperti mengambil data dari tabel atau
view menggunakan perintah SELECT,
menambah data ke dalam tabel menggunakan
perintah INSERT, memperbarui data yang ada
dalam tabel menggunakan perintah UPDATE,
dan menghapus data dari tabel menggunakan
perintah DELETE.
b. Ramakrishnan dan Gehrke (2003) mengartikan
DML sebagai kumpulan perintah yang
digunakan untuk memanipulasi data dalam
basis data, seperti memasukkan, menghapus,
memperbarui, dan mencari data.
c. Sedangkan menurut Connolly dan Begg, DML
adalah kumpulan perintah yang digunakan
untuk memanipulasi data dalam database,
seperti menambah data ke dalam tabel

50 | Konsep Dasar Pengenalan


menggunakan perintah INSERT, memperbarui
data yang ada dalam tabel menggunakan
perintah UPDATE, dan menghapus data dari
tabel menggunakan perintah DELETE.

Dari ketiga definisi di atas, dapat disimpulkan


bahwa DML adalah kumpulan perintah atau bahasa
yang digunakan untuk memanipulasi data dalam basis
data. Perintah DML ini digunakan untuk melakukan
operasi seperti menambah, menghapus, memperbarui,
dan mencari data dalam basis data.
Jenis-jenis Data Manipulation Language (DML)
dapat dibedakan berdasarkan fungsinya dalam
memanipulasi data dalam sebuah database. Berikut ini
adalah beberapa jenis DML yang umum digunakan:
a. Procedural DML: Dalam jenis ini, instruksi DML
harus diberikan secara terperinci untuk setiap
aksi yang ingin dilakukan pada data. Contohnya
adalah SQL PL (SQL Procedural Language),
PL/SQL (Procedural Language/Structured Query
Language), dan T-SQL (Transact-SQL).
b. Non-Procedural DML: Jenis ini menggunakan
perintah-perintah yang tidak terstruktur atau
tanpa urutan yang terperinci. Contohnya adalah
SQL (Structured Query Language), QBE (Query

Database Rumpun Ilmu Komputer | 51


By Example), dan LINQ (Language Integrated
Query).
c. High-Level DML: Jenis ini merupakan jenis DML
yang menggunakan perintah-perintah yang
lebih abstrak dan mudah dipahami oleh
manusia. Contohnya adalah SQL, yang
memungkinkan pengguna untuk menyatakan
perintah-perintah dalam bahasa manusia yang
mudah dipahami.
d. Low-Level DML: Jenis ini menggunakan
perintah-perintah yang lebih terperinci dan
lebih dekat dengan struktur database.
Contohnya adalah DDL (Data Definition
Language) dan DCL (Data Control Language).

Manfaat utama dari Data Manipulation Language


(DML) adalah memungkinkan pengguna untuk
memanipulasi data dalam database sesuai dengan
kebutuhan bisnisnya. Beberapa manfaat dari
penggunaan DML antara lain:
a. Mengelola data: DML memungkinkan pengguna
untuk mengelola data dalam database, seperti
menambah, mengubah, atau menghapus data
dari tabel atau view.

52 | Konsep Dasar Pengenalan


b. Memperbarui data: DML memungkinkan
pengguna untuk memperbarui data yang ada
dalam database, seperti memperbarui informasi
pelanggan atau produk yang ada di dalam tabel.
c. Mengambil data: DML memungkinkan pengguna
untuk mengambil data dari tabel atau view
dalam database sesuai dengan kriteria tertentu
menggunakan perintah SELECT.
d. Meningkatkan efisiensi: DML memungkinkan
pengguna untuk melakukan operasi pada data
dalam jumlah besar dengan cepat dan efisien,
sehingga meningkatkan produktivitas dan
efisiensi bisnis.
e. Mengurangi kesalahan: DML dapat membantu
mengurangi kesalahan dalam pengolahan data
dengan menyediakan kontrol yang ketat atas
operasi data, seperti memeriksa batasan
integritas referensial sebelum melakukan
operasi penghapusan data.
f. Mengelola data - DML memungkinkan pengguna
untuk menambahkan, memperbarui, atau
menghapus data dalam database.
g. Memperbarui data secara dinamis - DML
memungkinkan pengguna untuk memperbarui
data dalam waktu nyata dan secara dinamis,

Database Rumpun Ilmu Komputer | 53


sehingga pengguna dapat selalu mengakses
informasi terbaru.
h. Meningkatkan keamanan data - DML
memungkinkan pengguna untuk mengakses dan
memanipulasi data dalam database dengan
tingkat keamanan yang tepat, sehingga
meminimalkan risiko terjadinya pelanggaran
keamanan.
i. Meningkatkan produktivitas - DML
memungkinkan pengguna untuk mengakses
data dengan cepat dan mudah, sehingga
meningkatkan produktivitas pengguna.
j. Meningkatkan akurasi data - DML
memungkinkan pengguna untuk memperbarui
data dengan cepat dan mudah, sehingga
meminimalkan risiko kesalahan dalam
memasukkan data.
k. Mendukung pengambilan keputusan - DML
memungkinkan pengguna untuk mengambil
data yang dibutuhkan dari database, sehingga
mendukung pengambilan keputusan yang lebih
baik.

Tujuan utama dari Data Manipulation Language


(DML) adalah memungkinkan pengguna untuk

54 | Konsep Dasar Pengenalan


memanipulasi data dalam database dengan
menggunakan perintah-perintah yang sesuai. DML
memungkinkan pengguna untuk menambah,
mengubah, dan menghapus data dalam database, serta
mengambil data dari database.
Berikut adalah beberapa tujuan utama dari penggunaan
DML:
a. Memperbarui data - DML memungkinkan
pengguna untuk memperbarui data dalam
database sesuai dengan kebutuhan.
b. Membuat, menghapus, dan mengubah data -
DML memungkinkan pengguna untuk membuat,
menghapus, dan mengubah data dalam
database.
c. Mengambil data - DML memungkinkan
pengguna untuk mengambil data dari database
menggunakan perintah-perintah seperti
SELECT.
d. Menyimpan data - DML memungkinkan
pengguna untuk menyimpan data dalam
database menggunakan perintah-perintah
seperti INSERT.
e. Memastikan integritas data - DML memastikan
bahwa data dalam database tetap akurat dan

Database Rumpun Ilmu Komputer | 55


konsisten dengan menggunakan perintah-
perintah seperti UPDATE dan DELETE.

Dalam keseluruhan, tujuan utama dari DML adalah


untuk memungkinkan pengguna untuk memanipulasi
data dalam database secara efektif dan efisien, serta
memastikan bahwa data dalam database tetap akurat
dan konsisten.

4.2. Perintah-Perintah Data Manipulation Language


(DML)
Berikut adalah beberapa perintah Data
Manipulation Language (DML) dalam SQL yang umum
digunakan beserta penjelasannya menurut beberapa
pakar:
a. SELECT - digunakan untuk mengambil data dari
satu atau beberapa tabel dalam database.
Menurut pakar Chapple (2021), perintah
SELECT ini juga dapat digunakan untuk memilih
kolom tertentu yang ingin ditampilkan,
menggabungkan hasil dari beberapa tabel,
menghitung nilai agregat, dan lain sebagainya.
b. INSERT - digunakan untuk memasukkan data
baru ke dalam tabel. Menurut pakar Delaney
(2021), perintah INSERT ini dapat digunakan

56 | Konsep Dasar Pengenalan


untuk memasukkan satu atau beberapa baris
data baru sekaligus, dengan memberikan nilai
untuk setiap kolom dalam tabel.
c. UPDATE - digunakan untuk mengubah data
yang sudah ada dalam tabel. Menurut pakar
Chapple (2021), perintah UPDATE ini dapat
digunakan untuk memperbarui nilai kolom
tertentu dalam satu atau beberapa baris,
berdasarkan kriteria tertentu.
d. DELETE - digunakan untuk menghapus data
yang sudah ada dalam tabel. Menurut pakar
Delaney (2021), perintah DELETE ini dapat
digunakan untuk menghapus satu atau
beberapa baris data yang memenuhi kriteria
tertentu.
e. MERGE - digunakan untuk menggabungkan data
dari dua tabel menjadi satu. Menurut pakar
Orsini (2020), perintah MERGE ini dapat
digunakan untuk memperbarui data dalam satu
tabel dengan data dari tabel lain, atau untuk
menambahkan data baru ke tabel.
f. COMMIT - digunakan untuk menyimpan
perubahan yang dilakukan pada database.
Menurut pakar Delaney (2021), perintah
COMMIT ini digunakan untuk menyelesaikan

Database Rumpun Ilmu Komputer | 57


transaksi yang sedang berlangsung, sehingga
perubahan yang dilakukan dapat disimpan
secara permanen dalam database.
g. ROLLBACK - digunakan untuk membatalkan
perubahan yang dilakukan pada database
sebelumnya. Menurut pakar Orsini (2020),
perintah ROLLBACK ini digunakan untuk
mengembalikan database ke keadaan sebelum
transaksi yang sedang berlangsung dimulai.
h. SAVEPOINT - digunakan untuk membuat titik
pemulihan dalam transaksi. Menurut pakar
Chapple (2021), perintah SAVEPOINT ini
digunakan untuk membuat "checkpoint" dalam
transaksi, sehingga jika terjadi kesalahan,
transaksi dapat diulang dari titik ini.
i. Perintah-perintah DML tersebut dapat
digunakan untuk memanipulasi data dalam
database. Dengan menggunakan perintah-
perintah tersebut, pengguna dapat
memasukkan, mengubah, menghapus, dan
mengambil data dalam database secara efektif
dan efisien.

Berikut adalah contoh penggunaan perintah DML


pada bahasa SQL:

58 | Konsep Dasar Pengenalan


1. Perintah SELECT
Perintah SELECT digunakan untuk
menampilkan data dari tabel.
Contoh:
SELECT * FROM customer;
2. Perintah INSERT
Perintah INSERT digunakan untuk memasukkan
data baru ke dalam tabel.
Contoh:
INSERT INTO customer (name, email, phone)
VALUES ('John Doe', 'johndoe@example.com',
'123-456-7890');
3. Perintah UPDATE
Perintah UPDATE digunakan untuk mengubah
data yang sudah ada di dalam tabel.
Contoh:
UPDATE customer SET phone = '987-654-3210'
WHERE id = 1;
4. Perintah DELETE
Perintah DELETE digunakan untuk menghapus
data dari tabel.
Contoh:
DELETE FROM customer WHERE id = 1;

Database Rumpun Ilmu Komputer | 59


Berikut ini adalah beberapa best practice dalam
menggunakan DML:
a. Gunakan perintah DML dengan hati-hati
b. Ketika menggunakan perintah DML, pastikan
Anda memahami konsekuensi dari setiap
perintah yang Anda jalankan. Pastikan Anda
memeriksa kembali sintaks dan filter yang
digunakan agar tidak mengubah atau
menghapus data yang tidak seharusnya.
c. Hindari penggunaan wildcard pada perintah
SELECT
d. Jangan menggunakan wildcard (*) pada
perintah SELECT karena dapat memperlambat
kinerja query dan mengakibatkan pengambilan
data yang tidak perlu.
e. Gunakan filter dengan bijak
f. Pastikan Anda menggunakan filter dengan bijak
pada perintah DML, terutama pada perintah
DELETE dan UPDATE. Filter yang salah dapat
mengakibatkan data yang tidak seharusnya
diubah atau dihapus.
g. Gunakan transaksi jika diperlukan
h. Jika Anda akan mengubah beberapa tabel
sekaligus, pertimbangkan untuk menggunakan
transaksi agar dapat memastikan bahwa semua

60 | Konsep Dasar Pengenalan


perubahan dijalankan dengan sukses atau tidak
sama sekali.
i. Gunakan parameterized query untuk mencegah
SQL injection
j. Pastikan Anda menggunakan parameterized
query untuk menghindari SQL injection.
Parameterized query memastikan bahwa input
pengguna dibersihkan dari karakter berbahaya
dan tidak dapat dieksekusi sebagai perintah
SQL.

4.3 Transaksi DML (Data Manipulation Language)


Transaksi pada DML (Data Manipulation
Language) adalah sekumpulan operasi yang dijalankan
sebagai satu kesatuan logis, yang dapat dilakukan pada
basis data. Setiap operasi dalam transaksi harus
berhasil secara keseluruhan atau gagal secara
keseluruhan. Jika ada operasi yang gagal, maka semua
operasi yang telah dilakukan sebelumnya akan
dibatalkan dan data akan dikembalikan ke keadaan
semula.
Konsep transaksi sangat penting dalam menjaga
keamanan dan konsistensi data dalam basis data. Dalam
DML, transaksi digunakan untuk memastikan bahwa
perubahan data yang dilakukan oleh pengguna atau

Database Rumpun Ilmu Komputer | 61


aplikasi selalu berhasil atau gagal secara keseluruhan,
sehingga meminimalkan risiko data yang tidak
konsisten atau terputus.
Beberapa operasi DML yang biasanya dijalankan
sebagai transaksi meliputi:
a. Insert: Menambahkan data ke dalam tabel
b. Update: Memperbarui data yang sudah ada
dalam tabel
c. Delete: Menghapus data dari tabel

Contoh transaksi dalam SQL:


BEGIN TRANSACTION;

UPDATE table1
SET column1 = 'value1'
WHERE column2 = 'value2';

INSERT INTO table2 (column3, column4)


VALUES ('value3', 'value4');

COMMIT;

Dalam contoh di atas, transaksi dimulai dengan


perintah BEGIN TRANSACTION. Kemudian, ada dua
operasi DML yang dilakukan: UPDATE dan INSERT. Jika

62 | Konsep Dasar Pengenalan


kedua operasi berhasil, maka transaksi diakhiri dengan
perintah COMMIT. Namun, jika terjadi kesalahan pada
salah satu operasi, maka transaksi dapat dibatalkan
dengan perintah ROLLBACK.
Keuntungan menggunakan transaksi dalam DML
antara lain:
a. Keutuhan data: Transaksi membantu
memastikan bahwa semua operasi dalam
transaksi berhasil atau gagal sepenuhnya,
sehingga data tetap terjaga keutuhannya.
b. Konsistensi data: Dalam transaksi, semua
operasi dilakukan sebagai satu kesatuan. Ini
membantu memastikan bahwa data yang
disimpan dalam database konsisten dan tidak
mengandung keadaan yang tidak konsisten.
c. Penguncian sumber daya: Saat transaksi sedang
berlangsung, sumber daya yang terkait dengan
transaksi akan dikunci untuk mencegah konflik
antara transaksi.

DML (Data Manipulation Language) adalah bagian


dari SQL (Structured Query Language) yang digunakan
untuk memanipulasi data dalam database, seperti
menambah, menghapus, atau memperbarui data.
Keamanan dalam DML sangat penting untuk melindungi

Database Rumpun Ilmu Komputer | 63


data yang disimpan dalam database. Beberapa cara
untuk menjaga keamanan dalam DML adalah:
1. Penggunaan hak akses yang tepat: Setiap
pengguna harus memiliki hak akses yang tepat
untuk melakukan operasi DML pada tabel
tertentu. Dalam SQL, ini dilakukan dengan
memberikan izin atau hak akses ke tabel kepada
pengguna atau grup pengguna tertentu.
2. Verifikasi input: Setiap input harus diverifikasi
sebelum diproses oleh database. Ini termasuk
memastikan bahwa input tidak mengandung
karakter yang tidak diinginkan seperti tanda
kutip tunggal atau tanda kutip ganda, dan
bahwa input tidak melebihi batas maksimum
yang ditetapkan untuk kolom.
3. Penggunaan parameterized queries:
Parameterized queries digunakan untuk
menghindari SQL injection attacks. Dengan
parameterized queries, nilai parameter yang
diberikan oleh pengguna dipisahkan dari query,
sehingga meminimalkan risiko SQL injection.
4. Penggunaan transaksi: Transaksi digunakan
untuk memastikan bahwa operasi DML berhasil
atau gagal sepenuhnya. Ini membantu mencegah
keadaan yang tidak konsisten dalam database,

64 | Konsep Dasar Pengenalan


dan memastikan bahwa data yang disimpan
dalam database tetap aman dan terjaga
keutuhannya.

Database Rumpun Ilmu Komputer | 65


66 | Konsep Dasar Pengenalan
BAB V
ENTITY RELATIONSHIP DIAGRAM

5.1. Pendahuluan
Entity Relationship Diagram (ERD) adalah sebuah
model visual yang digunakan untuk merepresentasikan
struktur data dan hubungan antar data dalam sebuah
sistem informasi. Tujuan dari Entity Relationship
Diagram adalah untuk memberikan gambaran yang
jelas dan mudah dipahami mengenai data yang
diperlukan oleh suatu sistem, dan bagaimana data
tersebut saling berhubungan satu sama lain.
Beberapa tujuan utama dari Entity Relationship
Diagram adalah:
1. Memudahkan pemahaman mengenai struktur
data dan hubungan antar data dalam sebuah
sistem informasi.
2. Menyediakan dasar untuk perancangan
database yang baik dan efisien.
3. Menghindari kesalahan dalam perancangan
database, seperti duplikasi data atau hubungan
yang tidak konsisten.

Database Rumpun Ilmu Komputer | 67


4. Memungkinkan tim pengembang dan pemangku
kepentingan sistem untuk berkomunikasi dan
berkolaborasi secara lebih efektif dalam
mengembangkan dan memperbaiki sistem
informasi.

Entity Relationship Diagram (ERD) adalah suatu


diagram atau model data yang digunakan untuk
merepresentasikan hubungan antar entitas atau objek
dalam sebuah sistem informasi. ERD digunakan untuk
menggambarkan hubungan antara entitas atau objek
dalam sebuah sistem, termasuk atribut-atribut yang
dimiliki oleh setiap entitas, serta tipe-tipe hubungan
yang ada antara entitas. ERD dapat membantu
pengembang sistem untuk memahami kompleksitas
dan kebutuhan sistem secara lebih baik, serta
memberikan dasar untuk merancang struktur database
dan mengimplementasikan sistem dengan lebih efisien.
ERD juga dapat membantu untuk mengidentifikasi
kesalahan dalam perancangan sistem dan memperbaiki
masalah tersebut sebelum sistem diimplementasikan.
ERD biasanya digunakan oleh tim pengembang,
database administrator, dan pemangku kepentingan
dalam mengembangkan atau memperbaiki sistem
informasi.

68 | Konsep Dasar Pengenalan


5.2. Entitas dan Atribut
Definisi Entitas merujuk pada segala jenis objek
yang dapat diidentifikasi dan memiliki nilai dalam suatu
sistem informasi. Entitas dapat berupa objek fisik,
seperti manusia, buku, mobil, atau objek non-fisik
seperti konsep, perusahaan, atau ide. Dalam konteks
sistem informasi, entitas sering didefinisikan sebagai
objek yang memiliki atribut dan hubungan dengan
entitas lainnya. Atribut adalah karakteristik atau sifat
dari entitas, seperti nama, alamat, nomor telepon, dan
lain sebagainya. Hubungan adalah koneksi atau
interaksi antara entitas, seperti karyawan bekerja di
perusahaan, buku dipinjam oleh anggota perpustakaan,
atau penulis menulis buku. Definisi entitas sangat
penting dalam desain sistem informasi karena
membantu dalam pemodelan data dan mengorganisasi
informasi. Dengan mengidentifikasi entitas dan
atributnya, dapat dibuat struktur data yang
memudahkan dalam mengelola informasi dan
menjalankan proses bisnis. Berikut adalah beberapa
contoh entitas dalam bisnis:
1. Perusahaan: Perusahaan adalah salah satu
entitas bisnis yang paling umum. Sebagai
sebuah entitas, perusahaan memiliki hak dan
kewajiban yang terpisah dari pemiliknya, dan

Database Rumpun Ilmu Komputer | 69


dapat melakukan tindakan hukum secara
independen.
2. Badan Usaha Milik Negara (BUMN): BUMN
adalah sebuah entitas bisnis yang dimiliki
sepenuhnya atau sebagian besar oleh
pemerintah. BUMN dapat melakukan kegiatan
bisnis seperti perusahaan swasta, namun
memiliki tujuan yang lebih luas, yaitu
memberikan manfaat bagi masyarakat.
3. Organisasi Nirlaba: Organisasi nirlaba adalah
sebuah entitas yang tidak memiliki tujuan untuk
mencari keuntungan finansial. Organisasi ini
didirikan untuk tujuan sosial atau amal, seperti
yayasan, lembaga sosial, dan sebagainya.

Atribut komputer adalah karakteristik atau fitur


yang melekat pada sebuah komputer, baik itu perangkat
keras (hardware) maupun perangkat lunak (software).
Beberapa contoh atribut komputer antara lain:
a. Prosesor: komponen perangkat keras yang
berfungsi untuk menjalankan perintah-perintah
program komputer.
b. Memori: tempat penyimpanan sementara data
dan program yang sedang dijalankan oleh
komputer.

70 | Konsep Dasar Pengenalan


c. Kapasitas penyimpanan: jumlah data yang dapat
disimpan oleh sebuah perangkat penyimpanan
seperti hard disk atau flash drive.
d. Resolusi layar: jumlah piksel pada layar
komputer yang menentukan kualitas tampilan
gambar.
e. Sistem operasi: perangkat lunak yang mengatur
dan mengelola berbagai komponen perangkat
keras pada komputer.
f. Port komunikasi: saluran yang digunakan untuk
menghubungkan perangkat tambahan dengan
komputer, seperti USB atau HDMI.
g. Kecepatan transfer data: kecepatan transfer
data antara perangkat, misalnya kecepatan
transfer data pada koneksi internet atau antara
perangkat penyimpanan dan komputer.

Atribut dalam bisnis dapat berupa karakteristik


atau fitur yang melekat pada sebuah produk atau
layanan yang ditawarkan oleh sebuah perusahaan.
Beberapa contoh atribut dalam bisnis antara lain:
1. Kualitas produk: tingkat keunggulan sebuah
produk dalam hal desain, bahan, dan
kehandalan.

Database Rumpun Ilmu Komputer | 71


2. Harga: jumlah uang yang harus dibayar untuk
membeli sebuah produk atau menggunakan
sebuah layanan.
3. Pelayanan pelanggan: kemudahan dan
kecepatan dalam menanggapi keluhan atau
pertanyaan pelanggan.
4. Merek: nama, logo, dan citra perusahaan yang
dapat mempengaruhi persepsi konsumen
terhadap produk atau layanan.
5. Inovasi: kemampuan perusahaan untuk
mengembangkan produk atau layanan baru
yang memenuhi kebutuhan konsumen yang
belum terpenuhi.
6. Keamanan: tingkat keamanan yang diberikan
pada produk atau layanan, seperti keamanan
data pada sebuah layanan online.
7. Pengalaman pengguna: kemudahan dan
kepuasan dalam menggunakan produk atau
layanan.

Berikut adalah penjelasan lebih detail mengenai


jenis-jenis atribut komputer:
a. Atribut perangkat keras (hardware attributes):
atribut ini meliputi karakteristik atau spesifikasi
dari komponen fisik pada komputer, seperti

72 | Konsep Dasar Pengenalan


prosesor, RAM, kapasitas penyimpanan, kartu
grafis, monitor, dan lain-lain. Atribut ini dapat
mempengaruhi performa dan kemampuan dari
sebuah komputer.
b. Atribut perangkat lunak (software attributes):
atribut ini meliputi sistem operasi, aplikasi,
driver, dan program lain yang diinstal pada
komputer. Atribut ini mempengaruhi
fungsionalitas, kemampuan, dan keamanan dari
sebuah komputer.
c. Atribut jaringan (network attributes): atribut ini
meliputi karakteristik jaringan, seperti
kecepatan transfer data, protokol jaringan,
topologi jaringan, jangkauan sinyal, dan
keamanan jaringan. Atribut ini mempengaruhi
koneksi internet, kemampuan berbagi data, dan
keamanan dari sebuah komputer.

5.3. Hubungan Antara Entitas


Entitas komputer dapat memiliki beberapa atribut
yang mencakup spesifikasi perangkat keras, perangkat
lunak, dan jaringan. Ketika atribut-atribut ini
dihubungkan, mereka membentuk keseluruhan sistem
komputer yang terintegrasi. Misalnya, dalam sebuah
bisnis, entitas komputer seperti komputer desktop,

Database Rumpun Ilmu Komputer | 73


laptop, server, dan perangkat seluler, masing-masing
memiliki atribut seperti spesifikasi perangkat keras dan
perangkat lunak yang unik, tetapi mereka juga harus
terhubung ke jaringan untuk mengakses data dan
aplikasi yang dibutuhkan. Dengan mengintegrasikan
atribut-atribut ini, sebuah entitas komputer menjadi
bagian penting dari sistem informasi yang membantu
bisnis untuk beroperasi.
Entitas komputer dalam sebuah organisasi saling
berhubungan satu sama lain dan membentuk suatu
sistem informasi yang terintegrasi. Hubungan antara
entitas komputer dapat dilihat dari dua perspektif,
yaitu:
1. Hubungan fungsional: entitas komputer dapat
saling berhubungan dalam hal fungsi atau
tujuan bisnis yang sama. Misalnya, sebuah
komputer desktop dapat terhubung ke sebuah
server yang mengelola data dan aplikasi yang
dibutuhkan oleh pengguna di komputer desktop
tersebut.
2. Hubungan teknis: entitas komputer juga dapat
saling berhubungan melalui koneksi jaringan,
seperti kabel Ethernet atau WiFi, yang
memungkinkan transfer data dan informasi
antar entitas komputer tersebut.

74 | Konsep Dasar Pengenalan


Dengan terintegrasi secara baik, hubungan antara
entitas komputer dapat meningkatkan efisiensi dan
efektivitas operasi organisasi.
Notasi hubungan antara entitas komputer dapat
ditampilkan menggunakan diagram relasional. Diagram
relasional merupakan salah satu cara untuk
memvisualisasikan struktur basis data yang terdiri dari
entitas dan hubungan antara entitas tersebut. Notasi
hubungan antara entitas komputer dalam diagram
relasional menggunakan simbol yang sama dengan
notasi hubungan antara entitas dalam basis data pada
umumnya, yaitu:
1. Garis lurus (—): merepresentasikan hubungan
one-to-one antara dua entitas komputer.
2. Garis panah (—>): merepresentasikan
hubungan one-to-many antara dua entitas
komputer, yang berarti satu entitas mempunyai
banyak hubungan dengan entitas lainnya.
3. Garis dua arah (<—>): merepresentasikan
hubungan many-to-many antara dua entitas
komputer, yang berarti satu entitas mempunyai
banyak hubungan dengan banyak entitas
lainnya.

Database Rumpun Ilmu Komputer | 75


Contoh notasi hubungan antara entitas komputer
dalam diagram relasional:
Entitas Komputer (1) —> Entitas Pengguna
(many)
Entitas Komputer (many) <—> Entitas
Jaringan (many)

Contoh hubungan antara entitas dalam bisnis dapat


terlihat dalam sistem informasi manajemen (SIM) atau
basis data. Berikut adalah beberapa contoh hubungan
antara entitas dalam bisnis:
1. Hubungan antara entitas Pelanggan, Pesanan,
dan Produk: Pelanggan dapat melakukan
pemesanan produk tertentu. Setiap pesanan
dapat memiliki beberapa produk. Hubungan
antara entitas tersebut dapat direpresentasikan
dengan notasi hubungan one-to-many atau
many-to-many.
2. Hubungan antara entitas Karyawan, Proyek, dan
Tugas: Karyawan dapat ditugaskan untuk
bekerja pada proyek tertentu dan
menyelesaikan tugas-tugas tertentu dalam
proyek tersebut. Hubungan antara entitas
tersebut dapat direpresentasikan dengan notasi
hubungan one-to-many atau many-to-many.

76 | Konsep Dasar Pengenalan


3. Hubungan antara entitas Penjualan, Stok, dan
Pemasok: Penjualan dapat mempengaruhi stok
produk. Pemasok dapat memberikan produk
yang diperlukan untuk menambah stok.
Hubungan antara entitas tersebut dapat
direpresentasikan dengan notasi hubungan one-
to-many atau many-to-many.

5.4. Cardinality
Cardinality atau kardinalitas dalam konteks
komputer adalah jumlah hubungan yang dapat
terbentuk antara entitas pada basis data atau sistem
informasi. Kardinalitas biasanya dinyatakan dengan
simbol angka atau teks yang ditempatkan di antara dua
entitas pada diagram relasional.
Ada empat jenis kardinalitas dalam hubungan
antara entitas pada sistem informasi, yaitu:
1. One-to-One (1:1): hubungan di mana setiap satu
entitas hanya memiliki satu hubungan dengan
satu entitas lainnya.
2. One-to-Many (1:N): hubungan di mana satu
entitas dapat memiliki banyak hubungan
dengan entitas lainnya, sedangkan entitas
lainnya hanya dapat memiliki satu hubungan
dengan satu entitas saja.

Database Rumpun Ilmu Komputer | 77


3. Many-to-One (N:1): hubungan di mana banyak
entitas dapat memiliki satu hubungan dengan
satu entitas lainnya, sedangkan satu entitas
hanya dapat memiliki satu hubungan dengan
banyak entitas.
4. Many-to-Many (N:N): hubungan di mana banyak
entitas dapat memiliki banyak hubungan
dengan banyak entitas lainnya.

Contoh penggunaan kardinalitas dalam hubungan


antara entitas komputer dapat dilihat dalam diagram
relasional, seperti pada contoh berikut:
• Entitas Komputer (1) —> Entitas Pengguna
(many)
• Entitas Komputer (many) <—> Entitas Jaringan
(many)

Dalam sistem informasi atau basis data, cardinality


atau kardinalitas adalah konsep yang digunakan untuk
menjelaskan hubungan antara entitas. Terdapat empat
jenis kardinalitas pada hubungan antara entitas
komputer, yaitu:
a. One-to-One (1:1)
Dalam jenis kardinalitas ini, satu entitas pada
tabel memiliki satu entitas pada tabel lainnya

78 | Konsep Dasar Pengenalan


dan begitu pula sebaliknya. Misalnya, setiap
karyawan hanya memiliki satu nomor KTP dan
setiap nomor KTP hanya bisa digunakan oleh
satu karyawan
b. One-to-Many (1:N)
Dalam jenis kardinalitas ini, satu entitas pada
tabel dapat memiliki banyak entitas pada tabel
lainnya, tetapi entitas pada tabel lainnya hanya
dapat memiliki satu entitas pada tabel yang
pertama. Misalnya, satu departemen dapat
memiliki banyak karyawan, tetapi satu
karyawan hanya bisa menjadi anggota dari satu
departemen.
c. Many-to-One (N:1)
Dalam jenis kardinalitas ini, banyak entitas pada
tabel dapat memiliki satu entitas pada tabel
lainnya, tetapi satu entitas pada tabel lainnya
hanya dapat memiliki banyak entitas pada tabel
pertama. Misalnya, banyak karyawan dapat
menjadi anggota dari satu departemen, tetapi
setiap departemen hanya memiliki satu
manajer.
d. Many-to-Many (N:N)
Dalam jenis kardinalitas ini, banyak entitas pada
tabel dapat memiliki banyak entitas pada tabel

Database Rumpun Ilmu Komputer | 79


lainnya. Misalnya, banyak karyawan dapat
bekerja pada banyak proyek dan banyak proyek
dapat melibatkan banyak karyawan.

Penentuan jenis kardinalitas pada hubungan antara


entitas sangat penting dalam perancangan basis data
atau sistem informasi, karena mempengaruhi cara
entitas-entitas tersebut saling berinteraksi.

5.5. Konstruksi Entity Relationship Diagram


Berikut adalah langkah-langkah konstruksi Entity
Relationship Diagram (ERD):
1. Identifikasi entitas-entitas yang terlibat:
Langkah pertama adalah mengidentifikasi
entitas-entitas yang akan digambarkan dalam
ERD. Entitas dapat berupa objek atau konsep
dalam dunia nyata yang memiliki atribut-atribut
dan hubungan dengan entitas lain.
2. Identifikasi atribut-atribut dari setiap entitas:
Setelah entitas-entitas diidentifikasi, langkah
berikutnya adalah mengidentifikasi atribut-
atribut dari setiap entitas. Atribut dapat berupa
karakteristik atau properti dari suatu entitas.
Setiap entitas harus memiliki setidaknya satu
atribut.

80 | Konsep Dasar Pengenalan


3. Identifikasi hubungan antar entitas: Setelah
entitas-entitas dan atribut-atribut diidentifikasi,
langkah selanjutnya adalah mengidentifikasi
hubungan antar entitas. Hubungan dapat berupa
keterkaitan antara entitas-entitas yang dapat
berupa one-to-one, one-to-many, many-to-one,
atau many-to-many.
4. Membuat diagram dasar: Setelah entitas,
atribut, dan hubungan diidentifikasi, gambar
diagram dasar yang berisi entitas-entitas,
atribut-atribut, dan hubungan-hubungan antar
entitas.
5. Menambahkan notasi tambahan: ERD dapat
diperkaya dengan notasi tambahan, seperti
notasi kardinalitas, notasi atribute, notasi
hubungan, dan lain-lain.
6. Meninjau dan mengevaluasi diagram: Setelah
ERD selesai dibuat, tinjau dan evaluasi ERD
tersebut. Pastikan ERD memenuhi kebutuhan
dan persyaratan yang ada.

Berikut adalah contoh konstruksi Entity


Relationship Diagram (ERD) untuk sebuah sistem
pemesanan tiket bioskop:
a. Identifikasi entitas-entitas yang terlibat:

Database Rumpun Ilmu Komputer | 81


1. Bioskop
2. Film
3. Jadwal
4. Kursi
5. Pemesan
6. Transaksi
b. Identifikasi atribut-atribut dari setiap entitas:
1. Bioskop: id_bioskop, nama_bioskop,
alamat_bioskop
2. Film: id_film, judul_film, genre_film
3. Jadwal: id_jadwal, waktu_mulai,
waktu_selesai
4. Kursi: id_kursi, nomor_kursi
5. Pemesan: id_pemesan, nama_pemesan,
nomor_telepon
6. Transaksi: id_transaksi, tanggal_transaksi,
total_bayar
c. Identifikasi hubungan antar entitas:
1. Bioskop memiliki banyak film
2. Film dapat diputar di banyak bioskop
3. Film memiliki banyak jadwal
4. Jadwal dapat digunakan untuk banyak
transaksi
Setiap transaksi dapat terdiri dari banyak kursi
yang dipesan oleh satu pemesan

82 | Konsep Dasar Pengenalan


BAB VI
MYSQL

6.1. Pengertian MySQL


MySQL adalah sistem manajemen basis data
relasional (RDBMS) open source yang populer dan
banyak digunakan di seluruh dunia. MySQL
dikembangkan oleh perusahaan swasta asal Swedia,
yaitu MySQL AB, kemudian diakuisisi oleh perusahaan
Sun Microsystems pada tahun 2008, dan kemudian
diakuisisi oleh Oracle Corporation pada tahun 2010.
MySQL menyediakan fitur-fitur lengkap dan cepat,
seperti dukungan untuk bahasa pemrograman,
keamanan yang kuat, skalabilitas yang tinggi, dan
dukungan untuk berbagai platform. MySQL juga
memiliki kemampuan untuk mengelola jumlah data
yang sangat besar dan dapat diintegrasikan dengan
berbagai aplikasi dan teknologi.
Beberapa fitur unggulan dari MySQL antara lain:
a. Kinerja yang cepat: MySQL dirancang untuk
memberikan kinerja yang cepat dan efisien,

Database Rumpun Ilmu Komputer | 83


sehingga dapat memproses jutaan permintaan
dalam waktu yang singkat.
b. Skalabilitas yang tinggi: MySQL dapat diatur
untuk bekerja dengan jumlah data yang sangat
besar dan jumlah koneksi yang sangat banyak.
MySQL dapat dengan mudah ditingkatkan untuk
mengakomodasi pertumbuhan bisnis Anda.
c. Keamanan yang baik: MySQL menyediakan fitur
keamanan yang kuat, seperti autentikasi,
enkripsi data, dan pengendalian akses, sehingga
data yang tersimpan di dalam MySQL aman dari
ancaman luar.
d. Open source: MySQL adalah sebuah proyek
open source yang berarti Anda dapat
mengunduh dan menggunakannya secara gratis.
Anda juga dapat mengubah dan
mengembangkan MySQL sesuai dengan
kebutuhan Anda.

MySQL digunakan secara luas di seluruh dunia dan


menjadi database backend untuk banyak aplikasi
populer seperti WordPress, Drupal, dan Joomla!. MySQL
juga sering digunakan sebagai bagian dari lampiran,
yaitu stack teknologi open source yang terdiri dari
Linux, Apache, MySQL, dan PHP.

84 | Konsep Dasar Pengenalan


MySQL adalah sistem manajemen basis data
relasional (RDBMS) open source yang banyak
digunakan di seluruh dunia. MySQL dikembangkan oleh
MySQL AB, sebuah perusahaan swasta asal Swedia,
kemudian diakuisisi oleh Sun Microsystems pada tahun
2008, dan akhirnya diakuisisi oleh Oracle Corporation
pada tahun 2010. Menurut para ahli, MySQL memiliki
banyak kelebihan, seperti kecepatan akses data yang
tinggi, kemampuan mengelola jumlah data yang besar,
dan fitur keamanan yang kuat. MySQL juga mudah
digunakan dan dapat diintegrasikan dengan berbagai
aplikasi dan teknologi.
a. Menurut Sutopo dan Arifin (2015), MySQL
adalah salah satu sistem manajemen basis data
yang populer dan banyak digunakan di seluruh
dunia. MySQL memiliki fitur-fitur lengkap dan
cepat, seperti dukungan untuk bahasa
pemrograman, keamanan yang kuat, skalabilitas
yang tinggi, dan dukungan untuk berbagai
platform.
b. Menurut Ramadhan (2019), MySQL merupakan
sistem manajemen basis data relasional open
source yang paling banyak digunakan di seluruh
dunia. MySQL dirancang untuk memberikan
kinerja yang cepat dan efisien, sehingga dapat

Database Rumpun Ilmu Komputer | 85


memproses jutaan permintaan dalam waktu
yang singkat.
c. Menurut Singh (2018), MySQL adalah sistem
manajemen basis data yang dapat
diintegrasikan dengan berbagai aplikasi dan
teknologi. MySQL juga memiliki kemampuan
untuk mengelola jumlah data yang sangat besar
dan dapat ditingkatkan untuk mengakomodasi
pertumbuhan bisnis.

MySQL adalah sebuah sistem manajemen basis


data relasional yang populer dan sering digunakan
dalam aplikasi web, aplikasi bisnis, dan berbagai
macam aplikasi lainnya. Tujuan utama MySQL adalah
untuk menyediakan sebuah basis data yang andal,
cepat, dan mudah digunakan. Berikut adalah beberapa
tujuan utama MySQL:
1. Menyediakan basis data yang andal: MySQL
dirancang untuk memberikan kinerja dan
keandalan yang tinggi. MySQL dapat menangani
basis data yang besar dengan cepat dan mudah,
bahkan pada tingkat lalu lintas yang tinggi.
2. Mudah digunakan: MySQL menyediakan
antarmuka yang mudah digunakan untuk
memasukkan, mengubah, dan mengambil data

86 | Konsep Dasar Pengenalan


dari basis data. MySQL juga menyediakan
dukungan untuk berbagai bahasa pemrograman,
termasuk PHP, Python, dan Java.
3. Fleksibilitas: MySQL menyediakan banyak fitur
yang memungkinkan pengguna untuk mengatur
basis data sesuai dengan kebutuhan bisnis
mereka. Ini termasuk dukungan untuk transaksi,
indeks, kunci asing, dan banyak lagi.
4. Keamanan: MySQL menyediakan berbagai fitur
keamanan untuk melindungi basis data dari
serangan yang tidak sah. Ini termasuk enkripsi
data, autentikasi pengguna, dan pengaturan izin
akses.

MySQL memiliki banyak manfaat bagi pengguna


yang membutuhkan sistem basis data. Beberapa
manfaat tersebut antara lain:
1. Skalabilitas: MySQL dapat digunakan pada
berbagai skala proyek, dari proyek kecil hingga
besar. MySQL memiliki kemampuan untuk
mengelola data dalam jumlah besar dan dapat
dikembangkan sesuai kebutuhan.
2. Ketersediaan: MySQL bersifat open-source,
sehingga mudah didapatkan dan digunakan oleh
siapa saja. Selain itu, MySQL juga tersedia di

Database Rumpun Ilmu Komputer | 87


berbagai platform, termasuk Windows, Linux,
dan Mac OS.
3. Performa yang cepat: MySQL dikembangkan
dengan teknologi indexing dan caching yang
efisien sehingga dapat menghasilkan performa
yang cepat dalam mengakses data.
4. Keamanan: MySQL menyediakan berbagai fitur
keamanan untuk melindungi data, termasuk
otentikasi pengguna dan otorisasi akses. Selain
itu, MySQL juga dapat dikonfigurasi untuk
menggunakan enkripsi data untuk menjaga
kerahasiaan informasi.
5. Mudah digunakan: MySQL memiliki antarmuka
yang mudah digunakan dan dipahami oleh
pengguna, sehingga memudahkan pengguna
dalam membuat dan mengelola basis data.

MySQL adalah salah satu sistem manajemen basis


data relasional open-source paling populer di dunia.
MySQL digunakan oleh berbagai jenis organisasi dan
aplikasi termasuk perusahaan kecil dan besar, aplikasi
web dan mobile, dan platform e-commerce. Beberapa
penggunaan MySQL antara lain:

88 | Konsep Dasar Pengenalan


1. Aplikasi Web: MySQL sering digunakan sebagai
sistem manajemen basis data untuk aplikasi
web seperti blog, forum, dan situs e-commerce.
2. Aplikasi Mobile: MySQL juga dapat digunakan
sebagai sistem manajemen basis data untuk
aplikasi mobile yang membutuhkan akses ke
data online seperti aplikasi mobile e-commerce.
3. Data Warehousing: MySQL dapat digunakan
sebagai sistem manajemen basis data untuk
data warehousing, yang dapat membantu
organisasi untuk menganalisis dan
memanipulasi data besar secara efisien.
4. Business Intelligence: MySQL dapat digunakan
sebagai sistem manajemen basis data untuk
business intelligence, yang memungkinkan
organisasi untuk membuat laporan dan analisis
data untuk membantu dalam pengambilan
keputusan bisnis.
5. IoT: MySQL dapat digunakan sebagai sistem
manajemen basis data untuk aplikasi IoT
(Internet of Things), yang memungkinkan
pengumpulan dan analisis data dari berbagai
perangkat yang terhubung ke internet.

Database Rumpun Ilmu Komputer | 89


6.2. Perintah-Perintah MySQL
Model data dalam MySQL mengacu pada struktur
tabel dan hubungan antara tabel dalam sebuah
database. MySQL mendukung berbagai model data
termasuk model data relasional dan model data NoSQL.
Model data relasional menggunakan tabel untuk
menyimpan data dengan setiap tabel mewakili suatu
objek atau entitas. Hubungan antara tabel didefinisikan
oleh kunci asing dan kunci utama, dan data dapat
dimanipulasi menggunakan perintah SQL seperti
SELECT, INSERT, UPDATE, dan DELETE.
Model data NoSQL menggunakan koleksi dokumen
atau data semi-struktur yang disimpan dalam format
JSON atau BSON. MySQL mendukung model data NoSQL
melalui fitur seperti memori JSON dan fitur NoSQL yang
terintegrasi seperti memori NDB dan Cluster NDB.
Selain itu, MySQL juga mendukung model data hierarkis
melalui fitur XML dan model data spasial melalui fitur
spasial.
MySQL memiliki banyak perintah yang dapat
digunakan untuk membuat, mengelola, dan mengakses
basis data relasional. Beberapa perintah MySQL yang
umum digunakan antara lain:
1. CREATE DATABASE: digunakan untuk membuat
basis data baru.

90 | Konsep Dasar Pengenalan


2. CREATE TABLE: digunakan untuk membuat
tabel di dalam basis data.
3. INSERT INTO: digunakan untuk menyisipkan
data baru ke dalam tabel.
4. SELECT: digunakan untuk memilih data dari
tabel.
5. UPDATE: digunakan untuk memperbarui data di
dalam tabel.
6. DELETE: digunakan untuk menghapus data dari
tabel.
7. ALTER TABLE: digunakan untuk mengubah
struktur tabel, seperti menambahkan kolom
atau mengubah tipe data kolom.
8. JOIN: digunakan untuk menggabungkan data
dari dua tabel atau lebih.
9. INDEX: digunakan untuk membuat indeks pada
kolom tertentu untuk meningkatkan performa
query.
10. GRANT: digunakan untuk memberikan hak
akses ke basis data atau tabel.

Berikut ini adalah beberapa best practice dalam


menggunakan MySQL:
1. Gunakan indeks pada kolom yang sering diakses
dalam query agar query menjadi lebih cepat.

Database Rumpun Ilmu Komputer | 91


Namun, jangan terlalu banyak membuat indeks
karena ini dapat memperlambat penambahan
data ke dalam tabel.
2. Gunakan jenis tipe data yang sesuai untuk
kolom di tabel. Hal ini dapat menghemat ruang
penyimpanan dan meningkatkan performa
query.
3. Gunakan parameter yang aman dalam query
untuk mencegah serangan SQL injection.
4. Batasi hak akses pengguna MySQL hanya untuk
apa yang diperlukan. Jangan memberikan hak
akses yang tidak perlu.
5. Gunakan backup dan restore secara teratur
untuk mencegah kehilangan data dan
memulihkan database dalam keadaan darurat.
6. Lakukan tuning MySQL secara teratur untuk
meningkatkan performa dan memastikan
bahwa MySQL berjalan dengan baik.
7. Hindari penggunaan SELECT * karena dapat
memperlambat query dan membebani server.
8. Gunakan transaksi dalam operasi yang
memerlukan beberapa langkah, seperti
memperbarui beberapa tabel dalam satu query.
9. Gunakan pengelolaan caching yang baik untuk
meningkatkan performa.

92 | Konsep Dasar Pengenalan


Keamanan MySQL sangat penting untuk
melindungi data sensitif dan mencegah akses yang tidak
sah. Beberapa cara untuk meningkatkan keamanan
MySQL antara lain:
1. Menggunakan kata sandi yang kuat: Gunakan
kata sandi yang panjang, kompleks, dan tidak
mudah ditebak.
2. Menggunakan hak akses yang tepat: Berikan hak
akses yang sesuai untuk setiap pengguna,
misalnya hak akses hanya untuk membaca atau
hanya untuk menulis.
3. Memperbarui keamanan sistem: Pastikan sistem
operasi, aplikasi, dan MySQL selalu diperbarui
dengan versi terbaru yang mengatasi
kerentanan keamanan.
4. Menggunakan koneksi SSL: Koneksi SSL (Secure
Sockets Layer) dapat melindungi data saat
dikirimkan melalui jaringan.
5. Mengenkripsi data: Gunakan enkripsi untuk
melindungi data sensitif, seperti data kredit atau
data pribadi.
6. Membatasi akses jaringan: Batasi akses ke
server MySQL hanya untuk pengguna yang
diperlukan dan batasi akses jaringan hanya dari
jaringan yang dipercayai.

Database Rumpun Ilmu Komputer | 93


7. Memonitor aktivitas pengguna: Periksa log
aktivitas untuk mendeteksi dan mencegah akses
yang tidak sah atau aktivitas yang
mencurigakan.

94 | Konsep Dasar Pengenalan


BAB VII
OPERATOR

7.1. Pengantar Operator


Tidak jauh berbeda dengan bahasa pemrograman
lainnya, penggunaan dan pemanfaatan operator juga
penting untuk dipahami pada saat proses pembuatan
sebuah database. Pada hakikatnya operator – operator
yang digunakan pada pembuatan sebuah databasa
khususnya dengan MySQL hampir seluruhnya mengacu
terhadap operator matematis pada umumnya. Hanya
saja cara menuliskannya (sintak) saja yang sedikit
berbeda dari biasanya. Misal akan dilakukan
penjumlahan antara 3 dengan 2, maka pada MySQL
dapat dituliskan dengan cara sebagai berikut.
>mysql > select 3+2;

Secara umum telah diketahui operator yang


digunakan untuk melakukan penjumlahan di atas ialah
operator penjumlahan (+). Tetapi, jika menggunakan
MySQL terdapat penambahan perintah di depannya
yaitu SELECT. Demikianlah contoh sederhana
penggunaan operator dengan MySQL yang akan dibahas
Database Rumpun Ilmu Komputer | 95
pada bagian berikutnya. Namun sebelumnya terdapat
beberapa contoh operator pada MySQL, antara lain
operator aritmatika, operator logika, operator relasi
atau dikenal juga dengan bitwise operator, operator
pembanding atau comparison operator.
7.2. Operator Aritmatika
Jika ingin melakukan pengoperasian matematika
minimalnya dengan dua ungkapan dari satu atau
berbagai jenis data maka operator aritmatika dapat
dimanfaatkan. Adapun yang termasuk pada operator
aritmatika ditunjukkan pada tabel di bawah ini.
No Operator Keterangan
1 + Penambahan
2 - Pengurangan
3 * Perkalian
4 / Pembagian
5 % Modulus

Berikut ini merupakan cotoh penerapan operator


aritmatika pada MySQL.
a. Penambahan (+)

b. Pengurangan (−)

96 | Konsep Dasar Pengenalan


c. Perkalian (∗)

d. Pembagian (/)

e. Modulus (%)

7.3. Operator Relasi


Operator relasi sering disebut juga dengan bitwise
operator, yang mana operator ini biasa digunakan dan
dimanfaatkan untuk melakukan perbandingan atau
membandingkan sebuah nilai dengan nilai-nilai lainnya.
Tabel di bawah ini merupakan jenis - jenis dari operator
relasi.
No Operator Keterangan
1 = Sama dengan
2 > Lebih besar dari
3 < Lebih kecil dari
Database Rumpun Ilmu Komputer | 97
4 >= Lebih besar atau sama
dengan
5 <= Lebih kecil atau sama
dengan
6 <> Tidak sama dengan

Untuk lebih mudah memahaminya, berikut ini


merupakan contoh penggunaan dari masing – masing
operator relasi dengan menggunakan MySQL. Namun
sebelumnya disajikan sebuah tabel data yang dibuat
dengan MySQL yang berisi kode buku, judul buku,
satuan, dan harga sebagai berikut.

a. Sama Dengan (=)


Misalnya akan dipanggil sebuah buku dengan
kode buku BU021, maka dengan MySQL dapat
dituliskan sebagai berikut ini.
mysql> select * from daftar_harga_buku_online
where Kode_Buku =’BU021’;

98 | Konsep Dasar Pengenalan


Keterangan: daftar_harga_buku_online
merupakan nama database yang sedang
digunakan.
Maka akan tampil buku dengan judul Belajar
Website Mudah lengkap beserta satuan dan
harganya.

b. Lebih Besar Dari (>)


Melalui daftar harga buku online tersebut akan
dipanggil buku yang harganya lebih besar dari
50000. Maka pada MySQL dapat dituliskan
dengan cara di bawah ini.
mysql> select * from daftar_harga_buku_online
where Harga > 50000;
Sehingga daftar buku dengan harga di atas
50000 ditampilkan pada gambar di bawah ini.

c. Lebih Kecil Dari (<)


Database Rumpun Ilmu Komputer | 99
Penggunaan operator lebih kecil dari (<) sama
cara menuliskan sintaknya dengan operator
lebih besar dari (>). Hanya saja bedanya pada
simbol operatornya saja. Anggaplah akan
ditampilkan daftar buku yang harganya di
bawah 80000. Jika dilihat sepintas, akan ada
delapan judul buku. Namun untuk
membuktikannya dengan MySQL dapat
digunakan sintak untuk memanggil keperluan
tersebut dengan cara
mysql> select * from daftar_harga_buku_online
where Harga < 80000;

d. Lebih Besar atau Sama Dengan (>=)


Misalnya akan dilakukan pengecekan buku
mana saja yang harganya 55000 atau diatas
harga 55000. Maka penulisan sintak dalam hal
ini adalah
mysql>select * from daftar_harga_buku_online
where Harga >= 55000;

100 | Konsep Dasar Pengenalan


maka terdapat enam judul buku sesuai dengan
permintaan di atas yang ditampilkan pada
gambar di bawah ini.

e. Lebih Kecil atau Sama Dengan (<=)


Penulisan sintak pada bagian ini sama dengan
penulisan sintak operator sebelumnya. Hanya
saja perlu diperhatikan operator yang sedang
digunakan. Sama dengan kasus pada bagian (f)
namun harganya 55000 atau dibawahnya.
mysql>select * from daftar_harga_buku_online
where Harga <= 55000;
sehingga ada lima judul buku yang memenuhi
syarat yang ditunjukkan pada hasil berikut ini.

f. Tidak Sama Dengan (< >)

Database Rumpun Ilmu Komputer | 101


Pada bagian ini akan ditampilkan judul – judul
buku yang mana harganya tidak sama dengan
55000. Adapun penulisan sintaknya ialah
mysql>select * from daftar_harga_buku_online
where Harga < > 55000;
dengan sangat jelas bahwa terdapat sembilan
judul buku yang tidak sama harganya dengan
ketentuan di atas.

7.4. Operator Logika


Jika kita belajar tentang tipe data Boolean, maka
erat kaitannya dengan operator logika. Hal ini
disebakan karena operator logika hanya mengenal tiga
nilai luaran, antara lain true, false, dan unknown.
Sehingga operator logika pada dasarnya dapat
dimanfaatkan ke seluruh ekspresi kecuali jenis data
yang diekspresikan berupa gambar, text, dan ntext.
Maka dengan kata lain, operator logika digunakan
sebagai cara untuk membandingkan dua buah nilai
102 | Konsep Dasar Pengenalan
dengan tujuan untuk mengetahui apakah nilai – nilai
tersebut sama.
Jenis-jenis dari operator logika beserta notasinya
ditunjukkan pada tabel di bawah ini.
No Operator Notasi
1 AND &&
2 OR ||
3 NOT !

Fungsi dari tiga jenis operator logika tersebut


diimplementasikan ke dalam sintak dengan MySQL
untuk lebih mudah memahaminya. Perhatikanlah tabel
barang yang telah dibuat dengan MySQL

a. AND (&&)
Jika mengacu pada syarat dari operator AND
(&&) maka hasil akan bernilai benar jika
terdapat dua kondisi yang bernilai benar juga.

Database Rumpun Ilmu Komputer | 103


Hal ini dapat diperjelas dengan memahami tabel
kebenaran dari AND (&&).
Kondisi ke-1 Kondisi ke-2 Hasil
0 0 0
0 1 0
1 0 0
1 1 1
Contoh kasus berdasarkan tabel barang akan
dilakukan pemilihan barang berdasarkan satuan
dan harga sebesar 5000 atau dibawahnya
dengan sintak sebagai berikut. Artinya, tidak
akan ada barang yang ditampilkan kecuali
barang yang memenuhi kondisi tersebut.
mysql>select * from tabel_barang where Satuan =
‘Bungkus’ and Harga <= 5000;
atau
mysql>select * from tabel_barang where Satuan =
‘Bungkus’ && Harga <= 5000;
maka Rinso, Sasa, dan Lilin masuk ke dalam
kategori yang telah ditentukan sebelumnya.

104 | Konsep Dasar Pengenalan


b. OR (||)
Operator OR (||) berfungsi untuk menyatakan
sebuah kondisi yang mana apabila salah satu
kondisi benar maka hasilnya akan benar, namun
jika semua kondisi salah maka hasilnya akan
salah. Fakta ini diperkuat dengan tabel
kebenaran dari operator OR (||) di bawah ini.
Kondisi ke-1 Kondisi ke-2 Hasil
0 0 0
0 1 1
1 0 1
1 1 1
Untuk memperjelas pernyataan berdasarkan
tabel kebenaran di atas akan dilakukan
pemanggilan data dari tabel barang. Syaratnya
adalah barang dengan satuan botol atau harga
barang 3000 atau lebih. Adapun sintaknya
adalah
mysql>select * from tabel_barang where Satuan =
‘Botol’ or Harga >= 3000;
atau
mysql>select * from tabel_barang where Satuan =
‘Botol’ || Harga >= 3000;

Database Rumpun Ilmu Komputer | 105


Berdasarkan hasil yang ditampilkan terdapat
barang dengan satuan yang lain. Hal ini terjadi
karena disebabkan oleh penggunaan operator
OR (||) yang mewajibkan jenis barang dengan
harga 3000 atau lebih ditampilkan dengan kata
lain ikut digenerate.
c. NOT (!)
Operator NOT (!) bertugas untuk membalikkan
keadaan. Misal, jika nilai masukan adalah
kaleng, maka hasilnya bukan kaleng. Keadaan
ini diperjelas dengan tabel kebenaran dari
operator NOT (!).
Masukan Luaran
1 0
0 1
Adapun sintak sederhananya ialah sebagai
berikut.
mysql>select * from tabel_barang where Satuan
!= ‘Kaleng;

106 | Konsep Dasar Pengenalan


Maka aka ditampilkan seluruh jenis barang yang
satuannya bukan kaleng.

7.5. Operator Pembanding


Pada dasarnya fungsi operator pembanding hampir
mirip dengan operator logika. Adapun yang termasuk
ke dalam operator pembanding ditunjukkan pada tabel
di bawah ini. Kemudian untuk masing – masing dari
operator pembanding dijelaskan secara detail pada
bagian selanjutnya.
No Operator Keterangan
1 IN Menentukan apakah sebuah nilai
terdapat di dalam pilihan terdaftar
2 BETWEEN Menentukan apakah sebuah nilai
berada diantara dua syarat batas
3 NOT IN Sebuah nilai tidak terdaftar pada
pilihan yang tersedia
4 LIKE Sebuah nilai cocok dengan kriteria
yang diinginkan

Database Rumpun Ilmu Komputer | 107


5 NOT LIKE Sebuah nilai tidak cocok dengan
kriteria yang diinginkan
6 IS NULL Menentukan apakah sebuah nilai
ialah NULL
7 IS NOT Menentukan apakah sebuah nilai
NULL adalah tidak tergolong NULL

a. IN
Operator IN secara praktek hasil yang akan
ditampilkan hanya berdasarkan syarat yang
ditentukan. Perhatikanlah hasil dari
penggunaan operator IN berikut ini dengan
mengacu terhadap data yang berada pada tabel
barang sebelumnya.
mysql>select * from tabel_barang where Satuan
in (‘Botol’);
Berdasarkan sintak di atas, maka hasilnya ialah
hanya barang dengan satuan botol yang akan
terbaca.

b. BETWEEN
Sesuai dengan yang didefenisikan pada tabel
operator pembanding bahwa operator

108 | Konsep Dasar Pengenalan


BETWEEN akan membaca nilai yang berada dua
buah kondisi. Operator ini juga hampir mirip
dengan operator lebih besar atau sama dengan.
Untuk mempermudah pemahaman mengenai
hal ini, perhatikanlah sintak berikut ini.
mysql>select * from tabel_barang where Harga
between 2000 and 6000 ;

Maka hasil yang ditampilkan sesuai harga


barang yang diberi syarat dengan harga
diantara 2000 dan 6000. Artinya terdapat batas
bawah yaitu 2000 dan batas atas adalah 6000.
c. NOT IN
Jika pada operator IN nilai yang termasuk ke
dalam syarat yang diberikan akan terbaca dan
ditampilkan, maka operator NOT IN akan
membaca nilai yang bukan berada pada syarat
yang ditentukan. Misal pada operator IN telah
ditampilkan seluruh barang yang mempunya
satuan botol, maka pada kasus ini akan dicoba
untuk menampilkan barang yang satuannya
bukan botol.

Database Rumpun Ilmu Komputer | 109


mysql>select * from tabel_barang where Satuan
not in (‘Botol’);

d. LIKE
Operator like berfungsi untuk mempercepat
pencarian data yang kemungkinan kata dasar
dari suatu data sama namun kata selanjutnya
berbeda. Misal antara sabun dove, sabun cuci
piring. Selain itu dapat mencari data yang
didalamnya terdapat huruf yang diinginkan,
misalnya huruf ‘a’. Maka nantinya akan
ditampilkan seluruh data yang mengandung
huruf tersebut.
mysql>select * from tabel_barang where
Nama_Barang like ‘%a%’;

e. NOT LIKE

110 | Konsep Dasar Pengenalan


Operator NOT LIKE fungsinya terbalik dengan
operator LIKE. Perhatikanlah contoh di bawah
ini.
mysql>select * from tabel_barang where
Nama_Barang not like ‘%a%’;

Sehingga berdasarkan hasil tersebut jelas


terlihat bahwa hanya barang yang tidak
mengandung huruf ‘a’ yang akan dibaca.
f. IS NULL
Untuk mengecek apakah nilai dari sebuah data
pada tabel barang sebelumnya terdapat nilai
yang kosong namun bukan nol, maka dapat
dilakukan dengan menggunakan operator IS
NULL.
mysql>select * from tabel_barang
→ where Satuan is null;
Maka terdapat data yang kosong namun pada
dasarnya dapat diberikan nilai seperti yang
ditunjukkan gambar berikut ini.

Database Rumpun Ilmu Komputer | 111


g. IS NOT NULL
Jika pada operator IS NULL digunakan untuk
memeriksa nilai yang kosong, maka operator IS
NOT NULL dimanfaatkan untuk mengoreksi
nilai yang tidak kosong.
mysql>select * from tabel_barang
→ where Satuan is not null;

Berdasarkan hasil di atas barang – barang


tersebut tidak boleh kosong, artinya wajib diisi
kecuali Aqua.

112 | Konsep Dasar Pengenalan


BAB VIII
PERCABANGAN

8.1. Pengertian Percabangan Database


Percabangan database merupakan sebuah konsep
dalam pemrosesan data yang memecah data ke dalam
beberapa kelompok berdasarkan suatu kriteria
tertentu. Konsep ini digunakan untuk mengoptimalkan
performa database dan memudahkan proses
pengolahan data.
Percabangan database dapat dilakukan dengan
berbagai teknik, seperti partitioning, indexing, dan
clustering. Teknik partitioning membagi tabel besar
menjadi beberapa bagian kecil berdasarkan kriteria
tertentu, seperti tanggal atau lokasi. Teknik indexing
membuat indeks pada kolom tertentu dalam tabel
untuk mempercepat proses pencarian data. Sedangkan
teknik clustering mengelompokkan data dengan
karakteristik yang sama ke dalam satu area
penyimpanan yang sama Dengan melakukan
percabangan database, data dapat diolah dengan lebih
efektif dan efisien, karena hanya data yang relevan yang
Database Rumpun Ilmu Komputer | 113
akan diproses. Hal ini dapat menghemat waktu dan
sumber daya yang diperlukan dalam pemrosesan data.
Percabangan database mengacu pada proses
memecah data ke dalam beberapa kelompok
berdasarkan suatu kriteria tertentu. Konsep
percabangan ini sering digunakan dalam pemrosesan
data dan pengambilan keputusan. Dengan melakukan
percabangan, data dapat diolah dengan lebih efektif dan
efisien.
Contoh sederhana penggunaan percabangan
database adalah pada tabel pelanggan sebuah toko
online. Data pelanggan dapat dipisahkan berdasarkan
negara atau wilayah pengiriman, jenis produk yang
dibeli, atau lainnya. Dengan demikian, proses
pengolahan data dapat dilakukan dengan lebih mudah
dan efisien. Selain itu, percabangan database juga dapat
digunakan untuk mengoptimalkan performa database.
Misalnya, dengan menggunakan teknik partitioning,
tabel besar dapat dibagi menjadi beberapa bagian kecil
berdasarkan kriteria tertentu, seperti tanggal atau
lokasi. Hal ini dapat meningkatkan performa dalam
proses pengolahan data.
Berikut adalah beberapa jenis percabangan
database yang umum digunakan:

114 | Konsep Dasar Pengenalan


a. Horizontal partitioning Jenis percabangan ini
membagi data ke dalam beberapa partisi
horizontal berdasarkan baris atau rekord yang
memiliki kriteria tertentu, seperti tanggal atau
lokasi. Tujuan dari horizontal partitioning
adalah untuk mempercepat proses pencarian
data dan memudahkan manajemen data.
b. Vertical partitioning Jenis percabangan ini
membagi data ke dalam beberapa partisi
vertikal berdasarkan kolom yang memiliki
kriteria tertentu, seperti tipe data atau
kebutuhan bisnis. Tujuan dari vertical
partitioning adalah untuk mengurangi
redundansi data dan meningkatkan performa
database.
c. Hybrid partitioning Jenis percabangan ini
merupakan gabungan dari horizontal
partitioning dan vertical partitioning, di mana
data dibagi menjadi beberapa partisi horizontal
dan vertikal secara bersamaan. Tujuan dari
hybrid partitioning adalah untuk mencapai
manfaat dari kedua jenis percabangan tersebut.
d. Range partitioning Jenis percabangan ini
membagi data ke dalam beberapa partisi
berdasarkan range nilai yang dimiliki oleh suatu

Database Rumpun Ilmu Komputer | 115


kolom, seperti range tanggal atau range harga.
Tujuan dari range partitioning adalah untuk
mempercepat proses pencarian data yang
memiliki nilai dalam range tertentu.
e. Hash partitioning Jenis percabangan ini
membagi data ke dalam beberapa partisi
berdasarkan hash value dari suatu kolom.
Tujuan dari hash partitioning adalah untuk
mempercepat proses pencarian data dan
memudahkan manajemen data.

Beberapa manfaat dari percabangan database


antara lain:
1. Meningkatkan performa database Dengan
membagi data ke dalam beberapa partisi, proses
pencarian dan manipulasi data dapat dilakukan
lebih cepat. Hal ini dapat meningkatkan
performa database secara keseluruhan.
2. Mempercepat proses backup dan restore
Dengan menggunakan percabangan database,
backup dan restore data dapat dilakukan pada
bagian-bagian tertentu dari database, sehingga
proses ini dapat dilakukan lebih cepat.
3. Meningkatkan skalabilitas Dengan membagi
data ke dalam beberapa partisi, database dapat

116 | Konsep Dasar Pengenalan


dengan mudah di-scaling secara horizontal atau
vertikal, tergantung pada jenis percabangan
yang digunakan.
4. Memudahkan manajemen data Dengan
menggunakan percabangan database,
manajemen data dapat dilakukan lebih efektif
dan efisien. Misalnya, data yang sudah tidak
digunakan lagi dapat dengan mudah dihapus
dari database.
5. Meningkatkan keamanan data Dengan membagi
data ke dalam beberapa partisi, risiko
kehilangan data dapat dikurangi. Jika terjadi
kerusakan pada satu partisi, data pada partisi
lainnya masih dapat diselamatkan.

8.2. Penggunaan Percabangan Database


Salah satu contoh penggunaan percabangan
database dalam pemrosesan data adalah pada aplikasi
e-commerce. Sebuah aplikasi e-commerce akan
memiliki banyak data produk, seperti nama produk,
harga, gambar, deskripsi, dan lain-lain. Dalam hal ini,
percabangan database dapat digunakan untuk
mempartisi data produk berdasarkan kategori atau
jenis produk.

Database Rumpun Ilmu Komputer | 117


Misalnya, aplikasi e-commerce tersebut memiliki
kategori produk "elektronik", "fashion","olahraga", dan
"makanan". Data produk dapat dipartisi ke dalam
empat partisi berbeda, satu partisi untuk setiap
kategori produk. Dalam hal ini, pencarian data produk
pada setiap partisi akan lebih cepat dan efisien karena
data produk pada setiap partisi akan lebih sedikit.
Selain itu, jika terdapat penambahan kategori produk
baru, maka hanya perlu membuat partisi baru untuk
kategori tersebut tanpa harus memodifikasi partisi lain.
Hal ini memudahkan manajemen data dan pembaruan
aplikasi.
Teknik partitioning adalah teknik mempartisi data
dalam sebuah tabel menjadi beberapa bagian atau
partisi yang lebih kecil berdasarkan kriteria tertentu
seperti range nilai, wilayah geografis, atau kategori
data. Partisi-partisi ini kemudian dapat dikelola secara
terpisah dalam sebuah database. Penggunaan teknik
partitioning dalam percabangan database memiliki
beberapa keuntungan, di antaranya:
1. Mempercepat kinerja database Dengan
membagi data menjadi beberapa partisi,
pencarian data pada database dapat dilakukan
secara paralel dan hanya pada bagian data yang
dibutuhkan. Hal ini dapat mempercepat kinerja

118 | Konsep Dasar Pengenalan


database karena hanya perlu mencari pada
bagian data yang relatif lebih kecil.
2. Memudahkan manajemen data Partisi-partisi
data yang terpisah dapat dikelola secara
terpisah pula, sehingga memudahkan dalam hal
perawatan, backup, dan recovery data.
3. Meningkatkan skabilitas database Dalam
lingkungan bisnis yang berkembang pesat,
database seringkali harus menangani jumlah
data yang semakin besar. Dengan menggunakan
teknik partitioning, database dapat diatur
sedemikian rupa sehingga dapat meningkatkan
skalabilitas database dalam mengelola jumlah
data yang besar.

Beberapa teknik partitioning yang umum


digunakan dalam percabangan database adalah:
1. Range partitioning Teknik ini membagi data
berdasarkan range nilai tertentu, misalnya
rentang tanggal, nilai numerik, atau alfabet.
Contohnya, sebuah tabel penjualan dapat
dipartisi berdasarkan rentang tanggal transaksi.
2. List partitioning Teknik ini membagi data
berdasarkan nilai-nilai tertentu dalam kolom
tertentu, misalnya kolom kategori produk.

Database Rumpun Ilmu Komputer | 119


Contohnya, sebuah tabel produk dapat dipartisi
berdasarkan kategori produk seperti elektronik,
fashion, atau makanan.
3. Hash partitioning Teknik ini membagi data
berdasarkan hash value dari nilai tertentu dalam
kolom tertentu. Hash value tersebut kemudian
digunakan untuk menentukan partisi mana yang
akan digunakan untuk menyimpan data.
Contohnya, sebuah tabel pelanggan dapat
dipartisi berdasarkan hash value dari nomor ID
pelanggan.

Percabangan database di MySQL dapat dilakukan


dengan menggunakan fitur "Branching" di Git. Dalam
hal ini, Anda dapat melakukan branch pada repository
Git Anda, dan kemudian melakukan checkout ke branch
tersebut untuk melakukan perubahan pada database.
Untuk melakukan branching pada repository Git,
Anda dapat menggunakan perintah berikut pada
terminal:
git branch <nama_branch>
Setelah melakukan branching, Anda dapat
melakukan checkout ke branch tersebut dengan
perintah:
git checkout <nama_branch>

120 | Konsep Dasar Pengenalan


Setelah melakukan checkout, Anda dapat
melakukan perubahan pada database dan melakukan
commit dengan perintah:
git add .
git commit -m "pesan_commit"
Untuk kembali ke branch utama, Anda dapat
menggunakan perintah:
git checkout master
Untuk menggabungkan perubahan pada branch
dengan branch utama, Anda dapat menggunakan
perintah:
git merge <nama_branch>

8.3. Kelebihan dan Kekurangan Percabangan


Database
Kelebihan dan kekurangan percabangan database
adalah sebagai berikut:
Kelebihan:
1. Mengurangi konflik saat pengembangan
aplikasi. Dengan melakukan percabangan
database, pengembang dapat melakukan
perubahan pada database tanpa harus
mempengaruhi versi utama yang sedang
digunakan oleh pengguna.

Database Rumpun Ilmu Komputer | 121


2. Meningkatkan efisiensi pengembangan. Dalam
percabangan database, pengembang dapat
membuat cabang baru untuk melakukan
eksperimen dan pengujian tanpa harus
mempengaruhi versi utama.
3. Meningkatkan kontrol versi. Percabangan
database memungkinkan pengembang untuk
memiliki kontrol yang lebih baik terhadap
perubahan yang terjadi pada database, sehingga
memudahkan dalam memantau setiap
perubahan yang dilakukan.

Kekurangan:
1. Memerlukan pengelolaan yang lebih rumit.
Pengelolaan cabang-cabang database dapat
menjadi lebih sulit dan memerlukan
pemahaman yang lebih dalam terhadap sistem
manajemen basis data.
2. Memerlukan sumber daya yang lebih banyak.
Percabangan database dapat memakan ruang
penyimpanan yang lebih besar dan memerlukan
sumber daya komputer yang lebih kuat.
3. Memerlukan koordinasi yang lebih baik. Jika
beberapa orang bekerja pada cabang-cabang
yang berbeda, perlu dilakukan koordinasi yang

122 | Konsep Dasar Pengenalan


lebih baik untuk memastikan bahwa semua
perubahan terintegrasi dengan baik pada versi
utama.

Percabangan dalam database mengacu pada


kemampuan untuk membuat pilihan antara beberapa
jalur dalam sebuah skenario atau proses bisnis yang
melibatkan manipulasi data. Tantangan dalam
percabangan database adalah bagaimana membuat
struktur database yang fleksibel sehingga dapat
menangani percabangan tanpa memerlukan banyak
pemeliharaan atau modifikasi.
Salah satu tantangan dalam percabangan database
adalah mengoptimalkan kinerja sistem. Semakin
banyak cabang yang ada dalam percabangan, semakin
kompleks sistem menjadi. Oleh karena itu, perlu
dipikirkan bagaimana mengorganisir dan mengelola
data dengan cara yang efisien agar sistem tetap berjalan
dengan cepat dan lancar.
Tantangan lainnya adalah kesulitan dalam
merancang skema basis data yang memungkinkan
untuk melakukan percabangan. Terkadang, proses
bisnis yang melibatkan percabangan dapat sangat
kompleks dan sulit untuk diimplementasikan dalam
skema basis data yang sederhana. Oleh karena itu, perlu

Database Rumpun Ilmu Komputer | 123


dipikirkan dengan matang tentang bagaimana struktur
basis data dapat dirancang untuk mengakomodasi
percabangan yang diperlukan.
Ada beberapa solusi yang dapat diterapkan untuk
mengatasi tantangan percabangan database:
a. Menggunakan teknik normalisasi basis data
untuk meminimalkan redundansi dan
meningkatkan efisiensi. Normalisasi dapat
membantu memperjelas struktur basis data
sehingga dapat lebih mudah dikelola dan
dioptimalkan.
b. Menggunakan alat dan teknologi terbaru dalam
pengelolaan basis data, seperti database
berbasis cloud dan teknologi Big Data. Ini dapat
membantu meningkatkan fleksibilitas dan
skalabilitas sistem untuk mengakomodasi
percabangan yang kompleks.
c. Menggunakan teknik pengkodean yang tepat
untuk memastikan struktur basis data yang
fleksibel dan mudah dikelola. Ini dapat
mencakup penggunaan bahasa pemrograman
yang tepat dan penggunaan metodologi
pengembangan yang sesuai.
d. Merancang basis data dengan benar dari awal,
dengan mempertimbangkan berbagai

124 | Konsep Dasar Pengenalan


kemungkinan percabangan dalam proses bisnis
yang akan dilakukan. Ini dapat membantu
meminimalkan perubahan yang perlu dilakukan
di masa depan dan meningkatkan efisiensi
sistem secara keseluruhan.
e. Menggunakan pola desain basis data yang
fleksibel seperti pola "EAV" (Entity-Attribute-
Value) atau pola "Class Table Inheritance" yang
memungkinkan untuk menambahkan atau
mengubah percabangan tanpa merusak struktur
basis data yang sudah ada.
f. Menggunakan teknologi database modern
seperti NoSQL atau Graph Database yang dapat
menangani percabangan dengan mudah dan
efisien.
g. Memiliki sistem manajemen basis data yang
canggih seperti Oracle atau Microsoft SQL
Server yang dapat mengoptimalkan kinerja
sistem dalam menangani percabangan yang
kompleks.
h. Memiliki tim yang terampil dalam merancang
dan mengelola basis data yang kompleks,
sehingga dapat membuat solusi yang efektif dan
efisien dalam menangani percabangan.

Database Rumpun Ilmu Komputer | 125


Studi kasus penggunaan percabangan database
dalam industri adalah pada sistem manajemen
inventaris dan produksi. Dalam industri manufaktur,
sistem manajemen inventaris dan produksi harus
mampu menangani percabangan seperti perubahan
produk, perubahan desain, dan variasi spesifikasi
produk yang dapat mempengaruhi rantai pasokan dan
produksi.
Penggunaan percabangan database dalam industri
ini dapat ditemukan pada perusahaan otomotif seperti
Toyota yang menggunakan sistem produksi Just In Time
(JIT). Sistem JIT membutuhkan manajemen inventaris
yang sangat ketat, sehingga setiap perubahan dalam
produksi atau persediaan bahan baku harus segera
diakomodasi. Dalam hal ini, penggunaan percabangan
dalam basis data memungkinkan manajemen inventaris
dan produksi untuk memproses informasi dengan cepat
dan akurat.
Contoh lainnya ialah penggunaan percabangan
database dalam industri adalah dalam sistem
manajemen rantai pasok (supply chain management).
Dalam sistem ini, terdapat percabangan dalam proses
bisnis yang terkait dengan manajemen stok, pengiriman
barang, dan pembayaran kepada supplier. Setiap

126 | Konsep Dasar Pengenalan


percabangan dalam proses bisnis tersebut memerlukan
manipulasi data yang berbeda.
Sebagai contoh, pada proses manajemen stok,
terdapat percabangan yang terkait dengan jumlah stok
minimum yang harus disimpan, perhitungan jumlah
stok yang dibutuhkan untuk memenuhi permintaan
pelanggan, dan proses pembelian bahan baku. Setiap
percabangan tersebut memerlukan data yang berbeda
dan proses yang berbeda dalam sistem manajemen
rantai pasok.

Database Rumpun Ilmu Komputer | 127


128 | Konsep Dasar Pengenalan
BAB IX
VIEW

9.1. Pengertian database view


Database view atau tampilan database adalah
sebuah fitur pada sistem manajemen basis data (DBMS)
yang memungkinkan pengguna untuk melihat data yang
terorganisir dalam tabel atau kumpulan tabel dengan
cara yang berbeda tanpa mengubah struktur atau isi
data dasar. Dalam konteks ilmu komputer, database
view sering digunakan untuk mengurangi kompleksitas
pengaksesan dan analisis data dengan
menyederhanakan tampilan data yang tersimpan di
dalam basis data. Pada dasarnya, database view
merupakan sebuah objek virtual yang terdiri dari
beberapa tabel yang dipilih dan diatur ulang sehingga
bisa ditampilkan dengan cara yang lebih spesifik dan
terkait dengan kebutuhan bisnis atau analisis data
tertentu. Database view sering digunakan untuk
memisahkan hak akses pengguna dengan memberikan
izin akses hanya pada tampilan data tertentu yang
disediakan, tanpa memberikan akses ke data asli yang

Database Rumpun Ilmu Komputer | 129


mendasarinya. Contoh penggunaan database view
dalam ilmu komputer adalah sebagai berikut:
Misalnya, sebuah perusahaan memiliki basis data
besar yang mencakup banyak tabel seperti tabel
karyawan, tabel produk, tabel penjualan, dan
sebagainya. Seorang analis bisnis ingin mengakses data
untuk menganalisis penjualan produk pada tahun
terakhir. Sebaliknya, dia tidak perlu melihat semua
kolom dan baris data yang ada di dalam tabel,
melainkan hanya beberapa kolom tertentu seperti
nama produk, tanggal penjualan, harga, dan jumlah
terjual.
Untuk membantu analis bisnis tersebut,
administrator basis data dapat membuat database view
yang hanya mencakup kolom-kolom tersebut dari tabel
penjualan dan produk. Analis bisnis kemudian dapat
mengakses database view ini sebagai sumber data
dalam aplikasi analisis bisnis tanpa harus mengakses
tabel dasar. Dengan demikian, analis bisnis hanya perlu
melihat data yang relevan dengan kebutuhannya,
sementara data asli tetap terlindungi.
Berikut adalah pengertian database view menurut
beberapa ahli:
1. Connolly dan Begg (2014) mengatakan bahwa
database view adalah "tampilan virtual dari

130 | Konsep Dasar Pengenalan


sebagian atau seluruh isi dari satu atau
beberapa tabel di database, yang biasanya
dibuat dengan menggabungkan atau
memproyeksikan kolom dari tabel yang terkait."
2. Elmasri dan Navathe (2016) menjelaskan
bahwa database view adalah "tampilan logis
dari sebagian atau seluruh data yang disimpan
dalam satu atau beberapa tabel dalam database.
View tidak memiliki data fisik mereka sendiri,
melainkan mempresentasikan data dari tabel
yang sesuai dalam database."
3. Coronel, Morris, dan Rob (2016) mengatakan
bahwa database view adalah "tampilan virtual
dari data yang ada di dalam satu atau beberapa
tabel di database. View adalah tabel virtual yang
tidak menyimpan data fisiknya sendiri, tetapi
hanya menampilkan data dari satu atau
beberapa tabel di database."

Secara umum, database view adalah tampilan logis


atau virtual dari data yang ada di dalam satu atau
beberapa tabel di database, yang memungkinkan
pengguna untuk melihat data dari cara yang berbeda
tanpa mengubah struktur atau isi data dasar.
9.2 Cara Membuat Database View

Database Rumpun Ilmu Komputer | 131


Berikut adalah langkah-langkah umum untuk
membuat database view pada sistem manajemen basis
data (DBMS):
a. Tentukan tabel yang akan digunakan untuk
membuat view.
b. Tentukan kolom-kolom yang akan ditampilkan
dalam view.
c. Tentukan kondisi atau kriteria untuk memfilter
data yang akan ditampilkan dalam view.
d. Buat perintah SQL untuk membuat view sesuai
dengan spesifikasi di atas.
e. Jalankan perintah SQL untuk membuat view
pada DBMS.

Contoh perintah SQL untuk membuat view pada


MySQL:
CREATE VIEW nama_view AS
SELECT kolom1, kolom2, kolom3
FROM nama_tabel
WHERE kondisi;

Perintah ini akan membuat view baru dengan


nama "nama_view" dan menampilkan kolom-kolom
"kolom1", "kolom2", dan "kolom3" dari tabel
"nama_tabel" yang memenuhi kondisi yang ditentukan.

132 | Konsep Dasar Pengenalan


Penting untuk diingat bahwa setiap DBMS memiliki
sintaksis SQL yang berbeda untuk membuat view, jadi
pastikan untuk mempelajari dokumentasi yang tepat
untuk DBMS yang digunakan.
Berikut adalah beberapa jenis database view:
1. Simple view: Simple view adalah view yang
hanya terdiri dari satu tabel dan hanya
menampilkan kolom tertentu dari tabel
tersebut. Simple view juga dapat digunakan
untuk membatasi hak akses pengguna terhadap
tabel utama.
2. Complex view: Complex view adalah view yang
terdiri dari beberapa tabel yang dihubungkan
oleh kunci asing (foreign key) dan dapat
menampilkan data dari beberapa tabel yang
berbeda.
3. Materialized view: Materialized view adalah
view yang menyimpan hasil pemrosesan data
yang dilakukan pada saat view dibuat.
Materialized view digunakan untuk
meningkatkan performa karena menghindari
pengambilan data secara langsung dari tabel
sumber.
4. Updatable view: Updatable view adalah view
yang memungkinkan pengguna untuk

Database Rumpun Ilmu Komputer | 133


mengubah data yang ditampilkan dalam view
dan menyimpan perubahan tersebut ke tabel
sumber.
5. Join view: Join view adalah view yang dibuat
dengan melakukan operasi join pada beberapa
tabel untuk menghasilkan satu tabel virtual.

9.2. Analisa Database View


Analisis database view pada komputer dapat
dilakukan untuk mengevaluasi kinerja database dan
memperbaiki struktur view yang sudah ada. Beberapa
hal yang dapat dianalisis dalam database view antara
lain:
1. Ketersediaan data: Analisis dapat dilakukan
untuk memastikan bahwa data yang
ditampilkan dalam view adalah data yang
relevan dan tepat. Selain itu, analisis dapat
dilakukan untuk memastikan bahwa data yang
dibutuhkan pengguna tersedia dalam view.
2. Konsistensi data: Analisis dapat dilakukan
untuk memastikan bahwa data yang
ditampilkan dalam view konsisten dengan data
yang disimpan dalam tabel sumber. Jika ada
ketidaksesuaian, maka perlu dilakukan
perbaikan pada struktur view.

134 | Konsep Dasar Pengenalan


3. Performa: Analisis dapat dilakukan untuk
memastikan bahwa view tidak menghambat
kinerja database. Misalnya, jika view
mengandung operasi join yang kompleks dan
membutuhkan banyak waktu untuk dijalankan,
maka perlu dipertimbangkan untuk membuat
materialized view.
4. Keamanan: Analisis dapat dilakukan untuk
memastikan bahwa pengguna hanya memiliki
akses ke data yang dibutuhkan dan memiliki
hak akses yang tepat pada view.

Penggunaan database view memiliki beberapa


keuntungan, di antaranya:
a. Menyederhanakan kompleksitas: Database view
memungkinkan pengguna untuk melihat dan
mengakses data dengan cara yang lebih
sederhana dan mudah dipahami, tanpa perlu
mengetahui kompleksitas tabel-tabel di
baliknya. Hal ini memudahkan pengguna dalam
mencari dan mengakses data yang dibutuhkan.
b. Meningkatkan keamanan: Database view
memungkinkan administrator database untuk
memberikan hak akses yang lebih terkontrol
pada pengguna. Misalnya, administrator dapat

Database Rumpun Ilmu Komputer | 135


membuat view yang hanya menampilkan data
tertentu, sehingga pengguna tidak dapat melihat
atau mengakses data yang tidak diizinkan.
c. Meningkatkan performa: Database view dapat
membantu meningkatkan performa query dan
kinerja database secara keseluruhan. Misalnya,
dengan membuat view yang sudah teroptimasi
dan menyediakan data yang sudah diproses,
pengguna dapat menghindari query-query yang
kompleks dan memakan waktu.
d. Menghemat ruang penyimpanan: Database view
dapat membantu menghemat ruang
penyimpanan pada database. Misalnya, dengan
membuat view yang hanya menampilkan data
tertentu, administrator dapat menghindari
penyimpanan data duplikat di beberapa tabel.
e. Memudahkan maintenance: Database view dapat
memudahkan maintenance pada struktur
database. Misalnya, jika ada perubahan pada
struktur tabel, administrator hanya perlu
memperbarui view yang berkaitan, tanpa perlu
mengubah aplikasi yang menggunakan view
tersebut.

136 | Konsep Dasar Pengenalan


9.3. Batasan penggunaan database view
Meskipun penggunaan database view memiliki
beberapa keuntungan, namun ada beberapa batasan
yang perlu diperhatikan, di antaranya:
1. Performa: Terkadang penggunaan database
view dapat mempengaruhi performa query dan
kinerja database secara keseluruhan. Hal ini
terjadi ketika view memiliki kompleksitas yang
tinggi atau ketika query yang digunakan pada
view sangat kompleks. Sebagai solusinya,
pengguna dapat mempertimbangkan untuk
menggunakan teknik indexing, denormalisasi,
atau query tuning untuk meningkatkan
performa.
2. Update data: Beberapa database view tidak
dapat diperbarui, terutama jika view tersebut
dibangun dengan menggunakan perintah
SELECT yang kompleks atau menggunakan
fungsi agregat. Selain itu, beberapa database
view juga memiliki batasan dalam hal operasi
INSERT, UPDATE, dan DELETE pada data. Oleh
karena itu, pengguna harus memeriksa terlebih
dahulu apakah view tersebut dapat diperbarui
atau tidak.

Database Rumpun Ilmu Komputer | 137


3. Kesesuaian data: Pengguna harus memastikan
bahwa data yang ditampilkan pada database
view selalu sesuai dengan data yang ada pada
tabel sumber. Jika terjadi kesalahan atau
ketidaksesuaian data, maka hasil query pada
view juga akan mengalami kesalahan
4. Penggunaan memori: Penggunaan database
view dapat mempengaruhi penggunaan memori
pada sistem, terutama jika view memiliki
kompleksitas yang tinggi atau jika terdapat
banyak pengguna yang mengakses view secara
bersamaan. Oleh karena itu, perlu dilakukan
monitoring dan tuning pada penggunaan
memori.
5. Keterbatasan dalam pemrosesan data: Beberapa
operasi pemrosesan data mungkin tidak dapat
dilakukan pada database view, seperti misalnya
operasi GROUP BY pada view yang memiliki
jumlah data yang sangat besar. Pengguna perlu
memeriksa terlebih dahulu apakah operasi
tersebut dapat dilakukan pada view atau tidak.

9.4. Batasan penggunaan database view


Database view dan tabel adalah dua konsep yang
berbeda dalam pengelolaan data dalam database. Tabel

138 | Konsep Dasar Pengenalan


merupakan objek dasar dalam database yang digunakan
untuk menyimpan data secara permanen, sementara
view adalah tabel virtual yang dibuat dari satu atau
lebih tabel dalam database.
Perbedaan antara database view dan tabel dapat
dirangkum sebagai berikut:
1. Tabel
a. Tabel merupakan objek dasar dalam database
dan digunakan untuk menyimpan data secara
permanen.
b. Setiap tabel terdiri dari satu set kolom dengan
jenis data tertentu, dan setiap baris di dalam
tabel mewakili satu entitas atau objek.
c. Tabel dapat dimodifikasi secara langsung oleh
pengguna dengan melakukan operasi insert,
update, dan delete.
2. View
a. View adalah tabel virtual yang dibuat dengan
menggabungkan data dari satu atau lebih tabel
dalam database.
b. View tidak memiliki data fisiknya sendiri dan
hanya menampilkan data dari tabel asli.
c. View biasanya digunakan untuk
menyederhanakan akses ke data dalam
database dan memungkinkan pengguna untuk

Database Rumpun Ilmu Komputer | 139


melihat data yang relevan dengan persyaratan
mereka.
d. Pengguna tidak dapat melakukan operasi insert,
update, dan delete pada view karena view tidak
memiliki data fisiknya sendiri.

Contoh penggunaan database view dalam bisnis


adalah sebagai berikut:
1. Memfasilitasi analisis data
Database view dapat digunakan untuk
memfasilitasi analisis data dalam bisnis. Sebagai
contoh, seorang manajer dapat membuat view
untuk menggabungkan data dari beberapa tabel
dalam database guna melihat trend penjualan
dalam periode tertentu. Dengan menggunakan
view ini, manajer dapat mengambil keputusan
bisnis yang lebih baik berdasarkan data yang
dianalisis.
2. Menyederhanakan akses ke data
View juga dapat digunakan untuk
menyederhanakan akses ke data dalam bisnis.
Sebagai contoh, seorang salesperson dapat
membuat view untuk menampilkan daftar
pelanggan baru dan data kontak pelanggan.
Dengan menggunakan view ini, salesperson

140 | Konsep Dasar Pengenalan


dapat dengan mudah mengakses dan
memperbarui informasi pelanggan tanpa perlu
mencari data yang relevan dalam tabel yang
berbeda.
3. Mengoptimalkan kinerja database
View dapat digunakan untuk mengoptimalkan
kinerja database dalam bisnis. Sebagai contoh,
jika beberapa pengguna membutuhkan data
yang sama, manajer dapat membuat view yang
mencakup data tersebut sehingga tidak perlu
mengambil data dari tabel yang sama secara
berulang-ulang. Dengan menggunakan view ini,
kinerja database dapat dioptimalkan dan waktu
akses ke data dapat dikurangi.

9.5. Cara Mengakses Database View Pada Berbagai


DBMS
Berikut adalah cara mengakses database view pada
beberapa DBMS:
1. MySQL Untuk mengakses database view pada
MySQL, Anda dapat menggunakan perintah
SELECT seperti saat mengakses tabel.
Perbedaannya adalah Anda harus menyertakan
nama view yang ingin diakses, bukan nama
tabel. Contohnya:

Database Rumpun Ilmu Komputer | 141


SELECT * FROM nama_view;
2. Microsoft SQL Server Untuk mengakses
database view pada Microsoft SQL Server, Anda
juga dapat menggunakan perintah SELECT.
Namun, Anda harus menyertakan skema dan
nama view yang ingin diakses. Contohnya:
SELECT * FROM
nama_skema.nama_view;
3. Oracle Pada Oracle, Anda dapat menggunakan
perintah SELECT untuk mengakses database
view. Namun, Anda harus menyertakan nama
pemilik view dan nama view itu sendiri.
Contohnya :
SELECT * FROM
nama_pemilik_view.nama_view;
4. PostgreSQL Untuk mengakses database view
pada PostgreSQL, Anda juga dapat
menggunakan perintah SELECT. Namun, seperti
pada Microsoft SQL Server, Anda harus
menyertakan skema dan nama view yang ingin
diakses. Contohnya:
SELECT * FROM
nama_skema.nama_view;

142 | Konsep Dasar Pengenalan


BAB X
TRIGGER

10.1. Pengertian Trigger Database


Trigger database adalah sebuah prosedur
otomatis yang diaktifkan oleh suatu event tertentu pada
suatu tabel atau view di dalam database. Event tersebut
bisa saja berupa operasi insert, update, atau delete pada
suatu baris data dalam tabel. Trigger ini digunakan
untuk melakukan tindakan tertentu secara otomatis
pada database, seperti memperbarui atau menghapus
data, saat suatu event tertentu terjadi.
Berikut adalah pengertian trigger database menurut
para ahli:
a. Menurut Ramez Elmasri dan Shamkant B.
Navathe, dalam buku "Fundamentals of
Database Systems", trigger database adalah
prosedur atau aturan yang ditetapkan pada
suatu database untuk dieksekusi secara
otomatis oleh sistem manajemen database
ketika terjadi suatu perubahan data pada tabel
atau relasi tertentu di dalam database.

Database Rumpun Ilmu Komputer | 143


b. Menurut Ramakrishnan dan Gehrke, dalam
buku "Database Management Systems", trigger
database adalah sebuah program kecil yang
dijalankan secara otomatis oleh sistem
manajemen database ketika terjadi perubahan
data pada suatu tabel atau relasi tertentu di
dalam database.
c. Menurut Connolly dan Begg, dalam buku
"Database Systems: A Practical Approach to
Design, Implementation, and Management",
trigger database adalah prosedur yang
dijalankan secara otomatis oleh sistem
manajemen database ketika suatu peristiwa
atau kejadian tertentu terjadi pada suatu tabel
atau relasi di dalam database.

10.2. Jenis-Jenis Trigger Database


Secara umum, terdapat dua jenis trigger database,
yaitu trigger row-level dan trigger statement-level.
Trigger row-level diaktifkan untuk setiap baris yang
terkena operasi insert, update, atau delete, sedangkan
trigger statement-level hanya diaktifkan satu kali untuk
setiap operasi insert, update, atau delete pada tabel
yang terkait. Penggunaan trigger database sangat
berguna untuk melakukan validasi data, melakukan

144 | Konsep Dasar Pengenalan


audit trail, dan mengotomatisasi tindakan tertentu pada
database. Namun, penggunaan trigger database juga
perlu diperhatikan dengan hati-hati agar tidak terjadi
konflik dengan tindakan manual atau prosedur lain
pada database.
Berikut ini adalah jenis-jenis trigger database:
a. Trigger Row-Level Trigger jenis ini diaktifkan
untuk setiap baris yang terkena operasi insert,
update, atau delete. Jadi, jika terdapat operasi
insert, update, atau delete pada 10 baris data
dalam tabel, maka trigger row-level akan
diaktifkan 10 kali.
b. Trigger Statement-Level Trigger jenis ini hanya
diaktifkan satu kali untuk setiap operasi insert,
update, atau delete pada tabel yang terkait. Jadi,
jika terdapat operasi insert, update, atau delete
pada 10 baris data dalam tabel, trigger
statement-level hanya akan diaktifkan satu kali.
c. Trigger Before Trigger jenis ini diaktifkan
sebelum operasi insert, update, atau delete
dilakukan pada tabel terkait.
d. Trigger After Trigger jenis ini diaktifkan setelah
operasi insert, update, atau delete dilakukan
pada tabel terkait.

Database Rumpun Ilmu Komputer | 145


e. Trigger Instead Of Trigger jenis ini
menggantikan operasi insert, update, atau
delete yang dilakukan pada tabel terkait. Dalam
trigger ini, pengguna dapat menentukan
tindakan tertentu yang akan dilakukan oleh
database sebagai pengganti operasi insert,
update, atau delete.

Setiap jenis trigger memiliki kegunaan dan


kondisi penggunaan yang berbeda-beda. Oleh karena
itu, sebelum membuat trigger pada database, penting
untuk memahami kondisi penggunaan dan jenis trigger
yang akan digunakan.

10.3. Kegunaan Trigger Database


Trigger database adalah objek pada sistem
manajemen database (DBMS) yang digunakan untuk
mengaktifkan tindakan atau perilaku otomatis pada
tabel atau view tertentu ketika suatu peristiwa terjadi
di database. Peristiwa tersebut bisa berupa insert,
update, atau delete pada tabel atau view.
Kegunaan trigger database adalah untuk
mempermudah dan mempercepat pemrosesan data di
dalam database. Dengan menggunakan trigger,
pengguna tidak perlu melakukan tindakan manual

146 | Konsep Dasar Pengenalan


secara berulang-ulang setiap kali terjadi perubahan
data pada tabel atau view. Sebagai contoh, jika sebuah
trigger diaktifkan ketika terjadi perubahan pada tabel
tertentu, maka trigger tersebut dapat melakukan
tindakan otomatis, seperti mengirimkan email,
memperbarui nilai kolom, atau menghapus data pada
tabel atau view lainnya.

10.4. Syarat dan Kondisi Trigger Database


Syarat dan kondisi trigger database dapat
bervariasi tergantung pada jenis sistem manajemen
database yang digunakan. Namun, secara umum,
beberapa syarat dan kondisi yang sering diperlukan
untuk membuat trigger database adalah sebagai
berikut:
a. Trigger hanya dapat dibuat pada tabel yang
sudah ada di dalam database.
b. Trigger hanya dapat digunakan untuk
mengakses atau memodifikasi data pada tabel
yang terkait dengan trigger tersebut.
c. Trigger hanya dapat dibuat oleh pengguna
dengan hak akses tertentu, seperti hak akses
pengguna database atau administrator database.
d. Setiap trigger harus memiliki nama yang unik di
dalam database.

Database Rumpun Ilmu Komputer | 147


e. Trigger harus memiliki logika atau perintah SQL
yang dijalankan ketika terjadi perubahan data
pada tabel terkait.

Berikut adalah contoh sintaks pembuatan trigger


database pada MySQL:
CREATE TRIGGER nama_trigger
AFTER INSERT ON nama_tabel
FOR EACH ROW
BEGIN
-- logika atau perintah SQL untuk memproses
data
END;

Contoh Implementasi Trigger Database


Misalkan kita memiliki tabel "pelanggan" dan
tabel "transaksi", di mana setiap kali terjadi
penambahan data pada tabel "transaksi", kita ingin
memperbarui poin pelanggan di tabel "pelanggan"
berdasarkan jumlah transaksi yang dilakukan oleh
pelanggan tersebut.
Buat tabel "pelanggan" dengan struktur sebagai
berikut:
CREATE TABLE pelanggan (
id_pelanggan INT PRIMARY KEY,

148 | Konsep Dasar Pengenalan


nama_pelanggan VARCHAR(50),
poin_pelanggan INT
);
Buat tabel "transaksi" dengan struktur sebagai
berikut:
CREATE TABLE transaksi (
id_transaksi INT PRIMARY KEY,
id_pelanggan INT,
jumlah_transaksi INT
);
Buat trigger "update_poin_pelanggan" untuk
memperbarui poin pelanggan di tabel
"pelanggan" setiap kali terjadi penambahan data
pada tabel "transaksi":
CREATE TRIGGER update_poin_pelanggan
AFTER INSERT ON transaksi
FOR EACH ROW
BEGIN
UPDATE pelanggan
SET poin_pelanggan = poin_pelanggan +
NEW.jumlah_transaksi
WHERE id_pelanggan = NEW.id_pelanggan;
END;

Database Rumpun Ilmu Komputer | 149


Dalam contoh di atas, trigger
"update_poin_pelanggan" akan dijalankan secara
otomatis setiap kali terjadi penambahan data pada tabel
"transaksi". Trigger tersebut akan mengupdate
poin_pelanggan pada tabel "pelanggan" berdasarkan
jumlah_transaksi yang baru ditambahkan pada tabel
"transaksi" oleh pelanggan yang bersangkutan.

10.5. Keuntungan dan Kerugian Menggunakan


Trigger Database
Berikut adalah keuntungan dan kerugian
menggunakan trigger database:
Keuntungan:
a. Otomatisasi: Trigger database memungkinkan
otomatisasi dalam database. Anda dapat
menetapkan aturan atau prosedur tertentu
untuk dijalankan secara otomatis setiap kali
terjadi perubahan data pada tabel tertentu di
dalam database.
b. Konsistensi: Trigger database dapat membantu
memastikan konsistensi data dalam database.
Misalnya, trigger dapat memastikan bahwa data
di dalam tabel terkait diupdate ketika terjadi
perubahan data di tabel lain.

150 | Konsep Dasar Pengenalan


c. Keamanan: Trigger database juga dapat
membantu meningkatkan keamanan database.
Misalnya, trigger dapat membatasi akses
pengguna atau mencegah pengguna dari
melakukan tindakan yang tidak diinginkan pada
data di dalam tabel.
d. Kemudahan pemeliharaan: Trigger database
dapat membantu memudahkan pemeliharaan
database. Misalnya, trigger dapat membantu
melacak dan memperbaiki kesalahan data yang
terjadi di dalam database.

Kerugian:
a. Kinerja: Trigger database dapat mempengaruhi
kinerja database. Terlalu banyak trigger yang
dijalankan secara bersamaan dapat
memperlambat respons database.
b. Kesalahan: Trigger database dapat
menyebabkan kesalahan di dalam database.
Terlalu banyak trigger yang dijalankan secara
bersamaan dapat menyebabkan kesalahan atau
ketidaksesuaian data.
c. Kompleksitas: Trigger database dapat
meningkatkan kompleksitas dalam database.
Terlalu banyak trigger yang dijalankan secara

Database Rumpun Ilmu Komputer | 151


bersamaan dapat membuat database sulit
dipahami atau dipelihara.

10.6. Perbedaan Trigger Database dengan Stored


Procedure
Berikut adalah perbedaan antara trigger database dan
stored procedure:
a. Fungsi: Trigger database digunakan untuk
memantau dan menanggapi perubahan data
pada tabel, sedangkan stored procedure
digunakan untuk melakukan tugas tertentu
pada database.
b. Pelaksanaan: Trigger database diaktifkan secara
otomatis ketika suatu perubahan data terjadi
pada tabel tertentu, sedangkan stored
procedure dijalankan secara manual oleh
pengguna atau aplikasi.
c. Waktu Pelaksanaan: Trigger database
dijalankan pada waktu tertentu, yaitu saat
perubahan data pada tabel terjadi, sedangkan
stored procedure dapat dijalankan pada waktu
apa pun.
d. Perubahan Data: Trigger database digunakan
untuk memonitor perubahan data dan dapat
memodifikasi atau mengembalikan perubahan

152 | Konsep Dasar Pengenalan


tersebut, sedangkan stored procedure hanya
dapat melakukan perubahan data tertentu dan
tidak dapat memodifikasi atau mengembalikan
perubahan data.
e. Lingkup: Trigger database berlaku pada tabel
tertentu dalam database, sedangkan stored
procedure dapat diterapkan pada database
secara keseluruhan atau hanya pada tabel
tertentu dalam database.

10.7. Tips dan Trik Penggunaan Trigger Database


Berikut adalah beberapa tips dan trik dalam
penggunaan trigger database:
a. Gunakan Trigger dengan Bijak: Trigger yang
terlalu banyak atau terlalu kompleks dapat
mempengaruhi kinerja database. Gunakan
trigger hanya ketika benar-benar diperlukan
dan hindari membuat trigger yang berulang-
ulang.
b. Batasi Penggunaan DML: Hindari penggunaan
DML (Data Manipulation Language) seperti
UPDATE, INSERT, dan DELETE dalam trigger.
Penggunaan DML dalam trigger dapat
menyebabkan deadlock atau masalah kinerja
lainnya.

Database Rumpun Ilmu Komputer | 153


c. Pastikan Transaksi Berjalan dengan Baik:
Trigger yang buruk dapat menyebabkan
masalah transaksi. Pastikan trigger diuji dengan
baik dan tidak menyebabkan masalah pada
transaksi.
d. Pahami Perbedaan Trigger DML dan DDL:
Trigger DML digunakan untuk memantau dan
menanggapi perubahan data pada tabel,
sedangkan trigger DDL digunakan untuk
memantau dan menanggapi perubahan struktur
database.
e. Pertimbangkan Urutan Eksekusi: Ketika ada
beberapa trigger yang terhubung dengan tabel
yang sama, pastikan untuk mempertimbangkan
urutan eksekusi mereka. Urutan eksekusi
trigger dapat mempengaruhi hasil akhir data.
f. Gunakan Indeks Secara Efisien: Indeks dapat
membantu meningkatkan kinerja trigger
database. Pastikan untuk menggunakan indeks
yang tepat dan mengoptimalkan
penggunaannya.

154 | Konsep Dasar Pengenalan


10.8. Kesalahan Umum dalam Penggunaan Trigger
Database
Berikut adalah beberapa kesalahan umum dalam
penggunaan trigger database:
a. Mengaktifkan Terlalu Banyak Trigger: Terlalu
banyak trigger dapat memperlambat kinerja
database. Hindari membuat terlalu banyak
trigger dan pastikan trigger yang digunakan
hanya yang benar-benar diperlukan.
b. Tidak Memeriksa Ketersediaan Memori: Ketika
membuat trigger yang kompleks, pastikan untuk
memeriksa ketersediaan memori pada server.
Trigger yang kompleks dapat memerlukan lebih
banyak memori untuk dijalankan dengan baik.
c. Tidak Menghindari Loop Tanpa Akhir: Loop
tanpa akhir dalam trigger dapat menyebabkan
masalah pada kinerja database. Pastikan trigger
yang dibuat tidak memicu loop tanpa akhir.
d. Tidak Mengoptimalkan Kode: Kode yang tidak
dioptimalkan dapat menyebabkan kinerja yang
buruk pada database. Pastikan kode trigger
dioptimalkan dengan baik agar kinerja database
tetap optimal.
e. Tidak Memeriksa Penggunaan DML:
Penggunaan DML (Data Manipulation Language)

Database Rumpun Ilmu Komputer | 155


seperti UPDATE, INSERT, dan DELETE dalam
trigger dapat menyebabkan deadlock atau
masalah kinerja lainnya. Pastikan untuk
memeriksa penggunaan DML dalam trigger
dengan baik.
f. Tidak Mengamankan Trigger: Trigger dapat
digunakan untuk melakukan aksi yang tidak
diinginkan pada database. Pastikan trigger
diamankan dengan baik dan hanya diizinkan
untuk pengguna yang diperlukan.

156 | Konsep Dasar Pengenalan


DAFTAR PUSTAKA

"5 Benefits of Using MySQL for Your Website," oleh Jatin


Panchal, SitePoint (https://www.sitepoint.com/5-
benefits-of-using-mysql-for-your-website/)
"Advantages and Disadvantages of Database Version
Control" oleh Red Olive:
https://www.redolive.com/insights/advantages
-and-disadvantages-of-database-version-
control/

"Common MySQL Commands," oleh Lisa Tagliaferri,


DigitalOcean
(https://www.digitalocean.com/community/tut
orials/common-mysql-commands)

"Database Design for Mere Mortals: A Hands-On Guide


to Relational Database Design" by Michael J.
Hernandez

"Effective SQL: 61 Specific Ways to Write Better SQL" by


John L. Viescas and Douglas J. Steele.

"Introduction to MySQL Data Types," oleh DigitalOcean


(https://www.digitalocean.com/community/tut
orials/introduction-to-mysql-data-types)

Database Rumpun Ilmu Komputer | 157


"MySQL Benefits and Advantages," oleh Daniel Vassallo,
DZone (https://dzone.com/articles/mysql-
benefits-and-advantages)

"MySQL Commands Cheat Sheet," oleh Dave Child,


Cheatography
(https://cheatography.com/davechild/cheat-
sheets/mysql/)

"MySQL Commands: A Practical Guide for Beginners,"


oleh Samuel Oloruntoba, DigitalOcean
(https://www.digitalocean.com/community/tut
orials/mysql-commands-a-practical-guide-for-
beginners)

"MySQL Data Types," oleh MySQL Documentation


(https://dev.mysql.com/doc/refman/8.0/en/da
ta-types.html)

"MySQL in the World of IoT," oleh MySQL Tutorial


(https://www.mysqltutorial.org/mysql-in-the-
world-of-iot/)

"MySQL Security Best Practices," oleh MySQL


Documentation
(https://dev.mysql.com/doc/mysql-security-
excerpt/5.7/en/security-best-practices.html)

158 | Konsep Dasar Pengenalan


"MySQL Security: Best Practices for Securing Your
MySQL Server," oleh ScaleGrid
(https://scalegrid.io/blog/mysql-security-best-
practices-for-securing-your-mysql-server/)

"Securing Your MySQL Database," oleh DigitalOcean


(https://www.digitalocean.com/community/tut
orials/how-to-secure-mysql-and-mariadb-
databases-in-a-linux-vps)

"SQL Antipatterns: Avoiding the Pitfalls of Database


Programming" by Bill Karwin

"The Advantages and Benefits of MySQL," oleh Natalia


Kudryavtseva, Altar.io
(https://altar.io/advantages-benefits-mysql/)

"Top Uses for MySQL," oleh Hostinger


(https://www.hostinger.com/tutorials/what-is-
mysql-used-for-top-uses-for-mysql)

"Version Control and Database Branching" oleh


Jeremiah Peschka: https://www.red-
gate.com/hub/product-learning/sql-source-
control/version-control-and-database-
branching

Database Rumpun Ilmu Komputer | 159


"What Is a Database Model?," oleh Lucidchart
(https://www.lucidchart.com/pages/database-
diagram/database-model)

"What Is MySQL Used For?," oleh MySQL Tutorial


(https://www.mysqltutorial.org/what-is-mysql-
used-for/)

Abdus Salam, R. R. (2019). Sistem Basis Data Dengan


Microsoft Office Access : Teori Dan Praktikum.
Aceh: Lembaga Kita.

Afrizal Zein, E. S. (2022). Panduan Menjadi Programmer


Handal. Indramayu: Adab.

Agung, G. (2014). MySQL untuk Pemula. Jakarta : PT.


Elex Media Komputindo.

Aqham, A. A. (2021). Managemen Sistem Basis Data (Sql


Dan Mysql). Semarang: Penerbit Yayasan Pat.

Business Dictionary. (n.d.). Entity. Diakses pada 12 April


2023, dari
http://www.businessdictionary.com/definition
/entity.html

Ceri, S., Pelagatti, G., & Markowitz, V. M. (1992).


Distributed databases: principles and systems.
McGraw-Hill.

160 | Konsep Dasar Pengenalan


Chapple, M. (2021). Entity Relationship Diagram (ERD).
Diperoleh pada 11 April 2023, dari
https://www.lifewire.com/entity-relationship-
diagram-erd-1019675

Chapple, M. (2021). SQL Data Manipulation Language


(DML) Commands. Lifewire. Diakses pada 11
April 2023, dari https://www.lifewire.com/sql-
data-manipulation-language-dml-commands-
1019803

Chau, V. T. (2021). A Bitemporal SQL Database Design


Method From The Enhanced Entity-Relationship
Model. Ieee, 85-90.

Chen, P. P. (1976). The entity-relationship model:


toward a unified view of data. ACM Transactions
on Database Systems (TODS), 1(1), 9-36.

Connolly, T. M., & Begg, C. E. (2014). Database systems:


a practical approach to design, implementation,
and management. Pearson Education Limited.

Connolly, T., & Begg, C. (2014). Database systems: a


practical approach to design, implementation,
and management. Pearson Education Limited.

Database Rumpun Ilmu Komputer | 161


Connolly, T., & Begg, C. (2014). Database systems: a
practical approach to design, implementation,
and management. Pearson Education Limited.

Connolly, T., & Begg, C. (2014). Database systems: a


practical approach to design, implementation,
and management. Pearson.

Connolly, T., & Begg, C. (2014). Database Systems: A


Practical Approach to Design, Implementation,
and Management. Pearson.

Connolly, T., & Begg, C. (2014). Database Systems: A


Practical Approach to Design, Implementation,
and Management. Pearson.

Connolly, T., & Begg, C. (2014). Database Systems: A


Practical Approach to Design, Implementation,
and Management. Pearson.

Connolly, T., & Begg, C. (2014). Database Systems: A


Practical Approach to Design, Implementation,
and Management (6th ed.). Boston: Pearson.

Coronel, C., Morris, S., & Rob, P. (2013). Database


systems: design, implementation, and
management. Cengage Learning.

162 | Konsep Dasar Pengenalan


Coronel, C., Morris, S., & Rob, P. (2016). Database
Systems: Design, Implementation, and
Management. Cengage Learning.

Coronel, C., Morris, S., & Rob, P. (2016). Database


Systems: Design, Implementation, &
Management. Cengage Learning.

Cudney, E. A., & Lee, D. (2009). JIT Implementation


Manual: The Complete Guide to Just-In-Time
Manufacturing, Second Edition. Productivity
Press.

Data Warehousing and Mining: Concepts,


Methodologies, Tools, and Applications by John
Wang

Database Design for Mere Mortals: A Hands-On Guide to


Relational Database Design by Michael J.
Hernandez

Database System Concepts by Abraham Silberschatz,


Henry F. Korth, and S. Sudarshan

Date, C. J. (2003). An introduction to database systems


(Vol. 7). Addison-Wesley.

Date, C. J. (2004). An introduction to database systems.


Addison-Wesley Longman Publishing Co., Inc.

Database Rumpun Ilmu Komputer | 163


Date, C. J. (2012). An introduction to database systems
(Vol. 1). Pearson Education.

Delaney, A. (2021). Understanding the Data


Manipulation Language (DML) in SQL. Udemy.
Diakses pada 11 April 2023, dari
https://www.udemy.com/blog/data-
manipulation-language-dml-sql/

Dokumentasi Git: https://git-scm.com/docs/git-branch

Elmasri, R., & Navathe, S. B. (2010). Fundamentals of


database systems. Pearson Education India.

Elmasri, R., & Navathe, S. B. (2010). Fundamentals of


database systems. Pearson Education India.

Elmasri, R., & Navathe, S. B. (2010). Fundamentals of


database systems. Pearson Education India.

Elmasri, R., & Navathe, S. B. (2016). Fundamentals of


database systems. Pearson.

Elmasri, R., & Navathe, S. B. (2016). Fundamentals of


database systems. Pearson.

Elmasri, R., & Navathe, S. B. (2016). Fundamentals of


database systems. Pearson.

164 | Konsep Dasar Pengenalan


Elmasri, R., & Navathe, S. B. (2016). Fundamentals of
Database Systems. Pearson.

Elmasri, R., Navathe, S. B., & Wah, B. W. (1997).


Fundamentals of database systems. Addison
Wesley Longman Publishing Co., Inc.

Eriana, E. S. (2020). Pemilihan Ketua Himtif Universitas


Pamulang Dengan Metode Simple Additive
Weighting. Jurnal Ilmu Komputer, 2-2.

Eriana, E. S. (2020). Sita.(2020). Pengujian Sistem


Informasi Aplikasi Perpustakaan Berbasis Web
Dengan White Box Testing. Jurnal Teknologi
Informasi Esit, 15.

Eriana, E. S. (2021). Model–V Pada Perancangan Sistem


Informasi Kepegawaian Berbasis Web. ESIT (E-
Bisnis, Sistem Informasi, Teknolog, 16.

Forbes. (n.d.). What Is a Business Attribute? Diakses


pada 12 April 2023, dari
https://www.forbes.com/advisor/business-
attributes/

Garcia-Molina, H., Ullman, J. D., & Widom, J. (2008).


Database systems: the complete book (Vol. 2).
Pearson Education.

Database Rumpun Ilmu Komputer | 165


Guttman, B. (1989). R-trees: a dynamic index structure
for spatial searching. ACM SIGMOD Record,
19(3), 47-57.

Han, J., Kamber, M., & Pei, J. (2011). Data mining:


concepts and techniques. Elsevier.

Hendarman, R. (1995). Pengolahan Data pada Sistem


Informasi Berbasis Komputer. Jakarta : Elex
Media Komputindo.

https://docs.microsoft.com/en-us/sql/relational-
databases/views/create-views?view=sql-
server-ver15

Husni. (2004). Membuat Aplikasi Database Client-


Server dengan Delphi dan MySQL. Yogyakarta :
Graha Ilmu.

Investopedia. (n.d.). Entity. Diakses pada 12 April 2023,


dari
https://www.investopedia.com/terms/e/entity.
asp

Jacobson, M., Ericsson, M., & Jacobson, I. (1999). The


Object Advantage: Business Process
Reengineering with Object Technology.
Addison-Wesley Professional.

166 | Konsep Dasar Pengenalan


Kaisler, S., Armour, F., Espinosa, J. A., & Money, W.
(2013). Big data: issues and challenges moving
forward. " Elsevier Proceedings of the 46th
Hawaii International Conference on System
Sciences".

Kline, K. (2015). SQL in a nutshell: a desktop quick


reference. " O'Reilly Media, Inc.".

Lauden, K. C., & Lauden, J. P. (2018). Management


Information Systems: Managing the Digital Firm.
Pearson.

Mayer-Schönberger, V., & Cukier, K. (2013). Big data: a


revolution that will transform how we live,
work, and think. Houghton Mifflin Harcourt.

Meloni, J. C. (2012). PHP and MySQL web development.


Pearson Education.

Microsoft Docs. (n.d.). Best practices for Data


Manipulation Language (DML) operations in
SQL Server. Diakses pada 10 April 2023, dari
https://docs.microsoft.com/en-
us/sql/relational-databases/security/best-
practices-for-data-manipulation-language-dml-
operations-in-sql-server?view=sql-server-ver15

Database Rumpun Ilmu Komputer | 167


Microsoft SQL Server documentation:
https://docs.microsoft.com/en-us/sql/t-
sql/statements/create-trigger-transact-
sql?view=sql-server-ver15

Microsoft. (n.d.). Best practices for DML operations.


Diakses pada 11 April 2023, dari
https://docs.microsoft.com/en-
us/sql/relational-databases/security/best-
practices-for-dml-operations

Microsoft. (n.d.). Create a View. Retrieved from

Microsoft. (n.d.). Create DML Triggers. Retrieved from


https://docs.microsoft.com/en-
us/sql/relational-databases/triggers/create-
dml-triggers?view=sql-server-ver15

MySQL documentation:
https://dev.mysql.com/doc/refman/8.0/en/cre
ate-trigger.html

MySQL Partitioning
(https://dev.mysql.com/doc/refman/8.0/en/pa
rtitioning-types.html)

MySQL. (n.d.). MySQL 8.0 Reference Manual: Views.


Retrieved from

168 | Konsep Dasar Pengenalan


https://dev.mysql.com/doc/refman/8.0/en/vie
ws.html

Navathe. (2019). Modern Database Management (13th


ed.). Pearson Education.

Ni Luh Wiwik Sri Rahayu Ginantra, N. W. (2020). Basis


Data: Teori Dan Perancangan. Medan: Yayasan
Kita Menulis.

Oracle Database documentation:


https://docs.oracle.com/en/database/oracle/or
acle-database/19/tdddg/triggers.html#GUID-
B03A846F-3E3A-4C90-B0D8-6FF7D9723D1F

Oracle. (n.d.). Creating Triggers. Retrieved from


https://docs.oracle.com/en/database/oracle/or
acle-database/19/sqpug/creating-triggers.html

Oracle. (n.d.). Database Triggers. Diakses pada 12 April


2023, dari
https://docs.oracle.com/en/database/oracle/or
acle-database/19/lnpls/database-triggers.html

Oracle. (n.d.). Database Triggers. Diakses pada 12 April


2023, dari
https://docs.oracle.com/en/database/oracle/or
acle-database/19/lnpls/database-triggers.html

Database Rumpun Ilmu Komputer | 169


Oracle. (n.d.). Oracle Database Concepts. Retrieved from
https://docs.oracle.com/en/database/oracle/or
acle-database/19/cncpt/introduction-to-
views.html

Oracle. (n.d.). Security Considerations for DML


Operations. Diakses pada 11 April 2023, dari
https://docs.oracle.com/en/database/oracle/or
acle-database/19/sqlrf/Security-
Considerations-for-DML-Operations.html

Oracle. (n.d.). SQL Data Definition Language (DDL).


Diakses pada 11 April 2023, dari
https://docs.oracle.com/cd/B28359_01/server.
111/b28286/statements_3001.htm

Oracle. (n.d.). SQL SELECT INTO Statement. Retrieved


from
https://www.techonthenet.com/oracle/select_i
nto.php

Oracle. (n.d.). What are Views in SQL? Retrieved from


https://www.oracle.com/database/what-are-
views-in-sql/

Orsini, L. (2020). What Is Data Manipulation Language


(DML)? Business News Daily. Diakses pada 11

170 | Konsep Dasar Pengenalan


Oz, E. (2018). Management Information Systems.
Cengage Learning.

Ozsu, M. T., & Valduriez, P. (2011). Principles of


distributed database systems (Vol. 3). Springer
Science & Business Media.

Partitioning in MySQL
(https://dev.mysql.com/doc/refman/8.0/en/pa
rtitioning.html)

Periscope Data. (2017). Best practices for SQL DML.


Diakses pada 10 April 2023, dari
https://www.periscopedata.com/blog/best-
practices-for-sql-dml

PostgreSQL. (n.d.). Chapter 5. Manipulating Data.


Retrieved from
https://www.postgresql.org/docs/current/dml
-select.html

Putra Rahmadi, H. D. (2020). Implementasi


Pengamanan Basis Data Dengan Teknik
Enkripsi. Jurnal Cendikia, 413-418.

Raghu Ramakrishnan dan Johannes Gehrke, "Database


Management Systems", McGraw Hill, 2020.

Database Rumpun Ilmu Komputer | 171


Rahimi Fitri, S. M. (2020). Pemrograman Basis Data
Menggunakan Mysql. Deepublish: Yogjakarta.

Ramadhan, A. (2019). Analisis Kinerja Query pada


MySQL dan PostgreSQL. Jurnal Teknologi
Informasi dan Ilmu Komputer, 6(4), 505-512.

Ramakrishnan, R., & Gehrke, J. (2003). Database


management systems (Vol. 3). New York:
McGraw-Hill.

Ramakrishnan, R., & Gehrke, J. (2003). Database


management systems (3rd ed.). McGraw-Hill.

Ramakrishnan, R., & Gehrke, J. (2003). Database


Management Systems (3rd ed.). New York:
McGraw-Hill.

Ramakrishnan, R., & Gehrke, J. (2003). Database


Management Systems (3rd ed.). New York:
McGraw-Hill.

Ramez Elmasri dan Shamkant B. Navathe,


"Fundamentals of Database Systems", Addison-
Wesley, 2021.

Ramez Elmasri, S. B. Navathe. (2019). Modern Database


Management (13th ed.). Pearson Education.

172 | Konsep Dasar Pengenalan


Ramez Elmasri, S. B. Navathe. (2019). Modern Database
Management (13th ed.). Pearson Education.

Raza, S. A., Zafar, M. F., & Hussain, J. (2015). Supply


chain management using database management
system. Journal of Computer Sciences and
Applications, 3(1), 6-9.

Redmond, E., Wilson, J., & Bartram, P. (2012). Seven


Database Paradigms for the Cloud Era. Technics
Publications.

Setiawan, N. (2019). Integrasi Database Untuk


Visualisasi Dan Laporan Pada Divisi Humas
Universitas Swasta Di Surabaya. Jurnal Titra, 1-
6.

Setiyowati, S. M. (2020). Perancangan Basis Data &


Pengenalan Sql Server . Semarang: Percetakan
Universitas Dian Nuswantoro Semarang.

Silberschatz, A., Korth, H. F., & Sudarshan, S. (2010).


Database system concepts. McGraw-Hill
Education.

Silberschatz, A., Korth, H. F., & Sudarshan, S. (2010).


Database System Concepts (6th ed.). New York:
McGraw-Hill.

Database Rumpun Ilmu Komputer | 173


Silberschatz, A., Korth, H. F., & Sudarshan, S. (2010).
Database System Concepts (6th ed.). New York:
McGraw-Hill.

Singh, N. (2018). An Overview of MySQL. International


Journal of Computer Science and Mobile
Computing, 7(2), 49-54.

Sri Restu Ningsih, A. I. (2022). Perancangan Basis Data.


Medan: Yayasan Kita Menulis.

Sutopo, W., & Arifin, A. Z. (2015). Analisis Komparatif


Basis Data PostgreSQL dan MySQL. Jurnal
Informatika, 11(1), 23-34.

Tan, K. C., Kannan, V. R., & Handfield, R. B. (1998).


Supply chain management: supplier
performance and firm performance.
International Journal of Purchasing and
Materials Management, 34(3), 2-9.

TechTarget. (n.d.). Database View. Retrieved from


https://whatis.techtarget.com/definition/view-
database-view

Thomas Connolly dan Carolyn Begg, "Database Systems:


A Practical Approach to Design, Implementation,
and Management", Pearson, 2015.

174 | Konsep Dasar Pengenalan


Top of Form

Tutorial Git branching:


https://www.atlassian.com/git/tutorials/using-
branches

Tutorialspoint:
https://www.tutorialspoint.com/mysql/mysql-
triggers.html

W3Schools. (n.d.). SQL Tutorial - SQL DML. Diakses pada


10 April 2023, dari
https://www.w3schools.com/sql/sql_dml.asp

W3Schools. (n.d.). SQL Tutorial - Views. Retrieved from


https://www.w3schools.com/sql/sql_view.asp

Witten, I. H., Frank, E., & Hall, M. A. (2016). Data mining:


practical machine learning tools and techniques

Womack, J. P., Jones, D. T., & Roos, D. (2007). The


Machine That Changed the World: The Story of
Lean Production. Free Press.

Yanto, R. (2016). Manajemen Basis Data Menggunakan


MySQL. Yogyakarta : Deepublish.

Database Rumpun Ilmu Komputer | 175

Anda mungkin juga menyukai