Universitas Syiah Kuala : Program Studi Matematika
Database Perpustakaan By: Betty Hariani Ibun, Muarif, Rizqi Muharridha Lecturer: Irvanizam Zamanhuri, M.Sc Kode Mata Kuliah: MMT-056 9 Januari 2011
Daftar Isi 1 PENDAHULUAN 1.1 Latar Belakang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Permasalahan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Tujuan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 2 2 2
2 TINJAUAN PUSTAKA 2.1 Basis Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 phpMyAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 3 3 3
3 METODELOGI PENELITIAN 3.1 Waktu dan Tempat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Alat dan Bahan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 4 4
4 HASIL DAN PEMBAHASAN 4.1 Data Requirement . . . . . . . . 4.2 Rancangan Relational Database . 4.3 Relational Key . . . . . . . . . . 4.4 Bahasa pada Relational Database 4.5 Entity Relationship Diagram . . . 4.6 Relationship antar entity . . . . .
. . . . . .
5 5 5 7 8 9 9
5 KESIMPULAN DAN SARAN 5.1 Kesimpulan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Saran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10 10 10
. . . . . .
. . . . . .
Daftar Tabel Daftar Gambar
1
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
1
1.1
PENDAHULUAN
Latar Belakang
Penerapan teknologi informasi telah menyebar hampir di semua bidang, tidak terkecuali di bidang perpustakaan. Dengan demikian, ukuran perkembangan perpustakaan banyak diukur dari penerapan teknologi informasi yang digunakan dan bukan dari skala ukuran lain seperti besarnya gedung perpustakaan yang dimiliki, jumlah koleksi yang tersedia maupun jumlah penggunanya. Kebutuhan akan teknologi informasi sangat berhubungan dengan peran perpustakaan sebagai kekuatan dalam penyebaran informasi ilmu pengetahuan dan kebudayaan. Dengan aplikasi ini, akan mempermudah pelayanan dan akses informasi serta pengelolaan data perpustakaan, seperti mempermudah pencarian buku/katalog, sistem keanggotaan, informasi jurnal, materi kuliah, peminjaman dan pengembalian buku serta pelaporan secara berkala. Sehingga, akan diperoleh efisiensi pekerjaan staf perpustakaan dalam pengelolaan buku perpustakaan, penyajian informasi yang lebih mudah dan interaktif, memberikan layanan yang lebih baik kepada pengguna layanan perpustakaan.
1.2
Permasalahan
• Perpustakaan di kota x ingin membuat sebuah database untuk mempercepat proses pencarian. • Perpustakaan di kota x ingin mendapatkan data yang akurat dan mempermudah dalam mengelola perpustakaan.
1.3
Tujuan
• Kecepatan dalam pencarian. • Kemudahan dalam pencarian. • Keakuratan Data. • Kelengkapan isi data.
2
2
2.1
TINJAUAN PUSTAKA
Basis Data
Basis data (bahasa Inggris: database), atau sering pula dieja basisdata, adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi. Istilah ”basis data” berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini mengenai basis data komputer. Catatan yang mirip dengan basis data sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan kumpulan data yang berhubungan dengan bisnis. Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur basis data: ini dikenal sebagai model basis data atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama antar tabel. Model yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel.
2.2
MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.
2.3
phpMyAdmin
phpMyAdmin adalah perangkat lunak bebas yang ditulis dalam bahasa pemrograman PHP yang digunakan untuk menangani administrasi MySQL melalui Jejaring Jagat Jembar (World Wide Web). phpMyAdmin mendukung berbagai operasi MySQL, diantaranya (mengelola basis data, tabel-tabel, bidang (fields), relasi (relations), indeks, pengguna (users), perijinan (permissions), dan lain-lain).
3
3
3.1
METODELOGI PENELITIAN
Waktu dan Tempat
Adapun proyek ini dilakukan selama satu bulan sejak tanggal 2 Desember 2010 sampai 1 Januari 2010 di Laboratorium Statistika dan Komputasi Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Syiah Kuala Banda Aceh.
3.2
Alat dan Bahan
• PC/Laptop Acer Centrino, Compaq Amd Athlon X2 Dual Core • OS (Windows Seven x86 bit) • XAMPP for Windows Version 1.7.2 • Web Browser (Mozilla Firefox V.3.6)
4
4
4.1
HASIL DAN PEMBAHASAN
Data Requirement
Perpustakaan di kota x ingin membuat webdatabse dengan ketentuan sebagai berikut: 1. Seorang member memiliki nama, alamat (termasuk kota dan kode pos), no hp, email, tempat tanggal lahir dan member ID. Setiap member secara unik diidentifikasi oleh ID member nya. 2. Setiap buku memiliki ID buku yang akan mengidentifikasikan buku tersebut secara unik. Kemudian kita ingin mengetahui judul buku, penerbit, tahun, edisi, kode katalog, kategori id, id penulis dan di rak mana buku tersebut disimpan. 3. Setiap buku tersimpan pada suatu rak. Pada rak tersebut ingin kita tampilkan no rak dan lokasi dari buku tersebut disimpan. 4. Untuk setiap buku memiliki kategori, kita ingin mencatat deskripsi dan kategori ID dari setiap buku. Kategori secara unik diidentifikasi oleh kategori ID nya. 5. Setiap buku ditulis oleh penulis. Penulis memiliki id penulis, nama, kota, email dan tanggal lahir. Untuk setiap id penulis bersifat unik. 6. Seorang member dapat meminjam beberapa buku dalam perpustakaan yang tidak dibatasi jumlahnya. 7. Jika ingin meminjam buku maka seseorang harus memiliki member ID, jika tidak maka orang tersebut tidak dapat meminjam buku. 8. Pada setiap peminjaman, member dapat meminjam banyak buku, namun satu buku hanya dapat dipinjam oleh satu member (hal ini dibedakan melalui id buku yang unik). Dan setiap peminjaman buku selalu di aac oleh staff yang bertugas.
4.2
Rancangan Relational Database
Dalam membangun sebuah sisitem informasi yang berbasis web, perlu dilakukan perancangan struktur relasi antar entitas dalam RDBMS. Saat ini, hampir seluruh RDBMS yang ada menerapkan SQL sebagai bahasa query namun juga menyediakan dan mengimplementasi beberapa alternatif lainnya.Begitu pula dengan softwarenya.Sekarang sudah banyak juga software yang digunakan untuk membuat database dengan menggunakan bahasa MySql.Salah satunya yaitu XAMPP. Untuk sistem informasi perpustakaan, banyak table-tabel yang akan dibuat dan direlasikan. Dengan menggunakan XAMPP, dalam tahap merelasikan antar tabel bisa jadi lebih mudah karena bias dilihat langsung secara visual dalam merelasikan antar table-tabel. Berikut adalah tabel-tabel yang terdapat pada webdatabase perpustakaan: 1. Member • member_id (varchar(5), primary key, not null) • nama (text, not null) • hp (varchar(12), not null) 5
• kota (text, not null) • kode pos (int(5) , not null) • email (text, not null) • tempat lahir (text, not null) • tanggal lahir (date, not null) 2. Buku • id.buku (varchar(5), primary key, not null) • judul (text, not null) • kat.id (smallint(2), not null) • id_penulis (varchar(3), not null) • penulis (varchar(23), not null) • penerbit (text, not null) • tahun (year(4), not null) • no_rak (tinyint(2), not null) • edisi (tinyint(2), not null) 3. Penulis • id_penulis (varchar(3), primary key, not null) • nama (varchar(20), not null) • kota (varchar(10), not null) • email (text, not null) • tahun lahir (year(4), not null) 4. Kategori • kat.id (int(2), primary key, not null) • deskripsi (text, not null) 5. Rak • no_rak (tinyint(2), primary key, not null) • lokasi (varchar(10), not null) 6. Peminjaman • member_id (varchar(5), not null) • book_id (varchar(5), not null) • tanggal_pinjam (date, not null) • tanggal_pengembalian (date, not null)
6
• staff_name (varchar(25), not null) Rancangan relational database ini akan menjelaskan kepada pemakai tentang hubungan login antar data dalam basis data perpustakaan dengan cara memvisualisasikannya ke dalam bentuk tabel dua dimensi yang terdiri dari sejumlah baris dan kolom yang menunjukkan atribut-atribut. Keuntungan Relational Database: • Bentuknya sederhana • Mudah melakukan berbagai operasi Karakteristik-karakteristik dalam relasi: • Semua entry/elemen pada suatu baris dan kolom tertentu harus mempunyai nilai tunggal (single value), bukan suatu larik atau grup perulangan. • Semua entry/elemen data pada suatu kolom tertentu dalam relasi yang sama mempunyai jenis yang sama. • Masing-masing kolom dalam suatu relasi mempunyai suatu nama yang unik. • Pada suatu relasi/tabel yang sama tidak ada dua baris yang identik. Pada suatu database terdapat beberapa istilah yang harus diketahui, yaitu: • Record/Tuple : Sebuah baris dalam satu relasi • Cardinality : Banyak tuple atau record • Attribute : Suatu kolom dalam sebuah relasi (ex: pada tabel member ( member_id, nama, hp, alamat, kota, kode pos, email, tempat lahir dan tanggal lahir ) • Domain : Batasan-batasan nilai dalam atribut dan tipe datanya (ex: int, varchar, text dan tinyint) • Derajat : Banyaknya atribut/kolom (ex: tabel member berderajat 9)
4.3
Relational Key
• Super Key Satu atribut/kumpulan atribut yang secara unik mengidentifikasikan sebuah tupel di dalam relasi. • Candidate Key Atribut di dalam relasi yang biasanya mempunyai nilai unik. • Primary Key Candidate key yang dipilih untuk mengidentifikasikan tupel secara unik dalam relasi. 7
(ex: member_id, id_buku, id_penulis, no_rak, ) • Alternate Key Candidate key yang tidak dipilih sebagai primary key. • Foreign Key Atribut dengan domain yang sama yang menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa Dalam pembuatan database perpusatakaan, telah ditentukan beberapa primary key. Primary key tersebut haruslah unik, artinya tidak mungkin ada nilai rinci data yang sama pada semua record dalam basis data perpustakaan. • Integritas Entity Pada basis data ini nilai atribut yang dipilih sebagai primary key tidak boleh null (kosong) untuk setiap record yang ada dalam relasi. • Integritas Referensi Berhubungan dengan dua atau lebih tabel/relasi dalam suatu sistem basis data yang menggunakan primary key yang sama.
4.4
Bahasa pada Relational Database
Menggunakan bahasa query pernyataan yang diajukan untuk mengambil informasi. 1. Bahasa Formal Bahasa query yang diterjemahkan dengan menggunakan symbol-simbol matematis dan symbol-simbol logika.¡, ¿, ¡=, ¿=, =, !=, AND, OR, NOT 2. Bahasa Komersial Dalam database ini pengguna menggunakan Bahasa Komersial untuk memudahkan pengguna dalam penggunaannya (user friendly).
8
4.5
Entity Relationship Diagram
4.6
Relationship antar entity
9
5
5.1
KESIMPULAN DAN SARAN
Kesimpulan
1. Dengan menggunakan database yang berbasis web, proses pengolahan data akan lebih efektif dari segi penggunaan maupun waktu. Database yang berbasis web dapat diakses dengan cepat karena dengan sangat mudah dapat diakses melalui web browser apa saja. 2. Dengan menggunakan database berbasis web keakuratan dalam mencari data lebih baik dikarenakan banyak fitur-fitur seperti ’find’ yang sering dimanfaatkan dalam pencarian data.
5.2
Saran
Diharapkan kepada pengembang database dapat membuat interface yang memiliki fitur yang lebih lengkap dari sebelumnya, khususnya fitur-fitur yang berhubungan dengan hal pengolahan data.
10
LAMPIRAN 1. Tabel buku
11
2. Tabel member
12
3. Tabel rak
4. Tabel penulis
13
5. Tabel peminjaman
14
6. Operasi Query Pada Database
15