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

MySQL-এ ON DUPLICATE KEY UPDATE-এর জন্য কনস্ট্রেইন্ট যোগ করা

কনস্ট্রেইন্ট যোগ করার সিনট্যাক্স:

alter table yourTableName add constraint anyName unique(yourColumnName);

প্রথমে একটি টেবিল তৈরি করি:

mysql> create table DemoTable1459 (
    -> Name varchar(20),
    -> Score int
    -> );
Query OK, 0 rows affected (0.72 sec)

ইউনিক কনস্ট্রেইন্ট যোগ করি:

mysql> alter table DemoTable1459 add constraint Name_const unique(Name);
Query OK, 0 rows affected (1.09 sec)
Records: 0  Duplicates: 0  Warnings: 0

ON DUPLICATE KEY UPDATE সহ ইনসার্ট করি:

mysql> insert into DemoTable1459 values('Chris',57) on duplicate key update Score=Score+10;
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable1459 values('David',89) on duplicate key update Score=Score+10;
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable1459 values('Chris',78) on duplicate key update Score=Score+10;
Query OK, 2 rows affected (0.33 sec)

সব রেকর্ড দেখি:

mysql> select * from DemoTable1459;

আউটপুট (Chris-এর স্কোর ৫৭+১০=৬৭ হয়েছে):

+-------+-------+
| Name  | Score |
+-------+-------+
| Chris |    67 |
| David |    89 |
+-------+-------+
2 rows in set (0.00 sec)

ব্যাখ্যা: ইউনিক কনস্ট্রেইন্ট ছাড়া ON DUPLICATE KEY UPDATE কাজ করে না। PRIMARY KEY বা UNIQUE INDEX থাকা বাধ্যতামূলক।

  1. Java MySQL ব্যবহার করে MySQL টেবিল আপডেট করা

  2. MySQL-এ JOIN দিয়ে অন্য টেবিলের কলাম ভিত্তিক আপডেট করা

  3. MySQL-এ INSERT… ON DUPLICATE KEY UPDATE বাস্তবায়ন

  4. MySQL에서 일괄 업데이트(Batch Update) 수행하기