PENDAHULUAN
1
yang mampu mengorganisir data peminjam buku, karyawan, dan data-data
lainnya menjadi suatu kumpulan data yang terhubung (interrelated data)
yang disimpan secara bersama-sama pada suatu media, sehingga mudah
digunakan atau dimanfaatkan kembali. Basis data yang dimaksud juga dapat
digunakan oleh satu atau lebih program aplikasi secara optimal, artinya data
yang disimpan tidak mengalami ketergantungan pada program yang akan
menggunakannya, data akan disimpan sedemikian rupa sehingga
penambahan, pengambilan, dan modifikasi dapat dilakukan dengan mudah
dan terkontrol. Perancangan basis data ini bertujuan untuk memenuhi
informasi yang berisikan kebutuhan-kebutuhan pemakai atau pengguna basis
data terebut, serta mendukung kebutuhan dalam pemerosesan data peminjam
buku.
1.4 Manfaat
Adapun manfaat dari hasil analisis dan perancangan basis data yang
dilakukan adalah untuk supaya dapat mengetahui permasalahan-
permasalahan yang dihadapi dalam hal pendataan perpustakaan dan
2
memberikan solusi perancangan basis data yang dapat mengolah data menjadi
suatu kumpulan data yang terhubung dan dapat disimpan secara bersama-
sama pada suatu media, sehingga mudah digunakan atau dimanfaatkan
kembali.
3
BAB II
PERANCANGAN SISTEM DATABASE
2.1 Definisi
Universitas adalah jenjang pendidikan lanjutan dari sekolah menengah
atas. Dalam universitas ini, terdapat berbagai fakultas. Dan di dalam fakultas
terdapat berbagai jurusan. Di dalam jurusan sendiri ada berbagai komponen
seperti mahasiswa dan dosen. Kita ambil contoh di jurusan teknik elektro.
Mahasiswa teknik elektro diharuskan untuk mengurus berbagai berkas ketika
hendak melakukan kerja praktek. Beberapa berkas yang diperlukan biasanya
nilai-nilai mata kuliah, identitas mahasiswa tersebut dan dosen pembimbing.
Sehingga dibuatlah sistem informasi jurusan. Sistem informasi jurusan
digunakan untuk mempermudah dalam pengelolaan data pada jurusan teknik
elektro. Sistem ini tentunya sudah menggunakan metode komputerisasi.
Karena dengan penggunaan metode komputerisasi, proses penginputan data,
proses pengambilan data maupun proses pengupdatean data sangat mudah,
cepat dan akurat.
4
B. Penentuan Entitas
Entitas (entity) adalah sebuah objek yang keberadaannya dapat
dibedakan terhadap objek lain. Dalam laporan ini digunakan entitas
berupa :
1. Member : Menyimpan informasi identitas dari anggota
perpustakaan
2. Petugas : Menyimpan informasi identitas dari petugas
perpustakaan
3. Jabatan : Menyimpan informasi jabatan di perpustakaan
4. Buku : Menyimpan informasi buku di perpustakaan
5. Rak : Menyimpan informasi rak buku di perpustakaan.
6. Peminjaman : Menyimpan informasi dari transaksi dan history
peminjaman
C. Penentuan Atribut
Atribut identik dengan istilah “kolom data” tetapi dapat
menunjukkan fungsinya sebagai pembentuk karakteristik (sifat-sifat)
yang melekat dalam sebuah tabel. Pada penerapan aturan normalisasi,
bisa berdampak pada penghilangan atau penambahan kolom tertentu,
atau bahkan dapat memebentuk suatu tabel baru.
1. Member
id_member
nama_member
jenis_kelamin
alamat
no_telp
2. Petugas
id_petugas
nama_petugas
jenis_kelamin
alamat
no_telp
kode_jabatan
5
3. Jabatan
kode_jabatan
nama_jabatan
gaji
4. Buku
id_buku
judul_buku
penulis
penerbit
tahun_terbit
5. Rak
kode_rak
nama_rak
6. Peminjaman
id_member
nama_member
jenis_kelamin
alamat
not_telp
id_buku
judul_buku
id_petugas
tgl_pinjam
tgl_kembali
6
D. Hubungan atau Relasi
Relasi tabel adalah hubungan sebuah tabel dengan tabel lainnya.
Sehingga tabel tidak lagi berdiri sendiri, melainkan dapat dihubungkan
antara satu dengan yang lainnya dan menjadi satu kesatuan.
Ada dua buah kolom yang diperlukan untuk menghubungkan
sebuah tabel dengan tabel lainnya. Kolom yang pertama, yaitu kolom
primary key (kunci utama) pada tabel yang satu. Kolom yang kedua
adalah foreign key (kunci asing) pada tabel lainnya.
Petugas memiliki jabatan:
Tabel utama: petugas
Tabel kedua: jabatan
Relationship: Many-to-one (M:1)
Attribute penghubung: kode_jabatan (FK kode_jabatan di tabel
jabatan)
Buku ditempatkan di rak:
Tabel utama: buku
Tabel kedua: rak
Relationship: Many-to-one (M:1)
Attribute penghubung: kode_buku (FK kode_buku di tabel rak)
Member melakukan peminjaman dan pengembalian buku:
Tabel utama: un_peminjaman
Tabel kedua: buku
Relationship: One-to-many (1:M)
Attribute penghubung: id_buku (FK id_buku di tabel buku)
Member melakukan peminjaman dan pengembalian:
Tabel utama: un_peminjaman
Tabel kedua: member
Relationship: One-to-one (1:1)
Attribute penghubung: id_member (FK id_member di tabel
member)
7
Buku yang dapat dipinjam dan dikembalikan:
Tabel utama: un_peminjaman
Tabel kedua: buku
Relationship: One-to-one (1:1)
Attribute penghubung: id_buku (FK id_buku di tabel buku)
Petugas melayani peminjaman:
Tabel utama: un_peminjaman
Tabel kedua: petugas
Relationship: One-to-one (1:1)
Attribute penghubung: id_petugas (FK id_petugas di tabel
petugas)
jabatan … … …
buku M:1 1:1
rak …
un_peminjaman
8
BAB III
ANALISA DAN PEMBAHASAN
9
3.2 Diagram Relasi
Conceptual Data Model pada sub bab sebelumnya dapat ditransformasikan
menjadi Physical Data Model seperti pada Gambar 2.
10
Gambar 4. Tampilan Untuk Menambahkan Tabel
CREATE TABLE
2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data member
perpustakaan.
Tabel 2. Member
11
3. Analisa
Pada tabel member, ‘id_member’ adalah primary key yang
menggunakan Auto Increment.
CREATE TABLE
REFERENCES `rak`(`kode_rak`)
2. Tampilan Tabel
Berikut merupakan tampilan tabel yang telah diisi oleh data-data buku
yang ada di perpustakaan.
Tabel 3. Buku
12
3. Analisa
Pada tabel buku, ‘id_buku’ menjadi primary key, Kemudian ‘kode_rak’
merupakan foreign key. Dapat dilihat pada tabel tersebut. bahwa satu
buku hanya dapat memiliki satu rak, namun satu rak bisa memiliki lebih
dari satu buku. Sehingga hubungan relasinya adalah M:1.
CREATE TABLE
2. Tampilan Tabel
Berikut merupakan tampilan tabel yang telah diisi oleh data-data buku
yang ada di perpustakaan.
Tabel 4. Rak
3. Analisa
Pada tabel rak, ‘kode_rak’ menjadi primary key yang menggunakan
auto increment, serta tabel tersebut memiliki column ‘nama_rak’
bertipe data varchar dengan length 30.
13
3.5.4 Tabel Petugas
1. Query
REFERENCES `jabatan`(`kode_jabatan`)
2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data para
petugas perpustakaan.
Tabel 5. Petugas
14
3. Analisa
Pada tabel petugas, ‘id_petugas’ adalah primary key, dan
‘kode_jabatan’ adalah foreign key yang menghungkan dengan tabel
jabatan. Relasi pada tabel petugas dan tabel jabatan adalah 1:M dimana
satu orang petugas hanya boleh memiliki satu jabatan, sedangakan satu
jabatan boleh dimiliki oleh lebih dari satu orang petugas.
2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data jabatan
para petugas perpustakaan.
Tabel 6. Jabatan
3. Analisa
Pada tabel jabatan, ‘kode_jabatan’ merupakan primary key yang
menggunakan auto increment, pada tabel tersebut terdapat column
‘nama_jabatan’ bertipe data varchar dengan length 35 dan column
‘gaji’ bertipe data varchar bertipe data varchar dengan length 10.
15
3.5.6 Tabel Peminjaman
1. Query
16
2. Tampilan Tabel
Berikut merupakan tampilan tabel setelah diisi oleh data-data jabatan
para petugas perpustakaan.
Tabel 7. Peminjaman
3. Analisa
Pada tabel tersebut foreign keynya adalah ‘id_member’, ‘Id_buku’, dan
‘id_petugas’, yang masing-masing terhubung atau terelasi dengan tabel
member, buku, dan petugas. Relasi yang dibentuk sama yaitu 1:1
dimana satu ‘id_meber’, satu ‘id_buku’ dan satu ‘id_petugas’ hanya
boleh memiliki satu ‘tgl_pinjam’ dan ‘tgl_kembali’.
17
3.4 Normalisasi Tabel
Normalisasi merupakan sebuah teknik dalam logical desain sebuah
basis data yang mengelompokkan atribut dari suatu relasi sehingga
membentuk struktur relasi yang baik (tanpa redudansi).
Normalisasi adalah proses pembentukan struktur basis data sehingga
sebagian besar ambiguity bisa dihilangkan. Dalam kasus ini kami mencoba
menormalisasi tabel berikut :
Unnormal Form
Tabel 8. Unnormal Form
id_ nama_ jenis_ no_ Id_ id_ tgl_ tgl_
alamat judul_buku
member member kelamin telp buku petugas pinjam kembali
0811
Irza Nur Wono 2019- 2019-
1 Pria 2345 4 Little Love 7
Fauzi giri 01-01 02-03
6789
0812
Siti Marta Trias 2019- 2019-
6 Wanita 2930 3 7
Mayna pura Muslimatika 01-02 01-05
3124
0859
Stevanus Tangge 2019- 2019-
2 Pria 8765 4 Little Love 9
Enggar rang 01-02 01-04
4321
Lancar Java
5 Dan
0811
Irza Nur Wono Javascript 2019- 2019-
1 Pria 2345 9
Fauzi giri Desain 2D 01-03 01-06
6789
2 Dengan
Autocad
Indonesian
9 Architects
Trias
3
Muslimatika
0822 Desain 2D
Rexy Sema 2019- 2019-
9 Pria 4566 2 Dengan 7
Datu rang 01-07 01-08
6120 Autocad
Hukum
0854
Harits Sema Perikatan 2019- 2019-
3 Pria 1787 6 7
Izzudin rang dan 01-07 01-09
4551
Perjanjian
18
First Normal Form
Tabel 9. First Normal Form 1
19
Second Normal Form
Tabel 12. Second Normal Form 1
20
3.5 Fungsi Join
3.5.1 Join Tabel petugas & jabatan
1. Query
2. Tampilan Tabel
Tabel 14. Tabel hasil join petugas & jabatan
3. Analisa
Hasil join antara petugas dan jabatan di atas menggunakan
foreign key ‘kode_jabatan’ pada masing-masing tabel, menunjukkan
bahwa relasi-relasi dan foreign key pada tabel-tabel tersebut sudah
berelasi dengan baik pada database sehingga dapat memudahkan admin
untuk menampilkan dan mengelola entitas-entitas dari tabel yang
diinginkan.
21
2. Tampilan Tabel
Tabel 15. Tabel hasil join buku & rak
3. Analisa
Hasil join antara buku dan rak di atas menggunakan foreign key
‘kode_rak’ pada masing-masing tabel, menunjukkan bahwa relasi-
relasi dan foreign key pada tabel-tabel tersebut sudah berelasi dengan
baik pada database sehingga dapat memudahkan admin untuk
menampilkan dan mengelola entitas-entitas dari tabel yang diinginkan.
22
BAB IV
KESIMPULAN
23