SlideServe
Menu
Préférences
© SlideServe · v2026

Perancangan Basis Data

joanna avatar
17 diapositives · 463 Views · Oct 12, 2014

Perancangan Basis Data. Normalisasi Ke Dalam BCNF. Overview. Normalisasi ke BCNF, dan Contoh BCNF. Table Structure Decomposition BCNF. BCNF (Boyce-Code Normal Form). Ketika sebuah relasi memiliki lebih dari 1 candidate keys , anomali dapat terjadi sekalipun telah berada di 3NF.

Perancangan Basis Data - slide 1
01 / 17Perancangan Basis Data
1 / 17

Télécharger la présentation

Perancangan Basis Data
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Perancangan Basis Data NormalisasiKeDalam BCNF

  2. Overview • Normalisasike BCNF, dan • Contoh BCNF

  3. Table Structure Decomposition BCNF

  4. BCNF (Boyce-Code Normal Form) • Ketikasebuahrelasimemilikilebihdari 1 candidate keys, anomalidapatterjadisekalipuntelahberada di 3NF. • 3NF tidakdapatmengakomodasirelasi yang memilikioverlapping candidate keys. • Contohnya: composite candidate keys dimanaterdapat minimal 1 atribut yang sama. • Dasardarikonsep BCNF adalahdeterminant. • Sebuahdeterminant adalahsetiapattribute (simple ataupuncomposite) dimanabeberapaatributlainnyaadalahfully functionally dependent. • Sebuahrelasidalam BCNF, jika, danhanyajikasetiapdeterminant adalahcandidate key.

  5. DasarTeori • Consider the following relation and determinants. R(a, b, c, d) • a, c -> b, d • a, d -> b • Agar dapatberada di BCNF, seluruh determinant harusmenjadisebuahcandidate key. Dalamrelasi R, (a,c->b,d) determinandigunakan, jadideterminanpertamaadalah BCNF. • (a,d->b) hasilnyaadalah (a, d) adalahprimary key, yang menentukan (determine) (b). Akantetapi, tidakmenentukan (c). Jadiinibukanlahsebuahcandidate key, dan R tidakdalam BCNF.

  6. Contoh: • DB(Patno,PatName,appNo,time,doctor) • Determinants: • Patno -> PatName • Patno, appNo -> Time,doctor • Time -> appNo • Duapilihanpadapemilihan primary key 1NF: • DB(Patno,PatName,appNo,time,doctor) (example 1a) • DB(Patno,PatName,appNo,time,doctor) (example 1b)

  7. Example 1A: • DB(Patno,PatName,appNo,time,doctor). • Tidakadapengulangan group, jaditelahberada di 1NF. • 2NF – menghilangkanpartial key dependencies: • DB(Patno, appNo, time, doctor) • R1(Patno, PatName) • 3NF – tidakadatransitif dependency jaditelahberada di 3NF • BCNF??????

  8. BCNF SetiapDeterminant adalahsebuahcandidate key DB(Patno, appNo, time, doctor) R1(Patno, PatName) • Apakah determinant adalah candidate key? • Patno-> PatName PatnoadadalamDB, tetapiPatNametidak, jaditidakrelevan. • Patno,appNo-> Time,doctor Apakahinicandidate key? Patno, appNoadalah KEY-nya, jadiiniadalahcandidate key. • Time -> appNo Time ada, danjugaappNo, jadirelevan. Apakahiniadalahcandidate key? Jikabenar, maka DB harusdirubahkedalam : DB(Patno,appNo,time,doctor)

  9. Merubahke BCNF • DB(Patno,appNo, time,doctor) R1(Patno,PatName) • BCNF: dirubahke DB(Patno, time, doctor) R1(Patno, PatName) R2(time, appNo) • timecukupuntukmenentukan appointment number dariseorangpasien. Sekarang BCNF terpenuhi, danrelasiakhirnyatelahberada di BCNF.

  10. Example 1B: DB(Patno, PatName, appNo, time, doctor) • Tidakadapengulangan group, jaditelahberada di 1NF • 2NF – menghilangkanpartial key dependencies: • DB(Patno, time, doctor) • R1(Patno, PatName) • R2(time, appNo) • 3NF – tidakadatransitif dependency, jaditelahberada di 3NF. • BCNF??

  11. BCNF Setiap Determinant adalahSebuah Candidate Key DB(Patno,time,doctor) R1(Patno, PatName) R2(time, appNo) • Apakah determinant adalahsebuah candidate key? • Patno-> PatName Patnoispresent in DB, but not PatName, irrelevant. • Patno,appNo-> Time,doctor Tidaksemuanyabergantung, jaditidak relevant. • Time -> appNo Time ada, tapitidakappNo, jaditidak relevant. • RelasinyamemenuhiBCNF.

  12. Contoh Lain BCNF

  13. Normalisasi Review (to BCNF)

  14. Normalisasi Review (to BCNF)

  15. CID IDateITimeStaffIDRmNo C01 8-22-99 10:00 S01 B107 C02 8-22-99 11:00 S01 B107 C03 8-22-99 10:00 S05 B108 C01 8-29-99 3:00 S06 B108 Boyce-Codd Normal Form • ContohSelanjutnya: • Anggota team perekrutanmenggelar interview calonkaryawandengancara one-to-one basis. Setiapcalon di-assign keruangtertentupadawaktu yang telahdiberikan. Setiapkandidathanyaakan di interview padatanggaltertentu. • Interview (CID, IDate, ITime, StaffID, RmNo)

  16. Boyce-Codd Normal Form • Relasitersebutmemilikifunctional dependencies berikut: • CID, IDateITime, StaffID, RmNo • StaffID, IDate, ITimeCID, RmNo • RmNo, Idate, ItimeStaffID, CID • StaffID, IDateRmNo • Relasitersebuttidakmemilikipartial atautransitive dependencies padaprimary key (CID, IDate) • Tidakberada di BCNF karena (StaffID, Idate) adalahsebuahdeterminant tetapibukansebuahcandidate key. • Relasibaru yang terbentuk di BCNF adalah: • Interview (CID, IDate, ITime, StaffID) • Room(StaffID, IDate, RmNo)

  17. Dependency Diagram Dependency diagram Fig 1 Fig 2 Fig 3