MySQL में मौजूदा फील्ड को यूनिक बनाने के लिए, हम ALTER कमांड का उपयोग कर सकते हैं और फील्ड के लिए UNIQUE कंस्ट्रेंट सेट कर सकते हैं। आइए एक उदाहरण देखते हैं। पहले, हम एक टेबल बनाएंगे।
mysql> create table AddingUnique -> ( -> Id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.44 sec)
मौजूदा फील्ड में UNIQUE जोड़ने का सिंटैक्स।
ALTER TABLE yourTableName ADD UNIQUE(yourColumnName);
कॉलम 'name' में UNIQUE जोड़ने के लिए उपरोक्त सिंटैक्स लागू करना।
mysql> alter table AddingUnique add UNIQUE(name); Query OK, 0 rows affected (0.60 sec) Records: 0 Duplicates: 0 Warnings: 0
अब हम टेबल में डुप्लीकेट रिकॉर्ड्स इन्सर्ट नहीं कर सकते, क्योंकि हमने फील्ड को यूनिक सेट कर दिया है। यदि हम डुप्लीकेट रिकॉर्ड्स जोड़ने का प्रयास करते हैं तो यह एरर देता है।
mysql> alter table AddingUnique add UNIQUE(name); Query OK, 0 rows affected (0.60 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> insert into AddingUnique values(1,'John'); Query OK, 1 row affected (0.15 sec) mysql> insert into AddingUnique values(1,'John'); ERROR 1062 (23000): Duplicate entry 'John' for key 'name' mysql> insert into AddingUnique values(2,'Carol'); Query OK, 1 row affected (0.18 sec) mysql> insert into AddingUnique values(3,'John'); ERROR 1062 (23000): Duplicate entry 'John' for key 'name' mysql> insert into AddingUnique values(4,'Smith'); Query OK, 1 row affected (0.18 sec)
सभी रिकॉर्ड्स डिस्प्ले करने के लिए।
mysql> select * from AddingUnique;
आउटपुट निम्न है।
+------+-------+ | Id | name | +------+-------+ | 1 | John | | 2 | Carol | | 4 | Smith | +------+-------+ 3 rows in set (0.00 sec)