ဒေတာဘေ့စပေါင်းသင်းဆက်ဆံရေးဖို့နိဒါန်း

အဆိုပါဒေတာဘေ့စဝေါဟာရကို "relational" သို့မဟုတ် "ဆက်ဆံရေးမျိုး" စားပွဲအတွက် data တွေကိုချိတ်ဆက်ထားသောလမ်းဖော်ပြသည်။

databases ကိုလောကီသားတို့သည်အဖို့အသစ်ရောက်ရှိလာသောမကြာခဏခက်ခဲအချိန်ဒေတာဘေ့စနှင့်တစ်ဦး spreadsheet အကြားကွာခြားချက်ကိုမြင်လျှင်ရှိသည်။ သူတို့ကအချက်အလက်များ၏စားပွဲမြင် databases ကိုသငျသညျကိုစုစည်းပြီးနှင့်ခွင့်ပြုကြောင်းအသိအမှတ်ပြုရန် ဒေတာစုံစမ်းမှု အသစ်သောနည်းလမ်းတွေနဲ့, ဒါပေမယ့် relational database ကိုနည်းပညာ၎င်း၏အမည်ကိုပေးသောဒေတာများအကြားဆက်ဆံရေး၏အရေးပါမှုကိုဆုပ်ကိုင်ရန်ပျက်ကွက်။

ဆက်ဆံရေးသင်အစွမ်းထက်နည်းလမ်းကွဲပြားခြားနားသောဒေတာဘေ့စစားပွဲကြားရှိဆက်သွယ်မှုကိုဖော်ပြရန်ခွင့်ပြုပါ။ ဤရွေ့ကားဆက်ဆံရေးထို့နောက်ပူးပေါင်းမည်အဖြစ်လူသိများအစွမ်းထက် Cross-စားပွဲပေါ်မှာမေးမြန်းချက်, ဖျော်ဖြေဖို့ရေးအတွက်နိုင်ပါသည်။

ဒေတာဘေ့စပေါင်းသင်းဆက်ဆံရေးအမျိုးအစားများ

ဒေတာဘေ့စဆက်ဆံရေးသုံးခုကွဲပြားခြားနားသောအမျိုးအစားများ, ဆက်ဆံရေးတွင်ပါဝင်ပတ်သက်စေခြင်းငှါစားပွဲပေါ်မှာတန်းစီများ၏အရေအတွက်အတိုင်းအမည်ရှိချင်းစီရှိပါတယ်။ ဤသုံးပါးကြားဆက်ဆံရေးအမျိုးအစားတစ်ခုချင်းစီကိုကျောက်ပြားနှစ်ပြားအကြားတည်ရှိ။

self-Referencing ပေါင်းသင်းဆက်ဆံရေး: တစ်ဦးကအထူးဖြစ်ရပ်မှန်

ပါဝင်ပတ်သက်တစ်ဦးတည်းသာစားပွဲပေါ်မှာလည်းမရှိသည့်အခါကိုယ်ပိုင်ကိုးကားဆက်ဆံရေးပေါ်ပေါက်ပါတယ်။ တစ်ခုမှာဘုံဥပမာတစ်ခုချင်းစီကိုဝန်ထမ်းများ၏ကြီးကြပ်ရေးမှူးနှင့် ပတ်သက်. သတင်းအချက်အလက်များပါဝင်သည်တစ်ခုန်ထမ်းစားပွဲဖြစ်ပါတယ်။ တစ်ခုချင်းစီကိုကြီးကြပ်သူလည်းတစ်ဦးဝန်ထမ်းဖြစ်ပြီးသူသို့မဟုတ်သူမ၏ကိုယ်ပိုင်ကြီးကြပ်ရေးမှူးရှိပါတယ်။ ဤကိစ္စတွင်ခုနှစ်, အဲဒီမှာဦးချင်းစီန်ထမ်းတဦးတည်းကြီးကြပ်ရေးမှူးရှိပါတယ်အဖြစ်တဦးတည်း-to-အများအပြား Self-ကိုးကားဆက်ဆံရေးမျိုးဖြစ်ပါတယ်, ဒါပေမယ့်အသီးအသီးကြီးကြပ်ရေးမှူးတစ်ဦးထက်ပိုဝန်ထမ်းရှိနိုင်ပါသည်။

နိုင်ငံခြားရေးသော့ချက်များနှင့်အတူပေါင်းသင်းဆက်ဆံရေး Creating

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

ထပ်ဆရာများနှင့်ကျောင်းသားများ tables တွေရဲ့ဥပမာစဉ်းစားပါ။ အဆိုပါဆရာများစားပွဲပေါ်မှာပဲတစ်ဦး ID ကိုတစ်ဦးအမည်, နှင့်သင်တန်းကော်လံပါရှိသည်:

ဆရာများ
InstructorID Teacher_Name သင်တန်းအမှတ်စဥ်
001 ယောဟနျသ Doe အင်္ဂလိပ်
002 ဂျိန်း Schmoe သင်္ချာ

အဆိုပါကျောင်းသားများစားပွဲပေါ်မှာတစ်ဦး၏ ID, အမည်, နှင့်နိုင်ငံခြား key ကိုကော်လံပါဝင်သည်:

