Skip to main content

ডাটাবেস মধ্যে Multivalued নির্ভরতা

4 র্থ সাধারন ফর্ম (4NF) | মাল্টি মূল্যবান নির্ভরতা | ডাটাবেজ স্বাভাবিক (জুন 2026)

4 র্থ সাধারন ফর্ম (4NF) | মাল্টি মূল্যবান নির্ভরতা | ডাটাবেজ স্বাভাবিক (জুন 2026)
Anonim

একটি সম্পর্কীয় ডাটাবেসের মধ্যে, একই নির্ভরতা টেবিলের মধ্যে সংরক্ষিত তথ্য একই টেবিলের মধ্যে সংরক্ষিত অন্যান্য তথ্য নির্দিষ্টভাবে নির্ধারণ করে যখন নির্ভরতা ঘটে। একটি বহুভুজ নির্ভরতা ঘটে যখন একটি টেবিলে এক বা একাধিক সারির উপস্থিতি একই টেবিলে এক বা একাধিক সারি উপস্থিত হওয়ার অর্থ দেয়। আরেকটি উপায় রাখুন, একটি টেবিলে দুটি বৈশিষ্ট্য (বা কলাম) একে অপরের থেকে স্বাধীন, কিন্তু উভয় একটি তৃতীয় বৈশিষ্ট্য উপর নির্ভর করে।

একটি বহুমুখী নির্ভরতা স্বাভাবিককরণের চতুর্থ সাধারণ ফর্ম (4NF) বাধা দেয়। রিলেশনাল ডাটাবেস রেকর্ড নকশা জন্য নির্দেশিকা প্রতিনিধিত্ব করে যে পাঁচ স্বাভাবিক ফর্ম অনুসরণ করুন। তারা তথ্য মধ্যে ব্যতিক্রম বৈষম্য এবং অসঙ্গতি প্রতিরোধ। চতুর্থ স্বাভাবিক ফর্ম ডাটাবেসের মধ্যে এক-এক সম্পর্কের সাথে সম্পর্কিত।

কার্যকরী নির্ভরতা বনাম Multivalued নির্ভরতা

একটি বহুজাতীয় নির্ভরতা বুঝতে, এটি একটি কার্যকরী নির্ভরতা কি পুনর্বিবেচনা সহায়ক।

যদি একটি বৈশিষ্ট্য X অনন্যভাবে একটি বৈশিষ্ট্য Y নির্ধারণ করে, তবে Y কার্যকরীভাবে X- তে নির্ভরশীল। এটি এক্স -> Y হিসাবে লেখা হয়। উদাহরণস্বরূপ, নিচের শিক্ষার্থী সারণিতে, Student_Name মেজর নির্ধারণ করে:

শিক্ষার্থীরা
শিক্ষার্থীর নামমুখ্য
রবিশিল্প ইতিহাস
বেথরসায়ন

এই কার্যকরী নির্ভরতা লেখা যেতে পারে: Student_Name -> মেজর . প্রতিটি Student_Name ঠিক একটি মেজর নির্ধারণ করে এবং আরো।

আপনি যদি ডাটাবেসগুলি নিতে চান তবে এই ডেটাবেসগুলিও ট্র্যাক করতে চান তবে আপনি মনে করতে পারেন যে এটি করার সবচেয়ে সহজ উপায় কেবল শিরোনামযুক্ত অন্য কলাম যুক্ত করুন:

শিক্ষার্থীরা
শিক্ষার্থীর নামমুখ্যখেলা
রবিশিল্প ইতিহাসফুটবল খেলা
রবিশিল্প ইতিহাসভলিবলখেলা
রবিশিল্প ইতিহাসটেনিস
বেথরসায়নটেনিস
বেথরসায়নফুটবল খেলা

এখানে সমস্যা রবি এবং বেথ উভয় একাধিক ক্রীড়া খেলা। এটি প্রতি অতিরিক্ত খেলাধুলার জন্য একটি নতুন সারি যোগ করা প্রয়োজন।

এই টেবিলটি বহুবিধ নির্ভরতা চালু করেছে কারণ প্রধান এবং খেলাধুলা একে অপরের থেকে স্বাধীন কিন্তু ছাত্র উভয়ের উপর নির্ভর করে।

এটি একটি সহজ উদাহরণ এবং সহজে শনাক্তযোগ্য, তবে একটি বহুবচন নির্ভরতা একটি বড়, জটিল ডাটাবেসের মধ্যে একটি সমস্যা হতে পারে।

একটি বহুভুজ নির্ভরতা X -> -> Y লিখেছেন:

শিক্ষার্থীর নাম ->-> মুখ্যশিক্ষার্থীর নাম->-> খেলা

এটি "স্টুডেন্ট_নাম মাল্টিডেটার্মিন মেজর" এবং "স্টুডেন্ট_নাম মাল্টিডেটার্মাইনস স্পোর্ট" হিসাবে পড়তে হয়।

একটি বহুমুখী নির্ভরতা সর্বদা কমপক্ষে তিনটি গুণাবলী প্রয়োজন কারণ এতে কমপক্ষে দুটি গুণগুলি রয়েছে যা তৃতীয়টির উপর নির্ভরশীল।

বহুমুখী নির্ভরতা এবং স্বাভাবিকীকরণ

বহুবিধ নির্ভরতা সহ একটি টেবিল চতুর্থ সাধারণ ফর্ম (4NK) এর স্বাভাবিকীকরণ মান লঙ্ঘন করে কারণ এটি অপ্রয়োজনীয় অবাঞ্ছিততা তৈরি করে এবং অসঙ্গতিপূর্ণ তথ্যগুলিতে অবদান রাখতে পারে। এটিকে 4NF এ আনতে, এই তথ্যটি দুটি সারণিতে ভাঙ্গতে হবে।

নীচের টেবিলে Student_Name -> মেজর, এবং কোনও বহুবিধ নির্ভরতাগুলির কার্যকারিতা নির্ভরশীলতা নেই:

ছাত্র ও মেজর
শিক্ষার্থীর নামমুখ্য
রবিশিল্প ইতিহাস
রবিশিল্প ইতিহাস
রবিশিল্প ইতিহাস
বেথরসায়ন
বেথরসায়ন

এই টেবিলে Student_Name এর একটি কার্যকরী নির্ভরতা রয়েছে -> খেলাধুলা:

ছাত্র ও ক্রীড়া
শিক্ষার্থীর নামখেলা
রবিফুটবল খেলা
রবিভলিবলখেলা
রবিটেনিস
বেথটেনিস
বেথফুটবল খেলা

এটি পরিষ্কার যে জটিলকরণগুলি প্রায়ই জটিল টেবিলগুলি সরল করে সম্বোধন করা হয় যাতে একটি একক টেবিল তৈরি করার চেষ্টা করার পরিবর্তে তারা একক ধারণা বা থিম সম্পর্কিত তথ্য ধারণ করে।