Kamis, 07 Juni 2012


Tugas ke 3 
MySQL Xxamp : FUNGSIONALITAS NORMALISASI






Nama             : Fayuda Puspanindra
Npm               : 2010 4350 1131
Kelas              : S4_N
Dosen             : Nahot Frastian, S.Kom.
Mata Kuliah      : Praktikum Sistem Basis Data

---------------------------------------------------------------------------------------------


CREATE TABLE `mahasiswa`.`mata_kuliah` (
`npm` CHAR( 15 ) NOT NULL ,
`kode_mata_kuliah` VARCHAR( 10 ) NOT NULL ,
`sks` INT( 5 ) NOT NULL
) ENGINE = MYISAM ;




INSERT INTO `mahasiswa`.`mata_kuliah` (`npm` ,`kode_mata_kuliah` ,`sks`)
VALUES ('201043501102', 'MK-JV01', '1');


Penjelasan :
1.       1. Anomali insert/ kesalahan yang terjadi pada saat proses penyisipan record baru.
   Contoh: Tidak bisa menambahkan kode_mata_kuliah MK-JV02 jika tidak ada mahasiswa yang        mengambil   mata kuliah Java tersebut.




Penjelasan :
1.      2. Anomali Delete/kesalahan yang terjadi disaat proses penghapusan record atau tuple
    Contoh: mahasiswa dengan nomor npm “201043501105” akan membatalkan mengambil mata     kuliah dengan kode mata kuliah MK-BSD02, maka jika didelete record tersebut akan berakibat pada hilangnya informasi tentang kode mata kuliah MK-BSD02.



 Penjelasan :
  3. Anomali update /kesalahan yang terjadi pada saat proses update suatu record

     Contoh: Jika mata kuliah dengan dengan kode MK-JV01 jumlah sksnya akan ditambahkan    menjadi 4 sks, maka akan mengganti pula sks pada mahasiswa dengan npm “201043501101”dan “201043501102”. Hasil perubahannya adalah sebagai berikut (2 record paling bawah). 




Penjelasan :
PEMBENTUKAN NORMALISASI
a. Bentuk tidak normal (Unnormalized Form)
Keterangan: banyak record yang bernilai ganda, seperti hasil dibawah ini :


    Penjelasan :
    bBentuk 1NF(Normal First Form)
           Menghilangkan semua record yang bernilai ganda


   Penjelasan :
   c..Bentuk 2NF (Second Normal Form)
          Pemecahan tabel mata_kuliah menjadi 2 bagian yaitu tabel kuliah & mata_kuliah;


CREATE TABLE `mahasiswa`.`mata_kuliah` (`kode_mata_kuliah` VARCHAR( 10 ) NOT NULL ,
`sks` INT( 5 ) NOT NULL) ENGINE = MYISAM ;




CREATE TABLE `mahasiswa`.`kuliah` (`npm` CHAR( 15 ) NOT NULL ,`kode_mata_kuliah` VARCHAR( 10 ) NOT NULL) ENGINE = MYISAM ;



     Penjelasan :
       Hasil setelah diisi recordnya adalah sebagai berikut:
     1. Tabel kuliah

    
     2. Tabel mata_kuliah


   Penjelasan :
 d. Bentuk 3NF(Third Normal Form)
  Pembentukan primary key pada kode_mata_kuliah di tabel kuliah dan foreign key pada  kode_mata_kuliah di tabel mata_kuliah.






ALTER TABLE `mata_kuliah` ADD PRIMARY KEY ( `kode_mata_kuliah` )





Tidak ada komentar:

Posting Komentar