Anda di halaman 1dari 13

MAKALAH PPBD

PRAKTIKUM PERANCANGAN BASIS DATA

12136401 Ajeng Nur Mulyaningtyas 12137396 Asmanah Eka Putri 12135599 Hendri Mahmud Nawawi 12137392 Irna Merdiana 12135309 Ryan Maulana Putra 12131064 Tutut Melianasari

APRIL 2014
KELOMPOK 4

DAFTAR ISI

I. II. III.

Sampul Depan .. Daftar Isi .. Kasus Penerapan Normalisasi ... a. Bentuk Un-Normal ( UNF ) b. Bentuk Normalisasi ke-1 ( 1 NF ) .. c. Bentuk Normalisasi ke-2 ( 2 NF) ... d. Bentuk Normalisasi ke-3 ( 3 NF) ...

i 1 2 3 3 4 4 5 5 5 6 6 7

IV.

Pembahasan Materi ..... a. Primary Key .... b. Foreign Key ..... c. Auto Increment ..... d. Join / Penggabungan lebih dari 2 tabel .. e. Pembuatan Atribut Derivatif . f.
g.

Query Order By .. 7 - 8 Query Where dalam filterisasi .. 9

Kelompok 4 12.2A.17 1

KASUS PENERAPAN NORMALISASI


A. PENGERTIAN PERSEDIAN BARANG Persediaan Barang adalah barang yang dimiliki untuk di jual kembali. Data persediaan barang dagang terdiri dari kode supplier, nama supplier, kode barang, nama barang, stok awal, barang keluar, dan stok akhir . B. CONTOH KASUS Laporan ini menampilkan informasi tentang persediaan barang Persediaan per 1 April 2014 MANTAP ELEKTRONIK .

Berikut ini disajikan data persedian dari MANTAP ELEKTRONIK untuk tanggal 1 April 2014 :

MANTAP ELEKTRONIK
Persediaan Barang 1 April 2014

NO

KODE SUPPLIER A-001 B-002 A-001

NAMA SUPPLIER Akom Bikom Akom Akom

KODE BARANG LD17 UT03 TP01 PR01 FD08 MS02 KS03 KB02 CD01 SP01

NAMA BARANG

SATUAN BARANG Buah Meter Botol Buah Buah Buah RIM Buah Pack Set

PERSEDIAAN BARANG STOK AWAL 5 20 14 13 3 6 8 10 20 15 BARANG KELUAR 0 10 5 2 1 6 4 5 15 7 STOK AKHIR 5 10 9 11 2 0 4 5 5 8

001 002 003 004 005 006 007 008 009 010

Monitor LCD 17" Kabel UTP Tinta Printer S Printer E Flashdisk 8Gb Mouse Kertas Keyboard CD Blank Speaker E

B-002

BIkom BIkom

C-003 B-002

Cikom BIkom BIkom

C-003

Cikom

Kelompok 4 12.2A.17 2

UN-NORMAL (U-NF) Bentuk ini merupakan kumpulan data yang akan direkam, dan tidak ada keharusan mengikuti suatu format tertentu. Dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan saat menginput.

Tabel Persediaan Barang No Persediaan Kode Supplier Nama Supplier Kode Barang Nama Barang Satuan Stok Awal Barang Keluar Stok Akhir

NORMALISASI ke-1 (1 NF) Tabel Persediaan Barang No Persediaan * Kode Supplier * Nama Supplier Kode Barang * Nama Barang Satuan Stok Awal Barang Keluar

Stok Akhir

Keterangan : * = Candidate Key

Kelompok 4 12.2A.17 3

NORMALISASI ke-2 (2 NF)


Bentuk normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk normal kesatu. Atribute bukan kunci haruslah bergantung secara fungsi pada kunci utama/primary key. Sehingga untuk membentuk normal kedua haruslah sudah ditentukan kunci-kunci field. Kunci field haruslah unik dan dapat mewakili atribute lain yg menjadi anggotanya.

