Anda di halaman 1dari 13

Merancang Database

Aplikasi Penjualan
Sebelum melangkah ke Bab 7 yang membahas studi kasus, Anda
wajib membaca dan melakukan semua yang ada di dalam bab ini.
Sebab dalam bab ini akan dibahas dasar-dasar dari sistem yang
akan dibangun pada bab selanjutnya.

6.1

Melihat Relasional Tabel

Penggambaran hubungan/relasi tabel ini kami maksudkan untuk


mempermudah Anda dalam memahami sistem. Berikut bentuk
relasinya apabila digambarkan dari aplikasi Visio.

Gambar 6.1 Hubungan Antartabel pada oleholehdb

105

Dengan adanya gambaran di atas, diharapkan Anda tidak mengalami kebingungan atau kesulitan untuk membuat programnya.

6.2

Memahami Prosedur Program

Sebagai tempat kasus dari aplikasi yang akan dibuat adalah sebuah
toko penjualan oleh-oleh. Toko tersebut melakukan penjualan langsung kepada konsumen. Semua barang dagangan yang diperjualbelikan tidak diproduksi sendiri, tetapi toko tersebut juga membelinya
secara langsung kepada pabrik atau supplier.
Dari gambaran di atas, yang perlu Anda buat adalah sebuah aplikasi
yang dapat membantu penjual untuk melakukan pencatatan setiap
transaksi yang dilakukan, termasuk penjualan dan pembeliannya.
Pada proyek ini, program belum mampu untuk menangani pembayaran secara kredit. Sistem pembayarannya secara tunai.

6.3

Membuat dan Mengaktifkan Database

Pada gambaran sebelumnya, Anda perlu memikirkan seberapa besar


database yang akan diperlukan. Dari hasil pemikiran tersebut, Anda
akan mengira-ngira berapa dan apa tabel yang akan digunakan
sebagai media penyimpanan datanya.
Dari analisis kami, untuk membuat aplikasi ini kita membutuhkan
8 tabel yang terdiri atas 6 tabel master dan 2 tabel transaksi.
Kedelapan tabel tersebut berada di dalam direktori Database dan
disimpan dengan nama oleholehdb.
mysql> CREATE DATABASE oleholehdb;
Query OK, 1 row affected (0.00 sec)

Selanjutnya, aktifkanlah database yang terbuat dengan perintah


berikut:
mysql> USE oleholehdb;
Database changed

Pernyataan Database changed di atas menandakan Anda sekarang telah aktif di dalam database oleholehdb.

106

6.4

Membuat Tabel Operator

Tabel Operator digunakan untuk merekam data-data pengguna yang


akan mengoperasikan sistem ini. Untuk dapat mengoperasikan sistem, setiap pengguna harus memiliki user dan password untuk login.
Data-data inilah yang disimpan dalam tabel operator. Berikut desain
tabelnya.
Tabel 6.1 Struktur Desain Tabel Operator
Kolom

Tipe data

Panjang

kd_operator *

CHAR

nm_operator

VARCHAR

45

kelamin

CHAR

alamat

VARCHAR

100

user_id

VARCHAR

25

pass_id

VARCHAR

25

Dari desain tabel operator di atas, Anda dapat membuatnya dalam


database MySQL menggunakan perintah berikut:
CREATE TABLE operator (
kd_operator CHAR(4) NOT NULL,
nm_operator VARCHAR(45) NOT NULL,
kelamin CHAR(1) NOT NULL,
alamat VARCHAR(100) NOT NULL,
user_id VARCHAR(25) NOT NULL,
pass_id VARCHAR(25) NOT NULL,
PRIMARY KEY (Kd_Operator)
);

Apabila berhasil, Anda akan mendapatkan tabel baru dalam database OlehOlehDb bernama operator. Berikut hasil tabel yang dibuat.

107

Untuk data standar, Anda dapat memasukkan dua contoh data


dengan perintah berikut:
INSERT INTO operator
VALUES ('OP01', 'Bunafit Nugroho', 'P',
'Way Jepara, Lampung', 'NoBoN', 'aa');
INSERT INTO operator
VALUES ('OP02', 'Indah Indriyana', 'W',
'Way Jepara, Lampung', 'indah', 'aab');

Catatan
Nilai data yang dimasukan pada tabel operator di atas
nantinya yang akan digunakan untuk login sistem. Jadi,
Anda dapat login dengan user NoBoN dan passwordnya adalah aa.

6.5

Membuat Tabel Supplier

Tabel Suplayer digunakan untuk merekam data-data supplier.


Supplier adalah instansi atau pihak yang menyediakan semua oleholeh yang dijual oleh toko. Dengan adanya pencatatan nama
supplier, kita dapat mendokumentasikan daftar supplier yang ada
dan dapat dihubungkan pada transaksi pengambilan barang (pembelian). Berikut desain tabelnya.
Tabel 6.2 Struktur Desain Tabel Suplayer
Kolom

Tipe data

Panjang

kd_spl *

CHAR

nama_spl

VARCHAR

35

108

alamat_spl

VARCHAR

100

no_telp

VARCHAR

15

