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

MySQL-এ বিদ্যমান কলামকে Unique কীভাবে করবেন?

ALTER TABLE ... ADD UNIQUE দিয়ে কলামকে অনন্য করা

যে কলামটি ইতিমধ্যে টেবিলে আছে, সেটিকে UNIQUE কনস্ট্রেইন্ট দিয়ে অনন্য করা যায়। এরপর সেই কলামে ডুপ্লিকেট মান ইনসার্ট করা যাবে না।

টেবিল তৈরি ও UNIQUE যোগ করা

mysql> CREATE TABLE AddingUnique (Id INT, name VARCHAR(100));
mysql> ALTER TABLE AddingUnique ADD UNIQUE (name);
Query OK, 0 rows affected (0.60 sec)

ডুপ্লিকেট ইনসার্ট চেষ্টা (এরর হবে)

mysql> INSERT INTO AddingUnique VALUES (1,'John');  -- OK
mysql> INSERT INTO AddingUnique VALUES (1,'John'); -- ERROR 1062: Duplicate entry 'John' for key 'name'
mysql> INSERT INTO AddingUnique VALUES (2,'Carol'); -- OK
mysql> INSERT INTO AddingUnique VALUES (3,'John'); -- ERROR 1062
mysql> INSERT INTO AddingUnique VALUES (4,'Smith'); -- OK

ফাইনাল ডেটা

+------+-------+
| Id   | name  |
+------+-------+
| 1    | John  |
| 2    | Carol |
| 4    | Smith |
+------+-------+

টিপস: বড় টেবিলে UNIQUE যোগ করার সময় লকিং এবং পারফরম্যান্স প্রভাবিত হতে পারে।

  1. MySQL-এ FORMAT() ফাংশন দিয়ে সংখ্যাকে "মানব-পঠনযোগ্য" (Human Readable) বানানো

  2. MySQL-এ দুটি কলামের জোড়া (pair) কে UNIQUE করতে ALTER TABLE ব্যবহার

  3. MySQL-এ ইউজার-ডিফাইনড ভেরিয়েবল দিয়ে দুটি কলামের মান সোয়াপ করা

  4. MySQL-এ CHAR ফিল্ডকে DATETIME ফিল্ডে কনভার্ট করা