DBMS in Hindi – BCNF

Bcnf in dbms in Hindi, Boyce Codd normal form in dbms in hindi

bcnf in dbms in hindi, Boyce Codd normal form in dbms in hindi,

BCNF in DBMS in hindi

  • BCNF, 3NF का advance version है। यह 3NF की तुलना में strict है।
  • एक तालिका BCNF में है यदि हर functional dependency X → Y, X table की super key है।
  • Bcnf के लिए, table 3NF मे होना चाहिए, और प्रत्येक FD के लिए, LHS super key है।

उदाहरण: मान लें कि एक कंपनी है जहां कर्मचारी एक से अधिक विभागों में काम करते हैं।

Employee table:

EMP_ID EMP_COUNTRY EMP_DEPT DEPT_TYPE EMP_DEPT_NO
264 India Designing D394 283
264 India Testing D394 300
364 UK Stores D283 232
364 UK Developing D283 549

उपरोक्त table में functional dependencies इस प्रकार हैं:

  1. EMP_ID → EMP_COUNTRY  
  2. EMP_DEPT → {DEPT_TYPE, EMP_DEPT_NO}  

Candidate key: {EMP-ID, EMP-DEPT}

तालिका BCNF में नहीं है क्योंकि न तो EMP_DEPT और न ही EMP_ID Table कुंजियाँ हैं।

दी गई तालिका को BCNF में बदलने के लिए, हम इसे तीन तालिकाओं में विघटित (decompose) करते हैं:

EMP_COUNTRY table:

EMP_ID EMP_COUNTRY
264 इंडिया
264 इंडिया

EMP_DEPT table:

EMP_DEPT DEPT_TYPE EMP_DEPT_NO
Designing D394 283
Testing D394 300
Stores D283 232
Developing D283 549

EMP_DEPT_MAPPING  table:

EMP_ID EMP_DEPT
D394 283
D394 300
D283 232
D283 549

Functional dependencies:

  1. EMP_ID → EMP_COUNTRY  
  2. EMP_DEPT → {DEPT_TYPE, EMP_DEPT_NO}  

 candidate key:

पहली तालिका के लिए: EMP_ID

दूसरी तालिका के लिए: EMP_DEPT

तीसरी तालिका के लिए: {EMP_ID, EMP_DEPT}

अब, यह bcnf में है क्योंकि दोनों functional dependencies का left  हिस्सा एक key है।

Leave a Reply

DMCA.com Protection Status