no_hp

VARCHAR

15

keterangan

MEDIUMTEXT

Dari desain tabel di atas, Anda dapat membuatnya dalam MySQL


menggunakan perintah berikut:
CREATE TABLE suplayer (
kd_spl CHAR(4) NOT NULL,
nama_spl VARCHAR(35) NOT NULL,
alamat_spl VARCHAR(100) NOT NULL,
no_telp VARCHAR(15) NOT NULL,
no_hp VARCHAR(15) default NULL,
keterangan MEDIUMTEXT,
PRIMARY KEY (Kd_Spl)
);

Setelah perintah SQL di atas dijalankan, Anda akan mendapatkan


tabel baru bernama suplayer. Berikut deskripsi tabel yang terbentuk.

6.6

Membuat Tabel Jenis

Pada studi kasus yang dibuat, tabel dibuat dengan nama


jenis_oleh_oleh. Tabel ini digunakan untuk mengategorikan jenis
oleh-oleh atau jenis barang yang dijual. Dengan cara ini, kita dapat
mengelompokkan setiap makanan ke dalam jenis tersendiri. Berikut
desain tabelnya.

109

Tabel 6.3 Struktur Desain Tabel jenis_oleh_oleh


Kolom

Tipe data

Panjang

kd_jenis *

CHAR

nama_jenis

VARCHAR

50

keterangan

VARCHAR

100

Dari desain tabel di atas, Anda dapat membuatnya dalam MySQL


menggunakan perintah berikut:
CREATE TABLE jenis_oleh_oleh (
kd_jenis CHAR(3) NOT NULL,
nama_jenis VARCHAR(50) NOT NULL,
keterangan VARCHAR(100) default NULL,
PRIMARY KEY (Kd_Jenis)
);

Setelah perintah pembuatan tabel di atas dijalankan, sekarang Anda


telah memiliki tabel baru bernama jenis_oleh_oleh. Berikut struktur
hasil pembuatannya.

6.7

Membuat Tabel Barang

Barang yang dijual dalam aplikasi yang dibuat adalah oleh-oleh


sehingga tabelnya dibuat dengan nama OlehOleh. Tabel ini digunakan untuk merekam semua data makanan/oleh-oleh yang dijual
pada toko. Pada tabel ini, kita memiliki kolom kunci tamu yang
berasal dari tabel jenis_oleh_oleh. Nama kunci tamu tersebut adalah
kd_jenis. Berikut desain tabelnya.

110

Tabel 6.4 Struktur Desain Tabel oleh_oleh


Kolom

Tipe data

Panjang

kd_oleh_oleh *

CHAR

kd_jenis

CHAR

nm_oleh_oleh

VARCHAR

60

harga_satuan

INT

11

stok

SMALLINT

keterangan

MEDIUMTEXT

Dari desain tabel di atas, Anda dapat membuatnya dalam MySQL


menggunakan perintah berikut:
CREATE TABLE oleh_oleh (
kd_oleholeh CHAR(5) NOT NULL,
kd_jenis CHAR(3) NOT NULL,
nm_oleholeh VARCHAR(60) NOT NULL,
harga_satuan INT(11) NOT NULL default '0',
stok SMALLINT(6) NOT NULL default '0',
keterangan MEDIUMTEXT,
PRIMARY KEY (Kd_OlehOleh)
);

Setelah perintah di atas Anda jalankan, apabila berhasil, Anda sekarang memiliki tabel baru bernama oleh_oleh. Berikut deskripsinya.

111

6.8

Membuat Tabel TransPembelian


dan det_transpembelian

Tabel transpembelian merupakan tabel yang digunakan untuk merekam proses transaksi pembelian berlangsung. Sedangkan data
lengkap yang menjadi informasi detail dari pembelian akan disimpan
pada tabel transaksi bernama det_transpembelian. Berikut kedua
tabel berikut.
Tabel 6.5 Struktur Desain Tabel transpembelian
Kolom

Tipe data

Panjang

no_pembelian *

CHAR

kd_spl

CHAR

tgl_beli

DATE

Dari desain tabel di atas, Anda dapat mengimplementasikan pada


database MySQL menggunakan perintah berikut:
CREATE TABLE transpembelian (
no_pembelian CHAR(7) NOT NULL,
kd_spl CHAR(4) NOT NULL,
tgl_beli DATE NOT NULL default '0000-00-00',
PRIMARY KEY (No_Pembelian)
);

Apabila perintah di atas dijalankan berhasil, Anda sekarang telah


memiliki tabel bernama transpembelian. Berikut hasil pembuatannya.

Setelah tabel transpembelian dibuat, sekarang Anda dapat membuat


tabel det_transpembelian. Tabel ini berfungsi untuk merekam detail

112

dari barang atau oleh-oleh yang dibeli (karena Many to Many).


Desain tabel detail dapat dilihat di bawah ini.
Tabel 6.6 Struktur Desain Tabel det_transpembelian
Kolom

Tipe data

Panjang

id_dpembelian *

INT

7 (Auto)

no_pembelian

CHAR

kd_oleh_oleh

CHAR

harga_beli

