MySQL-এ একাধিক কলামের কম্বিনেশন ইউনিক রাখতে (ডুপ্লিকেট রো প্রতিরোধ করতে) UNIQUE কনস্ট্রেইন্ট বা UNIQUE INDEX ব্যবহার করা হয়।
উদাহরণ
১. টেবিল তৈরি করুন
mysql> CREATE TABLE DemoTable1580 (
-> id INT,
-> Name VARCHAR(20),
-> Age INT
-> );
২. কম্পোজিট ইউনিক ইনডেক্স যোগ করুন
mysql> ALTER TABLE DemoTable1580 ADD UNIQUE INDEX(id, Name, Age);
৩. ডেটা ইনসার্ট করুন (ডুপ্লিকেট চেষ্টা)
mysql> INSERT INTO DemoTable1580 VALUES(101, 'Chris', 21); -- OK
mysql> INSERT INTO DemoTable1580 VALUES(102, 'Chris', 21); -- OK (id ভিন্ন)
mysql> INSERT INTO DemoTable1580 VALUES(102, 'David', 21); -- OK (Name ভিন্ন)
mysql> INSERT INTO DemoTable1580 VALUES(101, 'Chris', 21); -- ERROR! (id+Name+Age সব মিলে)
এরর: ERROR 1062 (23000): Duplicate entry '101-Chris-21' for key 'id'
৪. সফলভাবে ইনসার্ট হওয়া রেকর্ড দেখুন
mysql> SELECT * FROM DemoTable1580;
আউটপুট:
+------+-------+------+
| id | Name | Age |
+------+-------+------+
| 101 | Chris | 21 |
| 102 | Chris | 21 |
| 102 | David | 21 |
+------+-------+------+
মূল পয়েন্ট:
UNIQUE INDEX(col1, col2, col3)- তিনটি কলামের কম্বিনেশন ইউনিক হবে।- একক কলাম ইউনিক করতে:
UNIQUE (col_name)বাcol_name INT UNIQUE। INSERT IGNOREবাON DUPLICATE KEY UPDATEব্যবহার করে ডুপ্লিকেট এরর হ্যান্ডেল করুন।- প্রাইমারি কী আটোমেটিক্যালি ইউনিক এবং নন-নাল।