ক্যান্ডিডেট কি কী?
একটি রিলেশনে একাধিক ক্যান্ডিডেট কি হতে পারে। এগুলোই প্রাইমারি কি হতে যোগ্য। ক্যান্ডিডেট কি বাস্তবায়নের জন্য একাধিক কলামকে যুগ্মভাবে UNIQUE KEY হিসেবে ডিফাইন করা হয়।
সিনট্যাক্স
ALTER TABLE yourTableName ADD UNIQUE KEY anyName(yourColumnName1, yourColumnName2);
উদাহরণ
mysql> create table DemoTable1400 (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(40), Age int); mysql> alter table DemoTable1400 add unique key name_age_unique(Name,Age);
টেস্ট
mysql> insert into DemoTable1400(Name,Age) values('Chris',23); -- OK
mysql> insert into DemoTable1400(Name,Age) values('Chris',23); -- ERROR 1062: Duplicate entry 'Chris-23'
mysql> insert into DemoTable1400(Name,Age) values('David',23); -- OK
mysql> insert into DemoTable1400(Name,Age) values('Chris',24); -- OK
ফলাফল
+----+-------+------+ | Id | Name | Age | +----+-------+------+ | 1 | Chris | 23 | | 4 | Chris | 24 | | 3 | David | 23 | +----+-------+------+
ব্যাখ্যা
UNIQUE KEY (Name, Age)— নাম এবং বয়সের যুগ্ম უნিক হবে- এটি একটি ক্যান্ডিডেট কি (প্রাইমারি কি হওয়ার যোগ্য)
- প্রাইমারি কি
Idথাকা সত্ত্বেও এই ইউনিক কি ক্যান্ডিডেট কি হিসেবে কাজ করে