ALTER TABLE CHANGE से कॉलम को NULL अनुमति देना
मौजूदा VARCHAR कॉलम को NULL वैल्यू अनुमति देने के लिए (अगर पहले NOT NULL था) ALTER TABLE ... CHANGE का उपयोग करें।
सिंटैक्स
ALTER TABLE yourTableName CHANGE yourColumnName yourColumnName datatype NULL DEFAULT NULL;
टेबल बनाना
CREATE TABLE DemoTable1356 (FirstName VARCHAR(30));
नोट: डिफॉल्ट रूप से VARCHAR NULL अनुमति देता है। यह उदाहरण दिखाता है कि कैसे स्पष्ट रूप से NULL DEFAULT NULL सेट करें।
कॉलम को NULL DEFAULT NULL में बदलना
ALTER TABLE DemoTable1356 CHANGE FirstName FirstName VARCHAR(30) NULL DEFAULT NULL;
Query OK, 0 rows affected (0.17 sec) Records: 0 Duplicates: 0 Warnings: 0
डेटा इन्सर्ट करना (NULL और खाली स्ट्रिंग सहित)
INSERT INTO DemoTable1356 VALUES('Adam');
INSERT INTO DemoTable1356 VALUES('John');
INSERT INTO DemoTable1356 VALUES(); -- डिफॉल्ट NULL
INSERT INTO DemoTable1356 VALUES('Bob');
INSERT INTO DemoTable1356 VALUES(NULL); -- स्पष्ट NULL
आउटपुट
+-----------+ | FirstName | +-----------+ | Adam | | John | | NULL | | Bob | | NULL | +-----------+
महत्वपूर्ण बिंदु
CHANGEके लिए पुराना और नया नाम दोनों देने पड़ते हैं (यहां समान)NULLकॉलम को NULL अनुमति देता हैDEFAULT NULLडिफॉल्ट वैल्यू NULL सेट करता है- अगर कॉलम पहले NOT NULL था, तो मौजूदा डेटा में NULL नहीं होना चाहिए
NOT NULL से NULL में बदलना (डेटा होने पर)
ALTER TABLE DemoTable1356 MODIFY FirstName VARCHAR(30) NULL DEFAULT NULL;
MODIFY में कॉलम नाम दोहराने की जरूरत नहीं।
वेरिफाई करना
DESC DemoTable1356; SHOW CREATE TABLE DemoTable1356;