DOUBLE

persen_hrg_jual

SMALLINT

jumlah

SMALLINT

Dari desain tabel di atas, Anda dapat menerapkan pembuatannya


pada database MySQL. Untuk itu, jalankanlah perintah berikut:
CREATE TABLE det_transpembelian (
id_dpembelian INT(7) NOT NULL auto_increment,
no_pembelian CHAR(7) NOT NULL,
kd_oleh_oleh CHAR(5) NOT NULL,
harga_beli DOUBLE NOT NULL,
persen_hrg_jual SMALLINT(6) NOT NULL default '0',
jumlah SMALLINT(6) NOT NULL default '0',
PRIMARY KEY (ID_dPembelian)
);

Setelah Anda menjalankan perintah di atas, sekarang Anda memiliki


tabel baru bernama det_transpembelian. Berikut hasil pembuatannya.

113

6.9

Membuat Tabel TransPenjualan


dan det_transpenjualan

Tabel tranpenjualan merupakan tabel yang digunakan untuk merekam proses transaksi penjualan berlangsung. Sedangkan data
lengkap yang menjadi informasi detail dari pembelian akan disimpan
pada tabel transaksi bernama det_transpenjualan.
Tabel 6.7 Struktur Desain Tabel transpembelian
Kolom

Tipe data

Panjang

no_penjualan *

CHAR

nm_pembeli

VARCHAR

45

alamat

VARCHAR

45

tgl_jual

DATE

Dari desain tabel di atas, Anda dapat menerapkannya pada database


MySQL. Caranya Anda dapat menjalankan perintah berikut.
CREATE TABLE transpenjualan (
no_penjualan CHAR(7) NOT NULL,
nm_pembeli VARCHAR(45) NOT NULL,
alamat VARCHAR(45) NOT NULL,
tgl_jual DATE NOT NULL default '0000-00-00',
PRIMARY KEY (No_Penjualan)
);

Setelah perintah SQL di atas dijalankan, sekarang Anda telah memiliki tabel beru bernama transpenjualan. Berikut hasil deskripsinya.

Setelah tabel transpenjualan selesai dibuat, Anda sekarang dapat


melanjutkan pembuatan tabel det_transpenjualan. Tabel ini berfungsi
untuk merekam deskripsi lengkap atau daftar barang yang dijual
114

(dalam hal ini barang yang dibeli konsumen). Desain tabelnya


sebagai berikut.
Tabel 6.8 Struktur Desain Tabel det_transpenjualan
Kolom

Tipe data

Panjang

id_dpenjualan

INT

7 (Auto)

no_penjualan

CHAR

kd_oleh_oleh

CHAR

jumlah

SMALLINT

Dengan melihat struktur desain tabel di atas, Anda dapat menerapkannya dengan menjalankan perintah berikut:
CREATE TABLE det_transpenjualan (
id_dpenjualan INT(7) NOT NULL auto_increment,
no_penjualan CHAR(7) NOT NULL,
kd_oleh_oleh CHAR(5) NOT NULL,
jumlah SMALLINT(6) NOT NULL default '0',
PRIMARY KEY (ID_dPenjualan)
);

Setelah perintah di atas dijalankan, apabila berhasil Anda akan


segera mendapatkan tabel baru bernama det_transpenjualan di
dalam database oleholehdb. Hasil deskripsi tabel tersebut sebagai
berikut.

Yang perlu diingat, semua tabel di atas dibuat pada database bernama oleholehdb. Sehingga, pada akhir perintah, Anda telah memiliki semua tabel lengkap. Berikut tampilannya.

115

6.10 Menjalankan File Dump


Dari beberapa proses pembuatan database oleholehdb sampai
dengan pembuatan tabel det_transpenjualan, jika sebagian dari pembaca masih bingung ataupun sampai saat ini belum membuatnya,
Anda dapat membuatnya dengan cara menjalankan file dump yang
kami sertakan dalam CD penyerta buku.
File dump yang berisi database oleholehdb disimpan dengan nama
file dump_OlehOlehDb.txt, Anda bisa mendapatkannya pada direktori Database. Cara menjalankan file dumpt tersebut seperti berikut.
mysql> SOURCE E:\Database\dump_OlehOlehDb.txt
Query OK, 1 row affected (0.00 sec)
Database changed
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows
Query OK, 0 rows

Query OK, 0 rows


mysql>

116

affected
affected
affected
affected
affected
affected
affected
affected
affected
affected
affected

(0.00
(0.00
(0.00
(0.00
(0.00
(0.00
(0.00
(0.00
(0.00
(0.00
(0.00

sec)
sec)
sec)
sec)
sec)
sec)
sec)
sec)
sec)
sec)
sec)

affected (0.00 sec)

Pada perintah di atas, posisi Anda berada pada prompt MySQL.


Parameter E dari perintah E:\Database\dump_OlehOlehDb.txt
merupakan drive CD-ROM yang ada pada komputer kami. Apabila
CD-ROM komputer Anda terletak pada drive F atau G, Anda dapat
menyesuaikannya.

oooo0oooo

117

Anda mungkin juga menyukai