ကျောင်းသားများ
ကျောင်းသားကဒ် ကျောင်းသားအမည် Teacher_FK
0200 ဝယျလျစမစ် 001
0201 ဘရိုင်ယန်က Short 001
0202 Corky Mendez 002
0203 မော်နီကာဂျုံးစ် 001

အဆိုပါကျောင်းသားများ table ထဲမှာကော်လံ Teacher_FK အဆိုပါကိုးကား မူလတန်း key ကိုတနျဖိုး ဟာဆရာများ table ထဲမှာတစ်ခုနည်းပြဆရာများ၏။

မကြာခဏ, ဒေတာဘေ့စဒီဇိုင်နာများလွယ်ကူစွာတစ်ဦးမူလတန်းသော့ချက်သို့မဟုတ်နိုင်ငံခြား key ကိုကော်လံကိုသိရှိနိုင်ဖို့ကော်လံနာမ၌ "PK" သို့မဟုတ် "FK" ကိုသုံးပါလိမ့်မယ်။

ဤအပွားနှစျပွားဆရာနှင့်ကျောင်းသားများအကြားတ-to-အများအပြားကြားဆက်ဆံရေးသရုပျဖျောသတိပြုပါ။

ဆက်ဆံရေးနှင့်ရည်ညွှန်းသမာဓိ

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

ပေါင်းသင်းဆက်ဆံရေးအကောင်အထည်ဖော်

သင့်ရဲ့ဒေတာဘေ့စပေါ် မူတည်. သင်သည်ကွဲပြားခြားနားတဲ့နည်းလမ်းတွေထဲမှာစားပွဲအကြားဆက်ဆံရေးကိုအကောင်အထည်ဖေါ်။ Microsoft က Access ကိုအလွယ်တကူသင်စားပွဲသို့လင့်ထားသည်နှင့်လည်းရည်ညွှန်းသမာဓိရှိပြဋ္ဌာန်းရန်ခွင့်ပြုမယ့် wizard ကိုပေးပါသည်။

သငျသညျကိုတိုက်ရိုက် SQL ရေးသားခြင်းနေတယ်ဆိုရင်, သင်ပထမဦးဆုံးအဓိကသော့ချက်ဖြစ်ဖို့ ID ကိုကော်လံကြေညာ, စားပွဲပေါ်မှာဆရာများဖန်တီးမည်ဟု:

(TABLE ဆရာများ CREATE

InstructorID INT AUTO_INCREMENT PRIMARY KEY ကို,
Teacher_Name VARCHAR (100),
သင်တန်းအမှတ်စဥ် VARCHAR (100)
);

သင်ကျောင်းသားများစားပွဲပေါ်မှာဖန်တီးတဲ့အခါမှာ, သင်ဆရာများ '' စားပွဲပေါ်မှာအတွက် InstructorID ကော်လံကိုကိုးကားနိုင်ငံခြားသော့ချက်ဖြစ်ဖို့ Teacher_FK ကော်လံကြေညာ:

TABLE ကျောင်းသားများ CREATE (
StudentID INT AUTO_INCREMENT PRIMARY KEY ကို,
Student_Name VARCHAR (100), Teacher_FK INT,
နိုင်ငံခြားရင်းနှီးမြှုပ်နှံမှုမြန်မာ့ KEY ကို (Teacher_FK) ဆရာများ (InstructorID) REFERENCES)
);

ဇယားကို Join ဖို့ပေါင်းသင်းဆက်ဆံရေးအသုံးပြုခြင်း

သင်သည်သင်၏ database ထဲတွင်တဦးတည်းသို့မဟုတ်ထိုထက်ပိုဆက်ဆံရေးကိုဖန်တီးပြီးပြီပြီးတာနဲ့သင်မျိုးစုံစားပွဲကနေသတင်းအချက်အလက်ပေါင်းစပ်ဖို့မေးမြန်းချက် JOIN SQL အသုံးပြု. ၎င်းတို့၏အာဏာကိုမူတည်ပြီးနိုင်ပါတယ်။ join ၏အသုံးအများဆုံးအမျိုးအစားတစ်ဦး SQL Inner JOIN ဖြစ်ပါတယ်, ဒါမှမဟုတ်တစ်ဦးရိုးရှင်းသော join ။ join ပြန်မျိုးစုံစားပွဲကနေ join အခွအေနေဖြည့်ဆည်းသောသူအပေါင်းတို့သည်မှတ်တမ်းများ၏ဤအမျိုးအစား။ ဥပမာ, ဒီအခြေအနေကျောင်းသားများ table ထဲမှာနိုင်ငံခြား key ကိုဆရာများ table ထဲမှာအဓိကသော့ချက်ကိုက်ညီရှိရာ Student_Name, Teacher_Name နှင့်သင်တန်းအမှတ်စဥ်ပြန်လာကြလိမ့်မည် JOIN:

Students.Student_Name, Teachers.Teacher_Name, Teachers.Course SELECT
ကျောင်းသားများ FROM မှ
Inner ဆရာများ JOIN
Students.Teacher_FK = Teachers.InstructorID ON;

ဒါကကြေညာချက်ဤကဲ့သို့သောစားပွဲတစ်ခုတစ်ခုခုထုတ်လုပ်:

အဆိုပါ SQL ရာမှပြန်လာသောစားပွဲတင်ဖော်ပြချက် Join

Student_NameTeacher_NameCourseLowell SmithJohn DoeEnglishBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish