Boyce-Codd ပုံမှန်ပုံစံ (BCNF) ဆိုတာဘာလဲ

BCNF လေ့လာပြီး minimize လုပ်နှင့်အချက်အလက်သမာဓိရှိတိုးပွါး

Boyce-Codd ပုံမှန်ပုံစံ (BCNF) ၏ရည်မှန်းချက်ကိုတိုးမြှင့်ဖို့ဖြစ်ပါတယ် ဒေတာသမာဓိရှိ ဒေတာဘေ့စပုံမှန်အောင်မြင်ရန်အလို့ငှာတစ်ဦး relational database ကို၏ကော်လံနှင့်စားပွဲစီစဉ်သည်။ ဒေတာဘေ့စပုံမှန် စားပွဲနှင့်အခါစားပွဲပုဒေတာဘေ့စပိုပြီးပြောင်းလွယ်ပြင်လွယ်စေရန်နှင့်ဒေတာများကိုထိန်းသိမ်းနိုင်ရန်စည်းမျဉ်းများသတ်မှတ်ကြပါပြီအကြားထူထောင်ဆက်ဆံရေးရှိပါတယ်သည့်အခါတွေ့ရှိနိုင်ပါသည်။

ဒေတာဘေ့စပုံမှန်၏ရည်မှန်းချက်များမလိုအပ်တဲ့ဒေတာပပျောက်ဖို့နဲ့ data တွေကိုမှီခိုသဘောမျိုးလုပ်သေချာစေရန်ဖြစ်ပါသည်။

သာသည့်အခါအတူတူဒေတာတစ်ခုထက် ပို. table ထဲမှာသိမ်းဆည်းထားနှင့်မသောအခါတစ်ဦးကဒေတာဘေ့စပုံမှန်ဖြစ်ပြီး ဆက်စပ်ဒေတာ စားပွဲတစ်ခုထဲမှာသိမ်းထားတဲ့ဖြစ်ပါတယ်။

Boyce-Codd ပုံမှန် Form ကို၏မူလအစ

လမ်းညွှန်ချက်တစ်ခုစီးရီးအောက်ပါ databases ကိုပုံမှန်ဖြစ်ကြောင်းအာမခံပါသည်။ ဤရွေ့ကားလမျးညှနျခပုံမှန်ပုံစံများအဖြစ်ရည်ညွှန်းကြသည်ငါးမှတဆင့်တဦးတည်းအနေဖြင့်ရေတွက်နေကြသည်။ 1NF, 2NF နှင့် 3NF: တစ်ဦးက relational database ကိုကပထမသုံးပုံစံများနှင့်တွေ့ဆုံလျှင်ပုံမှန်အဖြစ်ဖော်ပြနေသည်။

BCNF Raymond Boyce နှင့် Edgar Codd နေဖြင့် 1974 ခုနှစ်, တတိယပုံမှန်ပုံစံ, ဒါမှမဟုတ် 3NF တစ်ခု extension ကိုအဖြစ်ဖန်တီးခဲ့တာဖြစ်ပါတယ်။ လူတို့သညျကွန်ပျူတာအချိန်လျှော့ချ၏ရည်မှန်းချက်နှင့်အတူလေ့လာပြီး minimalize ကြောင်းဒေတာဘေ့စ schemas ကိုဖန်တီးရန်လုပ်ဆောင်နေခဲ့ကြသည်။ တတိယပုံမှန်ပုံစံကိုပထမဦးဆုံးနှင့်ဒုတိယပုံမှန်ပုံစံများအတွက်လမ်းညွှန်ချက်များတွေ့ဆုံအပြင်မူလတန်းသော့ချက်အပေါ်မှီခိုမစပ်ဆိုင်ကြောင်းကိုကော်လံဖယ်ရှားပေးပါသည်။ တစ်ခါတစ်ရံ 3.5NF အဖြစ်ရည်ညွှန်းသော BCNF, 3NF အပေါငျးတို့သလိုအပ်ချက်များကိုတွေ့ဆုံနှင့်ကိုယ်စားလှယ်လောင်းသော့စားပွဲတစ်ခုရှိအခြား attribute တွေပေါ်မဆိုမှီခိုရှိသည်မဟုတ်ကြောင်းလိုအပ်သည်။

