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

MySQL টেবিল থেকে UNIQUE কনস্ট্রেইন্ট ড্রপ করার পদ্ধতি

প্রথমে UNIQUE কনস্ট্রেইন্ট সহ একটি টেবিল তৈরি করি। এটি ডুপ্লিকেট মান ইনসার্ট করার অনুমতি দেয় না।

টেবিল তৈরি

mysql> CREATE TABLE UniqueConstraintDemo (
    -> Name VARCHAR(200) UNIQUE
    -> );
Query OK, 0 rows affected (1.05 sec)

DESC কমান্ড দিয়ে কনস্ট্রেইন্ট যাচাই করি:

mysql> DESC UniqueConstraintDemo;

আউটপুট:

+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| Name  | varchar(200) | YES  | UNI | NULL    |       |
+-------+--------------+------+-----+---------+-------+
1 row in set (0.00 sec)

Key কলামে UNI অর্থাৎ ইউনিক কনস্ট্রেইন্ট আছে।

ডুপ্লিকেট ইনসার্ট করার চেষ্টা

mysql> INSERT INTO UniqueConstraintDemo VALUES('John');
Query OK, 1 row affected (0.54 sec)
mysql> INSERT INTO UniqueConstraintDemo VALUES('John');
ERROR 1062 (23000): Duplicate entry 'John' for key 'Name'

এরর ১০৬২ দেখাচ্ছে ডুপ্লিকেট এন্ট্রি অনুমোদিত নয়।

UNIQUE কনস্ট্রেইন্ট ড্রপ করা

সিনট্যাক্স:

DROP INDEX আপনার_কলাম_নাম ON আপনার_টেবিল_নাম;

প্রয়োগ:

mysql> DROP INDEX Name ON UniqueConstraintDemo;
Query OK, 0 rows affected (0.39 sec)
Records: 0 Duplicates: 0 Warnings: 0

আবার DESC দিয়ে যাচাই করি:

mysql> DESC UniqueConstraintDemo;

আউটপুট:

+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| Name  | varchar(200) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
1 row in set (0.00 sec)

এখন Key কলাম খালি, অর্থাৎ ইউনিক কনস্ট্রেইন্ট সফলভাবে মুছে ফেলা হয়েছে।

  1. MySQL-এ RAND() এবং LIMIT দিয়ে র‍্যান্ডম রো বের করা

  2. MySQL টেবিল থেকে ইন্ডেক্স সরানো

  3. MySQL에서 ALTER TABLE ADD UNIQUE로 복합 유니크 제약 추가하기

  4. NodeJS ব্যবহার করে MySQL টেবিল ড্রপ করুন