Database Key Concept_MyNetEdu

Database Management System

Lesson – 10

Database Key Concept

Database Key Concept: Super Key, Candidate Key, Primary Key, Alternate Key.

Key কাকে বলে? এবং কত প্রকার ও কী কী?

রিলেশনের রেকর্ডগুলি পৃথক ভাবে শনাক্ত করার জন্য যে  এক বা একাধিক অ্যাট্রিবিউট বা ফিল্ড  ব্যাবহার করা হয় সেই ফিল্ড বা ফিল্ডগুলিকে ঐ রিলেশনে কী(Key) বলা হয় ।

রিলেশনাল ডেটাবেসে ব্যাবহৃত কী গুলি হলঃ

  • সুপার কী (Super Key)
  • ক্যান্ডিডেট কী (Candidate Key)
  • প্রাইমারি কী (Primary Key)
  • অল্টারনেট কী (Alternet Key)
  • ফরেন কী (Foreign Key)

সুপার কী (Super Key)

সুপার কী হল এক বা একাধিক অ্যাট্রিবিউটের বা ফিল্ডের সেট, যাকে ব্যাবহার করে রিলেশনের কোনো নির্দিষ্ট টাপেল/রো /রেকর্ড কে সনাক্ত করা যায় ।

যেমনঃ- Student(Reg_No, Name, Address, Mobile)

এখানে Student রিলেশনের সুপার কী হল Reg_No কারন রেজিট্রেশন নম্বর দিয়ে নির্দিষ্ট কোনো ছাত্রকে চেনা যায় ।

আবার {Reg_NO, Name} – এই দুটি অ্যাট্রিবিউটের গ্রুপকেও সুপার কী বলা যায় ।

এবং {Reg_NO, Name,Address} – এই তিনটি অ্যাট্রিবিউটের গ্রুপকেও সুপার কী বলা যায় ।

পুনরায় {Reg_NO, Name,Address,Mobile} – এই চারটি অ্যাট্রিবিউটের গ্রুপকেও সুপার কী বলা যায় ।

ক্যান্ডিডেটকী (Candidate Key)

একের বেশি অ্যাট্রিবিউট যখন কোনো রিলেশনের নির্দিষ্ট টাপেল/রো /রেকর্ড কে সনাক্ত করতে পারে তখন ঐ অ্যাট্রিবিউট গুলির প্রত্যেকটি কে ক্যান্ডিডেট কী  বলে ।

যেমন ঃ Student(Reg_No, Roll_N0, Name, Address, Mobile)  

এই রিলেশনে Reg_No এবং Roll_No দুটি অ্যাট্রিবিউট দিয়েই নির্দিষ্ট টাপেল/রো /রেকর্ড কে সনাক্ত করা যায় । তাই এই অ্যাট্রিবিউট দুটির প্রত্যেটিকে ক্যান্ডিডেট কী বলে ।

প্রাইমারি কী (Primary Key)

প্রাইমারি কী হল একটি ক্যান্ডিডেট কী যার সাহায্যে করে রিলেশনের কোনো নির্দিষ্ট টাপেল/রো /রেকর্ড কে সনাক্ত করা যায় ।

আথবা

রিলেশনের সবথেকে ছোটো সুপার কী কে  প্রাইমারি কী বলে ।

যেমন ঃ Student(Reg_No, Roll_No, Name, Address, Mobile)

এই রিলেশনে Reg_No এবং Roll_No দুটি অ্যাট্রিবিউট দিয়েই নির্দিষ্ট টাপেল/রো /রেকর্ড কে সনাক্ত করা যায় । তাই এই অ্যাট্রিবিউট দুটি প্রত্যেটিকে ক্যান্ডিডেট কী বলে আর এই ক্যান্ডিডেট কী দুটির যে কোনো একটি কে প্রাইমারী কী নির্বাচন করা যায় ।

অল্টারনেট কী (Alternet Key)

কোনো রিলেশনে একাধিক ক্যান্ডিডেট কি থাকতে পারে তার মধ্য থেকে একটি কে প্রাইমারি কী করার পর বাকী যে ক্যান্ডিডেট কী গুলি থাকে সেই ক্যান্ডিডেট কী বা কী গুলিকে অল্টারনেট কী বলে ।

যেমন ঃ Student(Reg_No, Roll_No, Name, Address, Mobile)

এই রিলেশনে Reg_No এবং Roll_No দুটি অ্যাট্রিবিউট দিয়েই নির্দিষ্ট টাপেল/রো /রেকর্ড কে সনাক্ত করা যায় । তাই এই অ্যাট্রিবিউট দুটি প্রত্যেটিকে ক্যান্ডিডেট কী বলে আর এই ক্যান্ডিডেট কী দুটি থেকে যদি Roll_No কে  প্রাইমারী কী নির্বাচন করা হয় তাহলে Reg_No হবে অল্টারনেট কী

ফরেন কী (Foreign Key)

ডেটাবেসের কোনো রিলেশনের প্রাইমারি কী যখন সম্পর্কযুক্ত অন্য রিলেশনের ক্যান্ডিডেট কী হিসাবে উপস্থিত থাকে তখন ওই প্রাইমারি কী কে প্রথম রিলেশনের সাপেক্ষে দ্বিতীয় রিলেশনের ফরেন কী বলা হয় ।

যেমন ঃ Student(Reg_No, Name, Address)

              Result( Reg_NO, Roll_No, BNG, ENG, COMA)

 ওপরের প্রথম রিলেশনের প্রাইমারি কী হল Reg_No এবং Result  রিলেশনের প্রাইমারি কী হল Roll_No কিন্তু Reg_No Student Table এ প্রাইমারি কী এবং Result টেবিলের ফরেন কী ।

প্রাইমারি কী (Primary Key) এবং ক্যান্ডিডেট কী  (Candidate Key) এর মধ্যে পার্থক্য লেখ ।

প্রাইমারি কী (Primary Key)ক্যান্ডিডেট কী  (Candidate Key)
ডেটাবেস টেবিলে সর্বদা একটি প্রাইমারি কী অবশ্যই থাকে ।ডেটাবেস টেবিলে একধিক ক্যান্ডিডেট কী থাকতে পারে ।
প্রাইমারি কী এর মান স্বয়ংক্রিয়ভাবে টেবিলে প্রদান করা যায় ।ক্যান্ডিডেট কী এর মান স্বয়ংক্রিয়ভাবে টেবিলে প্রদান করা যায় না ।
সমস্ত প্রায়মারি কী ই ক্যান্ডিডেট কীসমস্ত ক্যান্ডিডেট কী  ই কিন্তু প্রাইমারি কী নয় ।

সুপার  কী (Super Key)ক্যান্ডিডেট কী  (Candidate Key) এর মধ্যে পার্থক্য লেখ ।

সুপার  কী (Super Key)ক্যান্ডিডেট কী  (Candidate Key)
টেবিলের এক বা একাধিক ফিল্ড নিয়ে সুপার কী তৈরিডেটাবেস টেবিলে একধিক ক্যান্ডিডেট কী থাকতে পারে ।
সুপার কী এর ক্ষেত্রে প্রাইমারি কী এর বৈশিষ্ট্য নাও থাকতে পারে ।ক্যান্ডিডেট কী এর মধ্যে প্রাইমারি কী এর বৈশিষ্ট্য থাকে ।
সমস্ত সুপার কী ক্যান্ডিডেট কী হতে পারে বা নাও হতে পারে ।সমস্ত ক্যান্ডিডেট কী ই কিন্তু প্রাইমারি কী নয় ।
Database Key Concরায়_MyNetEdu

Leave a Reply