- সাধারণ আকার
- প্রথম সাধারণ ফর্ম (1FN)
- দ্বিতীয় সাধারণ ফর্ম (2FN)
- তৃতীয় স্বাভাবিক ফর্ম (3FN)
- তৃতীয় স্বাভাবিক ফর্ম উদাহরণ
- উদাহরণ 1
- নতুন টেবিল তৈরি করুন
- উদাহরণ 2
- তথ্যসূত্র
তৃতীয় স্বাভাবিক ফর্ম (ডাটাবেস) একটি রিলেশনাল ডাটাবেস নকশা কৌশল, যেখানে বিভিন্ন টেবিল যে রচনা তাই না শুধুমাত্র দ্বিতীয় স্বাভাবিক ফর্ম মেনে চলতে, কিন্তু তার সব বৈশিষ্ট্য বা ক্ষেত্র প্রাথমিক কী সরাসরি নির্ভর নয়।
একটি ডেটাবেস ডিজাইন করার সময়, মূল লক্ষ্যটি হ'ল ডেটার যথাযথ উপস্থাপনা, তাদের মধ্যে সম্পর্ক এবং প্রাসঙ্গিক ডেটার উপর বিধিনিষেধ তৈরি করা।
সূত্র: pixabay.com
এই লক্ষ্য অর্জনের জন্য, কিছু ডাটাবেস ডিজাইনের কৌশলগুলি ব্যবহার করা যেতে পারে যার মধ্যে নরমালাইজেশন।
এটি তথ্যকে সন্নিবেশকরণ, আপডেট করা বা বর্জনকরণে অপ্রয়োজনীয় এবং সম্ভাব্য অসঙ্গতিগুলি এড়ানোর জন্য একটি ডাটাবেসে ডেটা সংগঠিত করার প্রক্রিয়া, এইভাবে ধারণাগত মডেলের একটি সহজ এবং স্থিতিশীল নকশা তৈরি করে।
এটি বৈশিষ্ট্যগুলির মধ্যে কার্যকরী সম্পর্ক বা নির্ভরতা পরীক্ষা করে শুরু হয়। এগুলি ডেটার কিছু সম্পত্তি বা তাদের মধ্যে সম্পর্কের বর্ণনা দেয়।
সাধারণ আকার
সাধারণকরণ এই বৈশিষ্ট্যগুলির সর্বোত্তম গোষ্ঠীকরণ সনাক্তকরণে এবং শেষ পর্যন্ত কোনও সংস্থার ডেটা প্রয়োজনীয়তা সমর্থন করে এমন সম্পর্কের উপযুক্ত সেটটি প্রতিষ্ঠায় সহায়তা করতে সাধারণ ফর্ম নামে পরিচিত কয়েকটি সিরিজ ব্যবহার করে।
এটি হ'ল, নরমালাইজেশন কৌশলটি সাধারণ ফর্মের ধারণার চারপাশে নির্মিত, যা একটি বাধা ব্যবস্থাকে সংজ্ঞায়িত করে। যদি কোনও সম্পর্ক কোনও নির্দিষ্ট সাধারণ ফর্মের সীমাবদ্ধতাগুলি পূরণ করে তবে বলা হয় যে সম্পর্কটি সেই স্বাভাবিক আকারে রয়েছে।
প্রথম সাধারণ ফর্ম (1FN)
এর মধ্যে সমস্ত বৈশিষ্ট্য বা ক্ষেত্রের মধ্যে কেবল অনন্য মান থাকলে একটি টেবিল 1FN এ বলা হয়। এটি হ'ল প্রতিটি গুণাবলীর প্রতিটি মান অবশ্যই অবিভাজ্য হবে।
সংজ্ঞা অনুসারে, একটি রিলেশনাল ডাটাবেস সর্বদা প্রথম স্বাভাবিক আকারে স্বাভাবিক করা হবে কারণ বৈশিষ্ট্য মান সর্বদা পারমাণবিক। ডাটাবেসের সমস্ত সম্পর্ক 1FN এ থাকে।
যাইহোক, ডাটাবেসটিকে কেবল এইভাবে রেখে যাওয়া অপ্রয়োজনীয় এবং সম্ভাব্য আপগ্রেড ব্যর্থতার মতো বেশ কয়েকটি সমস্যাকে উদ্দীপিত করে। এই সমস্যাগুলি সংশোধন করার জন্য উচ্চতর স্বাভাবিক ফর্মগুলি তৈরি করা হয়েছিল।
দ্বিতীয় সাধারণ ফর্ম (2FN)
এটি একটি টেবিল থেকে বিজ্ঞপ্তি নির্ভরতা অপসারণ নিয়ে কাজ করে। একটি সম্পর্ক 2FN এ বলা হয় যদি এটি 1FN থাকে এবং তদুপরি প্রতিটি নন-কী ক্ষেত্র বা বৈশিষ্ট্য সম্পূর্ণরূপে মূল কী বা আরও বেশি সুনির্দিষ্টভাবে নির্ভর করে তবে এটি নিশ্চিত করে যে সারণির একক উদ্দেশ্য রয়েছে।
একটি নন-কী বৈশিষ্ট্য হ'ল এমন কোনও বৈশিষ্ট্য যা সম্পর্কের জন্য প্রাথমিক কীটির অংশ নয়।
তৃতীয় স্বাভাবিক ফর্ম (3FN)
এটি একটি সারণী থেকে ট্রানজিটিভ নির্ভরতা অপসারণ নিয়ে কাজ করে। এটি হ'ল প্রাথমিক কীটির উপর নির্ভর করে না এমন নন-কী বৈশিষ্ট্যগুলি সরান, তবে অন্য একটি বৈশিষ্ট্যের উপর।
ট্রানজিটিভ নির্ভরতা হ'ল এক প্রকারের কার্যনির্ভর নির্ভরতা যেখানে কোনও নন-কী ক্ষেত্র বা বৈশিষ্ট্যের মান অন্য ক্ষেত্রের মান দ্বারা নির্ধারিত হয় যা কী নয়।
এই নন-কী বৈশিষ্ট্যগুলি প্রাথমিক কী বাদে অন্য কোনও কিছুর উপর নির্ভর করে না তা নিশ্চিত করার জন্য আপনার অ-কী বৈশিষ্ট্যগুলিতে পুনরাবৃত্তি করতে হবে।
বৈশিষ্ট্যগুলি পারস্পরিক স্বতন্ত্র বলে বলা হয় যদি সেগুলির মধ্যে কেউই অন্যের সংমিশ্রণের উপর কার্যত নির্ভরশীল না হয়। এই পারস্পরিক স্বাধীনতা নিশ্চিত করে যে বৈশিষ্ট্যগুলি অন্য কোনও বৈশিষ্ট্যকে প্রভাবিত করার আশঙ্কা ছাড়াই স্বতন্ত্রভাবে আপডেট করা যেতে পারে।
অতএব, কোনও ডাটাবেসে সম্পর্কের জন্য তৃতীয় স্বাভাবিক আকারে থাকতে হবে, এটি অবশ্যই মেনে চলতে হবে:
- 2 এফএন এর সমস্ত প্রয়োজনীয়তা।
- যদি এমন কোনও বৈশিষ্ট্য রয়েছে যা প্রাথমিক কী সম্পর্কিত নয়, তবে অবশ্যই তাদের অপসারণ করতে হবে এবং একটি পৃথক টেবিলের মধ্যে রাখতে হবে, উভয় টেবিলের সাথে বিদেশী কী ব্যবহার করে। এটি হ'ল কোনও অস্থায়ী নির্ভরতা থাকা উচিত নয়।
তৃতীয় স্বাভাবিক ফর্ম উদাহরণ
উদাহরণ 1
টেবিলটি শিক্ষার্থীদের হতে দিন, যার প্রাথমিক কীটি শিক্ষার্থীর সনাক্তকরণ (STUDENT_ID) এবং নিম্নলিখিত বৈশিষ্ট্যগুলির সমন্বয়ে গঠিত: STUDENT_NAME, STREET, CITY এবং POST_CODE, 2FN হওয়ার শর্ত পূরণ করে।
এই ক্ষেত্রে, স্ট্রিট এবং সিটিআইটির প্রাথমিক কী স্টুডিআইআইডি-র সাথে সরাসরি সম্পর্ক নেই, যেহেতু তারা সরাসরি শিক্ষার্থীর সাথে সম্পর্কিত নয়, তবে তারা পুরোপুরি ডাক কোডের উপর নির্ভরশীল।
যেহেতু শিক্ষার্থী CODE_POSTAL দ্বারা নির্ধারিত সাইট দ্বারা অবস্থিত তাই স্ট্রিট এবং সিটিআইটি সম্পর্কিত হয় এই বৈশিষ্ট্যের সাথে। এই দ্বিতীয় ডিগ্রি নির্ভরতার কারণে, এই বৈশিষ্ট্যগুলি শিক্ষার্থীর টেবিলে সংরক্ষণ করার দরকার নেই।
নতুন টেবিল তৈরি করুন
মনে করুন যে একই পিন কোডে একাধিক শিক্ষার্থী রয়েছে, স্টুডেন্ট টেবিলটিতে প্রচুর পরিমাণে রেকর্ড রয়েছে এবং রাস্তার বা শহরের নাম পরিবর্তন করা দরকার, তবে এই রাস্তা বা শহরটি অবশ্যই পুরো সারণীতে খুঁজে পাওয়া ও আপডেট করা উচিত ছাত্র.
উদাহরণস্বরূপ, যদি আপনার রাস্তার "এল লিমেন "টিকে" এল লিমেন II "এ পরিবর্তন করতে হয়, আপনাকে পুরো ছাত্র সারণীতে" এল লিমেন "অনুসন্ধান করতে হবে এবং তারপরে এটি" এল লিমেন II "এ আপডেট করতে হবে।
একটি বিশাল টেবিল অনুসন্ধান করা এবং একক বা একাধিক রেকর্ড আপডেট করা দীর্ঘ সময় নিতে পারে এবং তাই ডাটাবেসের কার্যকারিতা প্রভাবিত করে।
পরিবর্তে, এই বিবরণগুলি একটি পৃথক টেবিল (POSTCARD) এ রাখা যেতে পারে যা POST_CODE বৈশিষ্ট্যটি ব্যবহার করে স্টুডেন্ট টেবিলের সাথে সম্পর্কিত।
পোস্ট টেবিলের তুলনামূলকভাবে কম রেকর্ড থাকবে এবং এই পোস্ট টেবিলটি কেবল একবার আপডেট করা দরকার। এটি স্বয়ংক্রিয়ভাবে স্টুডেন্ট সারণীতে প্রতিফলিত হবে, ডাটাবেস এবং কোয়েরিগুলি সহজ করে। সুতরাং টেবিলগুলি 3FN এ থাকবে:
উদাহরণ 2
নীচের টেবিলটি প্রজেক্ট_নাম ফিল্ডটিকে প্রাথমিক কী হিসাবে এবং কী নয় এমন বৈশিষ্ট্যগুলির পুনরাবৃত্ত মানগুলির সাথে ব্যবহার করতে দিন।
টেলিফোনের মান প্রতিবার একজন পরিচালকের নাম পুনরাবৃত্তি করা হয়। এটি কারণ প্রকল্পের নম্বরে ফোন নম্বরটির দ্বিতীয় ডিগ্রি নির্ভরতা রয়েছে। এটি সত্যই প্রথমে পরিচালকের উপর নির্ভর করে এবং এটি পরিবর্তিতভাবে প্রজেক্টের সংখ্যার উপর নির্ভর করে যা একটি ট্রানজিটিভ নির্ভরতা করে।
প্রকল্প_ম্যানেজার বৈশিষ্ট্যটি প্রকল্পের সারণীতে কোনও সম্ভাব্য কী হতে পারে না কারণ একই ব্যবস্থাপক একাধিক প্রকল্প পরিচালনা করে। এর সমাধান হ'ল পুনরাবৃত্ত ডেটা (ফোন) দিয়ে অ্যাট্রিবিউটটি সরিয়ে আলাদা টেবিল তৈরি করা creating
সম্পর্কিত বৈশিষ্ট্যগুলি একত্রে গোষ্ঠীভুক্ত করতে হবে, সেগুলি সংরক্ষণের জন্য একটি নতুন টেবিল তৈরি করা উচিত। ডেটা প্রবেশ করানো হয়েছে এবং এটি যাচাই করা হয়েছে যে পুনরাবৃত্তি মানগুলি মূল কীটির অংশ নয়। প্রতিটি টেবিলের জন্য প্রাথমিক কী সেট করা হয় এবং প্রয়োজনে বিদেশী কী যুক্ত করা হয়।
তৃতীয় স্বাভাবিক ফর্মটি মেনে চলার জন্য, সমস্যাটি সমাধানের জন্য একটি নতুন টেবিল (ম্যানেজার) তৈরি করা হয়। উভয় সারণী প্রকল্প_ ম্যানেজার ক্ষেত্রের মাধ্যমে সম্পর্কিত:
তথ্যসূত্র
- তেরাদাতা (2019)। প্রথম, দ্বিতীয় এবং তৃতীয় সাধারণ ফর্ম। থেকে নেওয়া: ডকস.টারাডাটা.কম।
- টিউটোরিয়াল কাপ (2019)। তৃতীয় সাধারণ ফর্ম (3NF)। থেকে নেওয়া: tutorialcup.com।
- ডেটাবেস ডেভ (2015)। তৃতীয় সাধারণ ফর্ম (3 এনএফ) - আপনার ডেটাবেসকে সাধারণকরণ। থেকে নেওয়া: ডাটাবেডদেভ.কম।
- রিলেশনাল ডিবি ডিজাইন (2019)। তৃতীয় সাধারণ ফর্ম পরিচিতি। থেকে নেওয়া: রিলেশনালডিবিডিজাইন ডট কম।
- ডামি (2019) এসকিউএল প্রথম, দ্বিতীয় এবং তৃতীয় সাধারণ ফর্ম। থেকে নেওয়া: ডামি ডট কম।