বিদেশী কী এবং প্রাথমিক কী এর মধ্যে মূল পার্থক্য হল যে বিদেশী কী হল একটি কলাম বা কলামের একটি সেট যা একটি প্রাথমিক কী বা অন্য টেবিলের প্রার্থী কীকে নির্দেশ করে যখন প্রাথমিক কী একটি কলাম বা কলামের একটি সেট। যা একটি টেবিলের একটি সারিকে স্বতন্ত্রভাবে সনাক্ত করতে ব্যবহার করা যেতে পারে৷
একটি কলাম বা কলামের একটি সেট যা একটি ডাটাবেসের একটি সারি বা সারির সেট সনাক্ত করতে বা অ্যাক্সেস করতে ব্যবহার করা যেতে পারে তাকে কী বলে। একটি রিলেশনাল ডাটাবেসের একটি প্রাথমিক কী হল একটি টেবিলের কলামের সংমিশ্রণ যা টেবিলের একটি সারিকে অনন্যভাবে সনাক্ত করে। একটি রিলেশনাল ডাটাবেসে বিদেশী কী হল একটি টেবিলের একটি ক্ষেত্র যা অন্য টেবিলের প্রাথমিক কীর সাথে মেলে।রেফারেন্স টেবিল ক্রস করতে বিদেশী কী ব্যবহার করা হয়।
বিদেশী কী কী?
বিদেশী কী দুটি টেবিলের মধ্যে একটি রেফারেন্সিয়াল সীমাবদ্ধতা। এটি একটি টেবিলে একটি কলাম বা কলামের সেট সনাক্ত করে, যাকে রেফারেন্সিং টেবিল বলা হয় যা অন্য টেবিলের কলামগুলির একটি সেট বোঝায়, যাকে রেফারেন্স টেবিল বলা হয়। রেফারেন্সিং টেবিলের বিদেশী কী বা কলামগুলি অবশ্যই প্রাথমিক কী বা একটি প্রার্থী কী (একটি কী যা প্রাথমিক কী হিসাবে ব্যবহার করা যেতে পারে) হতে হবে। অধিকন্তু, বিদেশী কীগুলি বিভিন্ন টেবিলে ডেটা লিঙ্ক করার অনুমতি দেয়।অতএব, বিদেশী কী এমন মান ধারণ করতে পারে না যা এটি উল্লেখ করে যে টেবিলে উপস্থিত হয় না। তারপরে বিদেশী কী দ্বারা প্রদত্ত রেফারেন্সটি বিভিন্ন টেবিলে তথ্য লিঙ্ক করতে সহায়তা করে এবং এটি স্বাভাবিক ডেটাবেসের সাথে অপরিহার্য হয়ে উঠবে। রেফারেন্সিং টেবিলের একাধিক সারি রেফারেন্স টেবিলের একটি একক সারি উল্লেখ করতে পারে।
চিত্র 01: বিদেশী কী ম্যাপিং
ANSI SQL স্ট্যান্ডার্ডে, ফরেন কী সীমাবদ্ধতা বিদেশী কীগুলিকে সংজ্ঞায়িত করে। উপরন্তু, টেবিল নিজেই তৈরি করার সময় বিদেশী কীগুলি সংজ্ঞায়িত করা সম্ভব। একটি টেবিলে একাধিক বিদেশী কী থাকতে পারে এবং তারা বিভিন্ন টেবিলের উল্লেখ করতে পারে।
প্রাথমিক কী কী?
প্রাথমিক কী হল একটি কলাম বা কলামের সংমিশ্রণ যা একটি রিলেশনাল ডাটাবেসের টেবিলে একটি সারিকে স্বতন্ত্রভাবে সংজ্ঞায়িত করে। একটি টেবিলে সর্বাধিক একটি প্রাথমিক কী থাকতে পারে। প্রাথমিক কী অন্তর্নিহিত NOT NULL সীমাবদ্ধতা প্রয়োগ করে। অতএব, প্রাথমিক কী সহ একটি কলামে NULL মান থাকতে পারে না। প্রাথমিক কী সারণিতে একটি সাধারণ বৈশিষ্ট্য হতে পারে যা অনন্য হওয়ার গ্যারান্টিযুক্ত যেমন একটি সামাজিক নিরাপত্তা নম্বর, অথবা এটি Microsoft SQL সার্ভারে গ্লোবাললি ইউনিক আইডেন্টিফায়ার (GUID) এর মতো ডেটাবেস ম্যানেজমেন্ট সিস্টেম দ্বারা তৈরি একটি অনন্য মান হতে পারে।
চিত্র 02: প্রাথমিক কী
উপরন্তু, ANSI SQL স্ট্যান্ডার্ডের প্রাথমিক কী সীমাবদ্ধতা প্রাথমিক কীগুলিকে সংজ্ঞায়িত করে। টেবিল তৈরি করার সময় একটি প্রাথমিক কী সংজ্ঞায়িত করাও সম্ভব। তা ছাড়াও, এসকিউএল প্রাইমারি কীকে এক বা একাধিক কলাম দিয়ে তৈরি করার অনুমতি দেয় এবং প্রাইমারি কী-তে অন্তর্ভুক্ত প্রতিটি কলামকে শূন্য নয় বলে স্পষ্টভাবে সংজ্ঞায়িত করা হয়। কিন্তু কিছু ডাটাবেস ম্যানেজমেন্ট সিস্টেমের জন্য প্রাথমিক কী কলামগুলি স্পষ্টভাবে শূন্য নয়।
বিদেশী কী এবং প্রাথমিক কী-এর মধ্যে পার্থক্য কী?
বিদেশী কী বনাম প্রাথমিক কী |
|
বিদেশী কী হল একটি রিলেশনাল ডাটাবেস টেবিলের একটি কলাম বা কলামের গ্রুপ যা দুটি টেবিলের ডেটার মধ্যে একটি সংযোগ প্রদান করে। | প্রাথমিক কী হল একটি বিশেষ রিলেশনাল ডাটাবেস টেবিল কলাম বা একাধিক কলামের সংমিশ্রণ যা সমস্ত টেবিল রেকর্ডকে অনন্যভাবে সনাক্ত করতে দেয়৷ |
NULL | |
বিদেশী কী শূন্য মান গ্রহণ করে। | প্রাথমিক কী মান শূন্য হতে পারে না। |
চাবির সংখ্যা | |
টেবিলে একাধিক বিদেশী কী থাকতে পারে। | টেবিলে শুধুমাত্র একটি প্রাথমিক কী থাকতে পারে। |
ডুপ্লিকেশন | |
Tuples একটি বিদেশী কী বৈশিষ্ট্যের জন্য একটি ডুপ্লিকেট মান থাকতে পারে৷ | একটি সম্পর্কের দুটি টিপলে একটি প্রাথমিক কী বৈশিষ্ট্যের জন্য ডুপ্লিকেট মান থাকতে পারে না। |
সারাংশ – বিদেশী কী বনাম প্রাথমিক কী
বিদেশী কী এবং প্রাথমিক কী এর মধ্যে পার্থক্য হল যে বিদেশী কী হল একটি কলাম বা কলামের একটি সেট যা একটি প্রাথমিক কী বা অন্য টেবিলের একটি প্রার্থী কী নির্দেশ করে যখন প্রাথমিক কী একটি কলাম বা কলামের একটি সেট যা একটি টেবিলে একটি সারি অনন্যভাবে সনাক্ত করতে ব্যবহার করা যেতে পারে৷