CI: Online Library Project #2 – Database


2 days not blogging and I’ve finished it! But it lacks of almost everything. -.-

Jadi totalnya ada 4 controller, 3 model dan banyak view -.- Sebenarnya saya bingung bagaimana cara untuk menjelaskannya, jadi saya akan coba untuk menjelaskan fungsi permodel dan fungsi percontroller. Untuk #2 ini akan dikhususkan ke database, #3 model, dan #4 controllernya.

DBMS yang saya gunakan adalah MySQL, dan menggunakan phpMyAdmin sebagai interaksi GUInya. Ada 5 tabel yang ada di database aplikasi ini, namun 3 dari tabel tersebut berasal dari Ion_auth library. Untuk mempermudah 3 tabel ini akan dianggap sebagai 1 kesatuan, tabel user. 2 tabel yang lain adalah tabel buku dan tabel peminjaman.

Buku
Atributnya id_buku, tanggal (tanggal buku ditambah ke pustaka), judul, penulis, jumlah (jumlah buku dengan id yang sama yang dimiliki oleh pustaka), dan lama peminjaman (Lama peminjaman buku tersebut yang diperbolehkan.

User
NIM
, username, password, nama, alamat, phone.

Peminjaman
NIM
, id_buku, tanggal_pinjam, tanggal_kembali

Dari database ini, jika ingin dicari siapa meminjam buku apa atau buku dipinjam siapa aja, maka dapat dilihat di tabel peminjaman. Yang belum terlihat di tabel ini adalah yang terlambat mengembalikan dan belum mengembalikan buku. Untuk yang belum mengembalikan, dilihat dari tabel peminjaman. Setiap user yang meminjam buku, datanya akan dimasukkan ke tabel tersebut, dengan tanggal_kembali NULL.Jadi yang memiliki tanggal_kembali NULL, user dengan nim sekian belum mengembalikan buku dengan id sekian yang dipinjam tertanggal sekian.

Bagaimana dengan yang terlambat mengembalikan? Kita bisa melihatnya dengan mengambil lama peminjaman dari tabel buku dengan id_buku, dan melihat apakah tanggal hari ini lebih kecil daripada tanggal pinjam ditambah lama peminjaman.

Bagaimana dengan jumlah buku yang ada sekarang? Dengan menghitung jumlah buku yang ada, dikurangi jumlah buku yang sedang dipinjam. Jumlah buku yang sedang dipinjam didapat dengan menghitung buku dengan id sekian yang berada di tabel peminjaman dan memiliki tanggal_kembali NULL.

Saya rasa itu aja mengenai databasenya. Ternyata cukup sederhana ya :))

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s