A field in one table that refers to the Primary Key in another table is called what?
Solution
Correct Answer: Option D
- Foreign Key হলো একটি field (অথবা fields-এর সমষ্টি) যা একটি টেবিলে আছে এবং সেটি অন্য টেবিলের Primary Key-কে রেফারেন্স করে।
- এটি দুটি টেবিলকে লিংক করে এবং ডেটার referential integrity নিশ্চিত করে—মানে child টেবিলের foreign key-তে থাকা মান অবশ্যই parent টেবিলের কোনো primary key-র সাথে মিলতে হবে।
- একটি Foreign Key সাধারণত অনন্য (unique) নয়; একাধিক রেকর্ড একই foreign key মান ভাগ করে নিতে পারে।
- Foreign Key একটি column-এ না-ও হতে পারে; এটি composite হতে পারে (একাধিক column মিলিয়ে) এবং ঐ ক্ষেত্রে composite foreign key বলা হয়।
- একটি Foreign Key NULL হতে পারে যদি constraint সেট না করে বা NULL অনুমোদিত থাকে।
- DBMS-এ cascade নিয়ম (যেমন ON DELETE CASCADE, ON UPDATE CASCADE) ব্যবহার করে parent টেবিলে পরিবর্তন হলে child টেবিলে কিভাবে আচরণ করবে তা নির্ধারণ করা যায়।
অন্যান্য অপশনের সংক্ষিপ্ত ব্যাখ্যা: Candidate Key হলো এমন একটি attribute বা attribute-সমষ্টি যা টুপলকে ইউনিকভাবে শনাক্ত করতে পারে (Primary Key হিসেবে নির্বাচিত হতে পারে)। Super Key হলো এমন একটা attribute-সমষ্টি যেটা uniqueness নিশ্চিত করে (এর মধ্যে candidate key এবং primary key পড়ে)। Composite Key বলতে একাধিক column মিলিয়ে তৈরি করা key বোঝায়; এটি primary বা foreign key হিসেবে ব্যবহার করা যেতে পারে যদি তা সেই লক্ষ্য পূরণ করে।