Anda di halaman 1dari 13

105

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
106
Dengan adanya gambaran di atas, diharapkan Anda tidak menga-
lami 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 lang-
sung kepada konsumen. Semua barang dagangan yang diperjual-
belikan 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 pemba-
yaran 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 se-
karang telah aktif di dalam database oleholehdb.
107
6.4 Membuat Tabel Operator
Tabel Operator digunakan untuk merekam data-data pengguna yang
akan mengoperasikan sistem ini. Untuk dapat mengoperasikan sis-
tem, 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 4
nm_operator VARCHAR 45
kelamin CHAR 1
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 data-
base OlehOlehDb bernama operator. Berikut hasil tabel yang dibuat.
108

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 password-
nya adalah aa.
6.5 Membuat Tabel Supplier
Tabel Suplayer digunakan untuk merekam data-data supplier.
Supplier adalah instansi atau pihak yang menyediakan semua oleh-
oleh yang dijual oleh toko. Dengan adanya pencatatan nama
supplier, kita dapat mendokumentasikan daftar supplier yang ada
dan dapat dihubungkan pada transaksi pengambilan barang (pem-
belian). Berikut desain tabelnya.
Tabel 6.2 Struktur Desain Tabel Suplayer
Kolom Tipe data Panjang
kd_spl * CHAR 4
nama_spl VARCHAR 35
109
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.

110
Tabel 6.3 Struktur Desain Tabel jenis_oleh_oleh
Kolom Tipe data Panjang
kd_jenis * CHAR 3
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 digu-
nakan 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.

111
Tabel 6.4 Struktur Desain Tabel oleh_oleh
Kolom Tipe data Panjang
kd_oleh_oleh * CHAR 5
kd_jenis CHAR 3
nm_oleh_oleh VARCHAR 60
harga_satuan INT 11
stok SMALLINT 6
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 seka-
rang memiliki tabel baru bernama oleh_oleh. Berikut deskripsinya.


112
6.8 Membuat Tabel TransPembelian
dan det_transpembelian
Tabel transpembelian merupakan tabel yang digunakan untuk me-
rekam 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 7
kd_spl CHAR 4
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 pembuatan-
nya.

Setelah tabel transpembelian dibuat, sekarang Anda dapat membuat
tabel det_transpembelian. Tabel ini berfungsi untuk merekam detail
113
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 7
kd_oleh_oleh CHAR 5
harga_beli DOUBLE
persen_hrg_jual SMALLINT 6
jumlah SMALLINT 6

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 pembuatan-
nya.

114
6.9 Membuat Tabel TransPenjualan
dan det_transpenjualan
Tabel tranpenjualan merupakan tabel yang digunakan untuk me-
rekam 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 7
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 me-
miliki 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
115
(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 7
kd_oleh_oleh CHAR 5
jumlah SMALLINT 6

Dengan melihat struktur desain tabel di atas, Anda dapat mene-
rapkannya 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 ber-
nama oleholehdb. Sehingga, pada akhir perintah, Anda telah memi-
liki semua tabel lengkap. Berikut tampilannya.
116

6.10 Menjalankan File Dump
Dari beberapa proses pembuatan database oleholehdb sampai
dengan pembuatan tabel det_transpenjualan, jika sebagian dari pem-
baca 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 direk-
tori 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 affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)
mysql>
117
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

Anda mungkin juga menyukai