कंस्ट्रेंट अपडेट करने के लिए MODIFY कमांड का उपयोग करें।
सिंटैक्स:
ALTER TABLE yourTableName MODIFY yourExistingColumnName yourExistingDataType NOT NULL;
टेबल बनाएं
mysql> create table DemoTable (
-> UserId INT NOT NULL AUTO_INCREMENT,
-> UserFirstName VARCHAR(100),
-> UserLastName VARCHAR(100),
-> UserEmailId VARCHAR(100),
-> UserPassword VARCHAR(100),
-> PRIMARY KEY(UserId)
-> );
Query OK, 0 rows affected (0.91 sec)
कॉलम के कंस्ट्रेंट को NOT NULL में बदलने का क्वेरी
mysql> ALTER TABLE DemoTable MODIFY UserFirstName VARCHAR(100) NOT NULL; Query OK, 0 rows affected (2.13 sec) Records: 0 Duplicates: 0 Warnings: 0
DESC कमांड से जांचें कि कॉलम में NOT NULL कंस्ट्रेंट है या नहीं
mysql> DESC DemoTable;
आउटपुट (अब UserFirstName में NOT NULL कंस्ट्रेंट है):
+---------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------+--------------+------+-----+---------+----------------+ | UserId | INT(11) | NO | PRI | NULL | AUTO_INCREMENT | | UserFirstName | VARCHAR(100) | NO | | NULL | | | UserLastName | VARCHAR(100) | YES | | NULL | | | UserEmailId | VARCHAR(100) | YES | | NULL | | | UserPassword | VARCHAR(100) | YES | | NULL | | +---------------+--------------+------+-----+---------+----------------+ 5 rows in set (0.17 sec)
महत्वपूर्ण:
MODIFYकॉलम परिभाषा पूरी दोहराता है (डेटा प्रकार सहित)- यदि कॉलम में मौजूदा NULL मान हैं, तो यह विफल होगा - पहले उन्हें अपडेट करें
CHANGEकॉलम नाम बदलने के लिए,MODIFYसमान नाम रखने के लिएDESCयाSHOW COLUMNSसे संरचना जांचें