কম্পিউটার টিউটোরিয়াল

RDBMS-এ অ্যালটারনেট কী (Alternate Key) কী?

অ্যালটারনেট কী (Alternate Key) বা সেকেন্ডারি কী (Secondary Key) হলো সেই ক্যান্ডিডেট কী যা প্রাইমারি কী হিসেবে নির্বাচিত নहीं হয়েছে। প্রতিটি টেবিলে একাধিক ক্যান্ডিডেট কী থাকতে পারে, কিন্তু প্রাইমারি কী শুধু একটি। বাকি ক্যান্ডিডেট কীগুলোই অ্যালটারনেট কী।

বৈশিষ্ট্য

  • ক্যান্ডিডেট কী (Candidate Key) = প্রাইমারি কীর প্রার্থী।
  • প্রাইমারি কী বাছাই করার পর বাকি ক্যান্ডিডেট কী = অ্যালটারনেট কী।
  • ইউনিক এবং নন-নাল (সাধারণত) হওয়া উচিত।
  • ফরেন কী রেফারেন্স করতে পারে (Unique Constraint রেফারেন্সযোগ্য)।

উদাহরণ ১: Student টেবিল

Student_ID Student_Enroll Student_Name Student_Email
0962717Manishaaa@gmail.com
0552655Mananabc@gmail.com
0672699Shreyaspqr@gmail.com

বিশ্লেষণ

  • Candidate Keys: Student_ID, Student_Enroll, Student_Email (সব ইউনিক)۔
  • যদি Student_ID = Primary Key,
  • তবে Student_Enroll এবং Student_Email = Alternate Keys।

উদাহরণ ২: Employee টেবিল

Employee_ID Employee_SSN Employee_Name Employee_Phone
E897SSN08Harry999999
E856SSN06Jacob999899
E871SSN09Amy999898

Candidate Keys:

  • Employee_ID
  • Employee_SSN (Social Security Number)
  • Employee_Phone

যদি Employee_SSN = Primary Key হয়,

  • তবে Employee_ID এবং Employee_Phone = Alternate Keys।

অ্যালটারনেট কীর ব্যবহার

  • Unique Index তৈরি করে কোয়েরি পারফরম্যান্স বেড়াতে।
  • অ্যালটারনেটিভ লুকআপ পাথ (যেমন: ইমেইল দিয়ে ইউজার খুঁজা)।
  • প্রাইমারি কী চেঞ্জ হলে ফলব্যাক আইডেন্টিফায়ার।
  • বিজনেস রুল এনফোর্সমেন্ট (ইমেইল/ফোন ইউনিক থাকতে হবে)।

SQL ইমপ্লিমেন্টেশন

CREATE TABLE Employee (
  Employee_ID INT PRIMARY KEY,
  Employee_SSN VARCHAR(20) UNIQUE,      -- Alternate Key 1
  Employee_Name VARCHAR(100),
  Employee_Phone VARCHAR(15) UNIQUE,    -- Alternate Key 2
  UNIQUE (Employee_SSN, Employee_Phone) -- Composite Alternate Key
);

সারসংক্ষেপ: কী হায়ারার্কি (Key Hierarchy)

Super Key (All unique combinations)
   ↓ Minimal Subset
Candidate Keys (Minimal Super Keys)
   ↓ Choose One
Primary Key (Main Identifier)
   ↓ Remaining
Alternate / Secondary Keys (Other Candidate Keys)
  1. RDBMS-এ কম্পোজিট কী (Composite Key) কী?

  2. RDBMS-এ রেফারেনশিয়াল ইন্টিগ্রিটি রুল (Referential Integrity Rule)

  3. RDBMS টার্মিনোলজি (Database, Table, Column, Row, Keys)

  4. RDBMS-এ ফরেন কী (Foreign Key) কী এবং কীভাবে কাজ করে