MySQL-এ ERROR 1062 (23000): Duplicate entry এরর তখন দেখায় যখন UNIQUE কী বা PRIMARY KEY কলামে ডুপ্লিকেট মান ইনসার্ট করার চেষ্টা করা হয়।
ইউনিক কম্পোজিট কীসহ টেবিল তৈরি
mysql> CREATE TABLE DemoTable776 (
FirstValue INT,
SecondValue INT,
UNIQUE KEY (FirstValue, SecondValue)
);
Query OK, 0 rows affected (0.74 sec)
ডেটা ইনসার্ট (ডুপ্লিকেট করলে এরর)
mysql> INSERT INTO DemoTable776 VALUES (10, 20); Query OK, 1 row affected (0.16 sec) mysql> INSERT INTO DemoTable776 VALUES (10, 40); Query OK, 1 row affected (0.15 sec) mysql> INSERT INTO DemoTable776 VALUES (40, 20); Query OK, 1 row affected (0.26 sec) mysql> INSERT INTO DemoTable776 VALUES (10, 20); ERROR 1062 (23000): Duplicate entry '10-20' for key 'FirstValue'
রেকর্ড দেখানো
mysql> SELECT * FROM DemoTable776;
আউটপুট (ডুপ্লিকেট ইনসার্ট হয়নি):
+------------+-------------+ | FirstValue | SecondValue | +------------+-------------+ | 10 | 20 | | 10 | 40 | | 40 | 20 | +------------+-------------+ 3 rows in set (0.00 sec)
কারণ ও সমাধান
| কারণ | সমাধান |
|---|---|
| ইউনিক কী/প্রাইমারি কীতে ডুপ্লিকেট মান | ইনসার্ট করার আগে SELECT দিয়ে চেক করুন |
| AUTO_INCREMENT মান ম্যানুয়ালি সেট করা | AUTO_INCREMENT কলামে মান দিয়ে ইনসার্ট করবেন না |
| IGNORE কিওয়ার্ড ছাড়া ডুপ্লিকেট ইনসার্ট | INSERT IGNORE বা ON DUPLICATE KEY UPDATE ব্যবহার করুন |