BCNF হল তৃতীয় সাধারণ ফর্ম (3NF) এর একটি এক্সটেনশন এবং 3NF এর থেকে কিছুটা শক্তিশালী৷
একটি সম্পর্ক R BCNF-এ থাকে, যদি P -> Q হল একটি তুচ্ছ কার্যকরী নির্ভরতা এবং P হল R-এর জন্য একটি সুপারকি৷
যদি একটি সম্পর্ক BCNF-এ থাকে, তার মানে হবে যে ফাংশন নির্ভরতার উপর ভিত্তি করে রিডানড্যান্সি সরানো হয়েছে, কিন্তু কিছু রিডানড্যান্সি এখনও আছে৷
আসুন একটি উদাহরণ দেখি -
গ্রাউন্ড৷ | Begin_Time | End_Time৷ | প্যাকেজ৷ |
G01 | 07:00৷ | 09:00 | সোনা |
G01 | 10:00৷ | 12:00৷ | সোনা |
G01 | 10:30৷ | 11:00৷ | ব্রোঞ্জ |
G02 | 10:15৷ | 11:15৷ | সিলভার |
G02 | 08:00 | 09:00 | সিলভার |
উপরের সম্পর্কটি 1NF, 2NF, 3NF, কিন্তু BCNF-তে নয়৷ এখানে কারণ -
কার্যকরী নির্ভরতা {প্যাকেজ->গ্রাউন্ড
এটির নির্ধারক বৈশিষ্ট্য প্যাকেজ রয়েছে যার উপর গ্রাউন্ড নির্ভর করে এটি প্রার্থী কী বা প্রার্থী কী-এর সুপারসেট নয়৷
<প্যাকেজ>
প্যাকেজ৷ | গ্রাউন্ড৷ |
সোনা | G01 |
সিলভার | G02 |
ব্রোঞ্জ | G01 |
গ্রাউন্ড | Begin_Time৷ | End_Time৷ |
G01 | 07:00৷ | 09:00 |
G01 | 10:00৷ | 12:00৷ |
G01 | 10:30৷ | 11:00৷ |
G02 | 10:15৷ | 11:15৷ |
G02 | 08:00 | 09:00 |
এখন উপরের টেবিলগুলো BCNF-এ আছে।
অসামঞ্জস্য দূর হয়েছে কারণ আমরা