ডুপ্লিকেট রেকর্ড প্রতিবন্ধক করার জন্য আপনি UNIQUE INDEX ব্যবহার করতে পারেন:
alter table yourTableName ADD UNIQUE INDEX(yourColumnName1, yourColumnName2,....N);
প্রথমে একটি টেবিল তৈরি করা যাক:
mysql> create table DemoTable -> ( -> Value1 int, -> Value2 int -> ); Query OK, 0 rows affected (0.55 sec)
ইউনিক ইন্ডেক্স যোগ করার কোয়েরি:
mysql> alter table DemoTable ADD UNIQUE INDEX(Value1, Value2); Query OK, 0 rows affected (0.54 sec) Records: 0 Duplicates: 0 Warnings: 0
INSERT কমান্ড ব্যবহার করে কিছু রেকর্ড ইনসার্ট করা যাক:
নোট: সাধারণ INSERT কমান্ডের পরিবর্তে INSERT IGNORE কমান্ড ব্যবহার করুন। যদি রেকর্ডটি ডুপ্লিকেট না হয়, তবে MySQL স্বাভাবিকভাবে ইনসার্ট করবে। যদি ডুপ্লিকেট হয়, তবে IGNORE কীওয়ার্ড MySQL-কে বলবে সেটি নীরবে উপেক্ষা করতে, কোনো এরর ছাড়াই।
mysql> insert ignore into DemoTable values(10,20); Query OK, 1 row affected (0.14 sec) mysql> insert ignore into DemoTable values(10,20); Query OK, 0 rows affected, 1 warning (0.10 sec)
SELECT স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সব রেকর্ড দেখানো যাক:
mysql> select *from DemoTable;
আউটপুট
এটি নিচের আউটপুট দেবে:
+--------+--------+ | Value1 | Value2 | +--------+--------+ | 10 | 20 | +--------+--------+ 1 row in set (0.00 sec)
টিপ: INSERT IGNORE এর পরিবর্তে INSERT ... ON DUPLICATE KEY UPDATE ও ব্যবহার করা যায় যদি ডুপ্লিকেট হলে আপডেট করতে চান।