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

MySQL में मौजूदा टेबल पर UNIQUE कंस्ट्रेंट कैसे लागू करें

मौजूदा MySQL टेबल के किसी कॉलम पर ALTER TABLE स्टेटमेंट का उपयोग करके UNIQUE कंस्ट्रेंट जोड़ा जा सकता है।

सिंटैक्स

-- विधि 1: MODIFY क्लॉज
ALTER TABLE table_name MODIFY column_name datatype UNIQUE;

-- विधि 2: ADD UNIQUE क्लॉज
ALTER TABLE table_name ADD UNIQUE (column_name);

उदाहरण

Test4 टेबल में Name कॉलम पर UNIQUE कंस्ट्रेंट जोड़ना:

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

mysql> ALTER TABLE test4 MODIFY Name VARCHAR(20) UNIQUE;
Query OK, 0 rows affected (0.22 sec)

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

दूसरी विधि से भी समान परिणाम

mysql> ALTER TABLE test4 ADD UNIQUE(name);
Query OK, 0 rows affected (0.16 sec)

महत्वपूर्ण नोट

  • यदि कॉलम में पहले से डुप्लिकेट मान हैं, तो ALTER TABLE फेल हो जाएगा
  • UNIQUE कंस्ट्रेंट NULL मान अनुमति देता है (एकाधिक NULL संभव)
  • इंडेक्स नाम ऑटो-जेनरेट होता है (कॉलम नाम पर आधारित)
  • इंडेक्स नाम कस्टमाइज़ करने के लिए CREATE UNIQUE INDEX उपयोग करें

सत्यापन

SHOW INDEX FROM test4\G
-- Key_name में इंडेक्स नाम, Column_name में कॉलम नाम दिखेगा
  1. - MySQL व्यू की संरचना कैसे प्राप्त करें जैसे हम MySQL तालिका की संरचना प्राप्त कर सकते हैं?

    हम जानते हैं कि व्यू एक प्रकार की आभासी तालिकाएँ हैं और तालिकाओं की संरचना भी हैं इसलिए हम व्यू की संरचना प्राप्त करने के लिए उसी क्वेरी का उपयोग कर सकते हैं जिसका उपयोग हम तालिका की संरचना प्राप्त करने के लिए करते हैं। दूसरे शब्दों में, हम MySQL व्यू की संरचना प्राप्त करने के लिए DESCRIBE स्टेटमेंट

  1. - MySQL में मौजूदा फील्ड को यूनिक कैसे बनाएं?

    MySQL में मौजूदा फील्ड को यूनिक बनाने के लिए, हम ALTER कमांड का उपयोग कर सकते हैं और फील्ड के लिए UNIQUE कंस्ट्रेंट सेट कर सकते हैं। आइए एक उदाहरण देखते हैं। पहले, हम एक टेबल बनाएंगे। mysql> create table AddingUnique -> ( -> Id int, -> name varchar(100) -> ); Query OK, 0 rows a

  1. - MySQL में बूलियन (Boolean) फील्ड जोड़ें: TINYINT(1), BOOL, BOOLEAN

    MySQL में बूलियन डेटा टाइप: TINYINT(1), BOOL, BOOLEAN — सभी समानार्थी हैं मुख्य तथ्य: BOOL और BOOLEAN TINYINT(1) के समानार्थी (synonyms) हैं आंतरिक रूप से MySQL इन्हें TINYINT(1) में बदल देता है स्टोरेज: 1 बाइट (रेंज: -128 से 127 साइनड, 0 से 255 अनसाइनड) 0 = FALSE, 1 = TRUE (कोई भी गैर-शून्य = TRU