BCNF ရဲ့ဖန်ဆင်းခြင်း၏ထိုအချိန်တွင် Boyce Codd ရဲ့ relational မော်ဒယ် အသုံးပြု. ဒေတာပြန်လည်ရယူခြင်းတိုးတက်ရာပုံစံချထားသောအင်္ဂလိပ် Query Language (SQL) ၏သော့ချက် developer များထဲကတစ်ခုဖြစ်ခဲ့သည်။ ဒီ model များတွင် Codd မေးမြန်းချက်ပိုပြီးအစွမ်းထက်နှင့်ပြောင်းလွယ်ပြင်လွယ်ဖြစ်နိုင်ခြင်းကိုဆိုလိုသော databases ကို၏ဖွဲ့စည်းတည်ဆောက်ပုံရှုပ်ထွေးလျှော့ချနိုင် posited ။

မိမိအ relational database ကိုထိုးထွင်းသိမြင်မှုကိုအသုံးပြုခြင်း, Codd 1NF, 2NF နှင့် 3NF လမ်းညွှန်ချက်များသတ်မှတ်။ သူ BCNF သတ်မှတ်ပေးရန် Boyce နှင့်အတူပူးပေါင်း။

ကိုယ်စားလှယ်လောင်းသော့ချက်များနှင့် BCNF

တစ်ဦးကသမ္မတလောင်း key ကို database ထဲတွင်တစ်မူထူးခြားသောသော့ချက်ဖြစ်ပေါ်လာသောတဲ့ table ထဲမှာကော်လံတစ်ကော်လံသို့မဟုတ်ပေါင်းစပ်ဖြစ်ပါတယ်။ attribute တွေ၏ပေါင်းစပ်အခြားမည်သည့်ဒေတာကိုရည်ညွှန်းခြင်းမရှိဘဲတစ်ဦးဒေတာဘေ့စစံချိန်ကိုဖေါ်ထုတ်ရန်အသုံးပြုနိုင်ပါသည်။ တစ်ခုချင်းစီကိုစားပွဲပေါ်မှာမူလတန်းသော့ချက်အဖြစ်အရည်အချင်းပြည့်မီနိုင်ပါတယ်တစုံတယောက်မျှသောအမျိုးစုံကိုယ်စားလှယ်လောင်းသော့, ဆံ့နိုငျသညျ။ တစ်ဦးကစားပွဲတစ်ဦးတည်းသာအဓိကသော့ချက်ပါရှိသည်။

ကိုယ်စားလှယ်လောင်းသော့ထူးခြားတဲ့ဖြစ်ရပါမည်။

တိုင်းပစ်မှတ်တစ်ခုကိုယ်စားလှယ်လောင်းသော့ချက်ပါလျှင်တစ်ဦးက ဆက်စပ်. BCNF ၌တည်ရှိ၏။ ဝန်ထမ်းသတင်းအချက်အလက်သိုလှောင်ခြင်းနှင့် attribute တွေ , , နဲ့ <ခေါင်းစဉ်> ရှိပါတယ်တဲ့ဒေတာဘေ့စစားပွဲပေါ်မှာစဉ်းစားပါ။

ဒီစားပွဲများတွင်လယ်ပြင် FIRST_NAME နှင့် LAST_NAME ဆုံးဖြတ်သည်။ အလားတူပဲ (, ) ကို tuple ဆုံးဖြတ်သည်။

ဝန်ထမ်း Id နာမည် မျိုးနွယ်အမည် ခေါင်းစဥ်
13133 အမ်မလီ Smith က မန်နေဂျာ
13134 ဂျင်မ် Smith က အပေါင်းအဖေါ်
13135 အမ်မလီ ဂျုံးစ် အပေါင်းအဖေါ်


ဒီများအတွက်ကိုယ်စားလှယ်လောင်း key ကို ဒေတာဘေ့စ ကအခြားအတန်းကအသုံးပြုမရနိုငျသောသာတန်ဖိုးကိုင်ကြောင့် ဖြစ်ပါတယ်။