Tabel Persediaan Barang No Persediaan * Kode Supplier ** Tabel Supplier Kode Supplier * Nama Supplier Kode Barang **

Stok Awal
Barang Keluar Stok Akhir

TabelBarang Kode Barang * Nama Barang Harga Satuan

Keterangan : * ** : Primary Key : Foreign Key : One to Many Relationship : One to One Relationship

NORMALISASI ke-3 (3 NF)


Untuk menjadi bentuk normal ketiga maka relasi haruslah dalam bentuk normal kedua dan semua atribute bukan primer tidak punya hubungan yang transitif. Dengan kata lain, setiap atribute bukan kunci haruslah bergantung hanya pada primary key dan pada primary key secara menyeluruh.

Tabel Persediaan Barang No Persediaan * Kode Supplier ** Tabel Supplier Kode Supplier * Nama Supplier

Kode Barang **
Stok Awal BarangKeluar

TabelBarang
Kode Barang * Nama Barang Harga Satuan

Keterangan : * ** : Primary Key : Foreign Key : One to Many Relationship : One to One Relationship

Kelompok 4 12.2A.17 4

Pembahasan Materi

1.

Primary Key
Primary Key adalah suatu field unik yang harus ada pada sebuah tabel. a. Menyisipkan Primary Key

Alter table nama_tabel add primary key (nama_field) ;


b. Menghapus Primary Key

Alter table nama_tabel drop primary key ;

2.

Foreign Key
Foreign Key adalah suatu key yang mengacu pada primary key tabel lain atau tabel utama. a. Menyisipkan Foreign Key

Alter table nama_tabel add CONSTRAINT nama_foreignkey foreign key (nama_field) references tabel_utama (field_primarykey) ON DELETE CASCADE ON UPDATE CASCADE ;
* ON DELETE CASCADE adalah sebuah fitur/fungsi yang diberikan untuk sebuah tabel yang berelasi, yang memungkinkan untuk menghapus data pada tabel anak apabila data pada tabel parent terhapus. Sintaks on delete cascade biasanya ditempatkan pada kalimat yang mendeklarasikan sebuah foreingn key. * ON UPDATE CASCADE adalah sebuah fitur/fungsi yang diberikan untuk sebuah tabel yang berelasi, yang memungkinkan untuk mengupdate data otomatis pada tabel anak apabila data pada tabel parent diupdate. ** jika pada pendeklarasian foreign key tidak menspesifikasikan nama foreign key nya, bisa di lihat dengan query :

show create table nama_tabel ;


b. Menghapus Foreign Key

Alter table nama_tabel drop foreign key nama_foreignkey ;

Kelompok 4 12.2A.17 5

3.

Auto Increment Auto-increment memungkinkan nomor unik akan dihasilkan ketika sebuah record baru dimasukkan ke dalam tabel.
a. Menambahkan Field Auto Increment

Alter table nama_tabel add nama_field int not null auto_increment;


b. Mengubah field menjadi Auto Increment

Alter table nama_tabel modify nama_field int not null auto_increment;


c. Menghapus Auto Increment

Alter table nama_tabel modify nama_field int not null;


d. Me-reset Auto Increment

Alter table nama_tabel auto_increment=1;

4.

Penggabungan / Join lebih dari 2 Tabel


Syntax dasar :

SELECT tabel1.fieldA, tabel2.fieldB, tabel3.fieldC, tabelN.fieldN FROM tabel1, tabel2, tabel3, tabelN WHERE tabel1.fk_tabel1=tabel2.pk_tabel2 and tabel2.fk_tabel2=tabel3.pk_tabel3 and tabelN.fk_tabelN=tabelN.pk_tabelN
Contoh :

Kelompok 4 12.2A.17 6

5.

Pembuatan Atribut Derivatif


Karena pada kasus diatas terdapat atribut stok keluar, dimana atribut tersebut dihasilkan dari atribut lain (Atribut Derivatif) yaitu atribut stok awal dikurangi barang keluar. Maka untuk membuat atribut tersebut dapat menggunakan query sbb:

