Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में ALTER TABLE के बिना UNIQUE कंस्ट्रेंट लागू करना

मौजूदा MySQL टेबल पर ALTER TABLE के अलावा CREATE UNIQUE INDEX स्टेटमेंट का उपयोग करके भी UNIQUE कंस्ट्रेंट लागू किया जा सकता है।

सिंटैक्स

CREATE UNIQUE INDEX index_name ON table_name(column_name);

उदाहरण

मान लें Test5 टेबल है जिसमें ID कॉलम पर UNIQUE कंस्ट्रेंट जोड़ना है:

mysql> DESCRIBE TEST5;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    | int(11)     | YES  |     | NULL    |       |
| Name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+

mysql> CREATE UNIQUE INDEX ID_UNQ ON TEST5(ID);
Query OK, 0 rows affected (0.20 sec)

mysql> DESCRIBE test5;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    | int(11)     | YES  | UNI | NULL    |       |
| Name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+

परिणाम विश्लेषण

  • Key कॉलम में UNI दिखाता है कि UNIQUE कंस्ट्रेंट लागू हो गया
  • इंडेक्स नाम ID_UNQ उपयोगकर्ता-परिभाषित है
  • यह तरीका ALTER TABLE ... ADD UNIQUE के समान काम करता है

दोनों तरीकों की तुलना

पद्धतिसिंटैक्सनोट
ALTER TABLEALTER TABLE t ADD UNIQUE(col)मानक SQL, कंस्ट्रेंट नाम ऑटो-जेनरेट
CREATE UNIQUE INDEXCREATE UNIQUE INDEX idx ON t(col)इंडेक्स नाम नियंत्रित कर सकते हैं

दोनों तरीके आंतरिक रूप से एक ही UNIQUE इंडेक्स बनाते हैं।

  1. - मौजूदा MySQL तालिका से डेटा लाने के लिए PHP स्क्रिप्ट में किन PHP फ़ंक्शन का उपयोग किया जाता है?

    PHP मौजूदा MySQL तालिका से डेटा लाने के लिए निम्न फ़ंक्शन का उपयोग करता है: mysql_query() फ़ंक्शन यह फ़ंक्शन PHP स्क्रिप्ट में मौजूदा MySQL तालिका से डेटा लाने के लिए उपयोग किया जाता है। यह फ़ंक्शन दो पैरामीटर लेता है और सफलता पर TRUE या विफलता पर FALSE लौटाता है। इसका वाक्यविन्यास निम्न है: वाक्यवि

  1. - मौजूदा MySQL तालिका को हटाने के लिए कौन सा PHP फ़ंक्शन उपयोग किया जाता है?

    PHP मौजूदा MySQL तालिका को हटाने के लिए mysql_query फ़ंक्शन का उपयोग करता है। यह फ़ंक्शन दो पैरामीटर लेता है और सफलता पर TRUE या विफलता पर FALSE लौटाता है। इसका वाक्यविन्यास निम्न है: वाक्यविन्यास bool mysql_query( sql, connection ); इस फ़ंक्शन में उपयोग किए जाने वाले पैरामीटर निम्न हैं: S. No. प

  1. - MySQL में ALTER TABLE में UNIQUE CONSTRAINT जोड़ना

    आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1811 ( FirstName varchar(20), LastName varchar(20) ); Query OK, 0 rows affected (0.00 sec) इंडेक्स जोड़ने का क्वेरी यहाँ है: mysql> alter table DemoTable1811 ADD UNIQUE unique_index_first_last_name(FirstName, LastName); Query OK