2. NORMALISASI
a. Bentuk Unnormalized

b. Normal ke-1 (1NF)
Syarat : * Bentuk normal 1NF terpenuhi jika sebuah tabel tidak memiliki atribut bernilai banyak (multivalued attribute), atribut composite atau kombinasinya dalam domain data yang sama.
*Setiap atribut dalam tabel tersebut harus bernilai atomic (tidak dapat dibagi-bagi lagi)



c. Bentuk Normal ke-2 (2NF) Syarat : Bentuk normal 2NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk 1NF, dan semua atribut selain primary key, secara utuh memiliki Functional Dependency pada primary key.
Ketergantungan fungsional dai tabel 1NF di atas :
Tabel hasil 2NF :
Tabel Sales
| Kd_Sales | Nama_Sales | Jns_Kelamin | Umur | Alamat |
| 001 | Antoni | L | 28 | Jl. Murai 1 |
| 002 | Budi | L | 25 | Jl. Gagak 3 |
| 003 | Charles | L | 23 | Jl. Kamboja 10 |
Tabel Pembeli
| ID_ Pembeli | Nama_ Pembeli | Tmpt_Lhr | Tgl_Lhr | Jns_Kelamin | Pekerjaan | Alamat |
| 123456 | Halimi | Padang | 01-01-1960 | L | Tani | Padang |
| 123457 | Anizar | Padang | 01-02-1970 | P | PNS | Padang |
| 123458 | Halifah | Lintau | 22-09-1990 | P | Mhs | Pyk |
| 123459 | Suswarti | Bukittinggi | 15-08-1984 | P | PNS | Lintau |
Tabel Kendaraan
| Kd_Kend | Merek | Stok | Harga_Jual |
| YM001 | Yamaha Mio CW | 20 | 12.400.000 |
| YM002 | Yamaha Xeon | 10 | 15.625.000 |
| YM003 | Yamaha Mio Soul | 15 | 13.500.000 |
Tabel Pembelian
| ID_Pembeli | Kode_Kend | Diskon | Bonus |
| 123456 | YM01 | - | Helm |
| 123457 | YM01 | 100000 | Jacket |
| 123458 | YM02 | 200000 | Sarung Tangan |
| 123459 | YM03 | 150000 | Kacamata |
Tabel Penjualan
| Kd_Sales | Kode_Kend | Jumlah |
| 001 | YM01 | 1 |
| 002 | YM01 | 1 |
| 002 | YM02 | 1 |
| 003 | YM02 | 1 |
| 003 | YM03 | 1 |
Tabel Transaksi
| Kode_Sales | ID_Pembeli | No_Faktur | Tanggal |
| 001 | 123456 | 567890 | 25-12-2010 |
| 002 | 123457 | 567891 | 26-12-2010 |
| 002 | 123457 | 567892 | 27-12-2010 |
| 003 | 123458 | 567893 | 28-12-2010 |
| 003 | 123459 | 567894 | 29-12-2010 |
d. Bentuk Normal ke-3 (3NF)
Syarat : Bentuk normal 3NF terpenuhi jika telah memenuhi bentuk 2NF, dan jika tidak ada atribut non primary key yang memiliki ketergantungan terhadap atribut non primary key yang lainnya. ( tidak terdapat ketergantungan transitif ).
Pada tabel 2NF di atas tidak tedapat ketergantungan transitif, jadi bentuk 2Nf di atas sudah mewakilkan bentuk 3NF ( 2NF=3NF ).
3. KARDINALITAS
Database yang dirancang adalah database dealer sepeda motor pabrik Yamaha. Asumsikan :
a. Setiap pembeli hanya membeli satu sepeda motor
b. Pembagian bonus dan diskon tidak memiliki ketentuan ( diberikan secara acak )
4. STRUKTUR TABEL
| Tabel | Nama Field | Type Data | Ukuran | Ket |
| Sales | Kd_Sales | Varchar | 10 | Primary Key |
| Nama_Sales | Varchar | 30 | - | |
| Jns_Kelamin | Varchar | 1 | - | |
| Umur | Int | 2 | - | |
| Alamt | Varchar | 30 | - | |
| Pembeli | ID_Pembeli | Varchar | 10 | Primary Key |
| Nama_Pembeli | Varchar | 30 | - | |
| Tmpt_Lhr | Varchar | 20 | - | |
| Tgl_Lhr | Date | | - | |
| Jns_Kelamin | Varchar | 1 | - | |
| Pekerjaan | Varchar | 20 | - | |
| Alamat | Varchar | 30 | - | |
| Kendaraan | Kd_Kend | Varchar | 10 | Primary Key |
| Merek | Varchar | 20 | - | |
| Stok | Int | 3 | - | |
| Harga_Jual | Varchar | 15 | - | |
| Penjualan | Kd_Sales | Varchar | 10 | Foreign Key |
| Kd_Kend | Varchar | 10 | Foreign Key | |
| Jumlah | Int | 2 | - | |
| Pembelian | ID_Pembeli | Varchar | 10 | Foreign Key |
| Kd_Kend | Varchar | 10 | Foreign Key | |
| Diskon | Varchar | 15 | - | |
| Bonus | Varchar | 15 | - | |
| Transaksi | Kode_Sales | Varchar | 10 | Foreign Key |
| ID_Pembeli | Varchar | 10 | Foreign Key | |
| No.Faktur | Varchar | 10 | | |
| Tanggal | Date | | |
6. INTERFACE
Dalam perancangan database ini digunakan software xampp. XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl. XAMPP dikembangkan dari sebuah tim proyek bernama Apache Friends.
Ketika menginstal software xampp, paket program yang terdapat didalamnya seperti apache dan mysql sudah otomatis terinstal. Tapi pada praktek ini, menggunakan apache yang terpisah dari software xampp, karena apache yang terpaket dalam software tidak bisa di install di windows 7. Hal ini mungkin dikarenakan oleh versi software yang masih belum didukung oleh windows 7.Untuk cara install xampp di win7 silahkan tanya sama om google atau untuk download xampp klik disini
Langkah kerja :
1. Install software xampp dan apache server
2. Setelah keduanya terinstall, klik icon start apache untuk memulai
3. Klik xampp control panel, aktifkan tanda centang pada kotak Svc MySql, kemudian pilih start sehingga MySql menjadi Running
4. Klik Admin atau untuk memulai dari browser ketikkan alamat http://localhost/ pada address dan klik phpmyadmin
5. Untuk membuat database dan tabel dapat dilakukan melalui MySql Comman Line yang terdapat pada MySql server ataupun langsung melalui localhost
6. Buat database baru yaitu dealer dan tabel yang dibutuhkan. Inputkan data melalui localhost xampp dan tentukan field yang menjadi Primary Key,
7. Untuk menentukan foreign key pada MySql pada phpmyadmin type tabel harus diganti menjadi INNODB, pertama sekali atur configurasi agar Storage Engine INNODB aktif, setelah itu tuliskan perintahnya, bentuk umum : ALTER TABLE namatabel ENGINE = InnoDB; dan tentukan field yang akan menjadi foreign key contohnya tabel pembelian :
ALTER TABLE pembelian
ADD CONSTRAINT FOREIGN KEY (ID_Pembeli) REFERENCES pembeli(ID_Pembeli)
ON DELETE CASCADE ON UPDATE CASCADE;Hal ini berarti jika kita melakukan perubahan field ID_Pembeli pada tabel pembeli
maka akan langsung mempengaruhi tabel pembelian pada field ID_Pembeli Untuk interfacenya, apache yang digunakan adalah dari php triad. Langkah pertama yaitu mengkoneksikan php dengan mysql, gunakan script berikut :Selanjutnya silahkan buat script yang dibutuhkan, setelah itu tinggal memanggilnya di localhost.
Contoh hasilnya seperti berikut :