(tb_pbarang.st_awal-tb_pbarang.brg_keluar) as st_akhir
disimpan pada query select :

SELECT tb_pbarang.no, tb_pbarang.kd_supply, tb_supply.nm_supply, tb_pbarang.kd_brg, tb_brg.nm_brg, tb_brg.satuan, tb_pbarang.st_awal, tb_pbarang.brg_keluar, (tb_pbarang.st_awal-tb_pbarang.brg_keluar) as st_akhir FROM tb_pbarang, tb_supply, tb_brg WHERE tb_pbarang.kd_supply=tb_supply.kd_supply and tb_pbarang.kd_brg=tb_brg.kd_brg;
Contoh :

6.

Order By Digunakan untuk mengurutkan data berdasarkan kolom (field) tertentu. Secara default, urutan tersusun secara ascending (urut kecil ke besar). Anda dapat mengubahnya menjadi descending (urut besar ke kecil) dengan menambahkan perintah DESC. a. Order By Ascending (menaik) ORDER BY nama_field;

Kelompok 4 12.2A.17 7

Contoh :

b. Order By Descending (menurun) ORDER BY nama_field desc; Contoh :

c. Order By Several Columns (dari beberapa kolom/field) ORDER BY nama_field1, nama_field2, nama_fieldN ASC|DESC ; Contoh :

Kelompok 4 12.2A.17 8

7.

Where Where digunakan untuk mem-filter (menyaring) suatu record. Syntax umum : WHERE nama_field operator value;
Contoh filtering field Teks :

Contoh filtering field Numeric :

Kelompok 4 12.2A.17 9

Daftar Pustaka

Achmad Solichin (2010). MySQL 5 Dari Pemula Hingga Mahir,[PDF]. Tersedia: http://achmatim.net [16 April 2014] http://ajiebboon.blogspot.com/2013/06/fungsi-cascade-di-mysql.html [18 April 2014] http://akatsukikomputer.blogspot.com/2010/05/cara-membuat-foreign-key-dalam-table.html [18 April 2014] http://jangjae.wordpress.com/2010/04/09/membuat-relationship-di-mysql-dengan-foreign-key/ [18 April 2014] http://melsaecha.blogspot.com/2011/01/foreign-key.html [21 April 2014] http://mysql.phi-integration.com/sql/membuat-field-auto-increment-pada-mysql [21 April 2014] http://www.atwiwit.net/2013/11/cara-menghapus-foreign-key-pada-tabel.html [18 April 2014] http://www.clusterdb.com/mysql-cluster/foreign-keys-in-mysql-cluster [18 April 2014] http://www.ilmusoftware.com/2010/06/menghitung-umur-dalam-query-sql-server.html [21 April 2014] http://www.w3schools.com/ [10 April 2014] http://www.zainalhakim.web.id/posting/mereset-nilai-auto-increment-dalam-mysql.html [21 April 2014]

Kelompok 4 12.2A.17 10

Form Penilaian
Kelompok : 4 Kelas : 12.2A.17

No.

NIM

Nama

Keterangan

Nilai

Paraf

12136401

Ajeng Nur Mulyaningtyas

12137396

Asmanah Eka Putri

12135599

Hendri Mahmud Nawawi

12137392

Irna Merdiana

12135309

Ryan Maulana Putra

12131064

Tutut Melianasari

Evaluasi Penilaian :

Kelompok 4 12.2A.17 11

Form Penilaian
Kelompok : 4 Kelas : 12.2A.17

No.

NIM

Nama

Keterangan

Nilai

Paraf

12136401

Ajeng Nur Mulyaningtyas

12137396

Asmanah Eka Putri

12135599

Hendri Mahmud Nawawi

12137392

Irna Merdiana

12135309

Ryan Maulana Putra

12131064

Tutut Melianasari

Evaluasi Penilaian :

Anda mungkin juga menyukai