34 komentar:
Mantabh..
sesuai dengan kebutuhanku :)
@ArthurPascal:tq bro..smoga bermanfaat :)
Join dong blog-ku.. :)
http://arthursumandag.blogspot.com/
makasih
@ArthurPascal:okay bro :)
Boleh Men Copy File jadinya. . ??
untuk referensi
effand@ymail.com
file yang mananya gan?
Mba boleh minta script lengkap ny dari db smpe tampilan utk k web
saya baru belajar ag susah memahami klw ga lngsung d praktekin
mohon kbaikan hati mba untk mengirimkan script ny
terima kasih
@ito.blogspot.com: maaf, kbtulan script db nya lupa d simpan sblm instal kmrn,tp script buat ke web sm lpornnya ada. silhkan dwnload di sini https://www.dropbox.com/s/puc3xt80l9vcp3w/TA.rar
makasih mbak, bermanfaat buat smester 4 aku :)
@Anonim: sama-sama :)
boleh minta data basenya yang sudah jadi?
scriptnya mana mba kok ga bisa di link url nya
@Tri Suyatno: buat script php nya https://www.dropbox.com/sh/5g6q2aedj312we5/AADVtvf54M4DcYWf6A1VYlRDa?dl=0
thx
kalo boleh minta file database nya kak?
terima kasih
@latif mb: samasama :)
@Rian:boleh..
mkasih ini sangat membantu mengerjakan tugas kuliah :D
Masama.. senang bisa bermanfaat :)
Thanks ya...
@rico pacific:Samasama..
mba script db nya gada?
@Anonim: Maaf ya, gk ada, saya lupa simpan
thanks kaka sangat membantu tugas
samasama @Abdul Latief Mukti Mufida senang bisa membantu :)
mba bisa minta databasenya ngak..
terimakasih banyak, akhirnya tugas kuliah kelar :D
@noger gomes: Maaf sekali, saya lupa save file dbnya sebelum instal ulang
@Anonim: Sama-sama, semoga bermanfaat :)
untuk relasi antar tabelnya gimana ya mbak ??
@Reynaldo: itu ada di erdnya...
Mbak, mau nnya, kata dosen saya kalau kardinalitasnya many to many, harus di pecah mbak, sekiranya klau memang di pecah saya harus menambah entitas apa ya mbak ?
@Setiti Wahyu Ningtyyas: Ngak harus dipecah mbak, tergantung kasusnya apa. Many to many memang merupakan salah satu bentuk kardinalitas yang dapat digunakan, contohnya digunakan untuk kasus di atas.
bagi link headernya dong
Posting Komentar