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

MySQL में INSERT करते समय कॉलम को कैसे छोड़ें (skip करें)?

MySQL INSERT में ऑटो-इन्क्रीमेंट कॉलम को छोड़ना

जब किसी टेबल का पहला कॉलम AUTO_INCREMENT होता है, तो आप INSERT स्टेटमेंट में उस कॉलम को छोड़ सकते हैं या NULL मान दे सकते हैं — MySQL स्वचालित रूप से अगला क्रमिक मान जनरेट करेगा।

उदाहरण: StudentId ऑटो-इन्क्रीमेंट है

टेबल बनाएं:

CREATE TABLE DemoTable (
    StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    StudentFirstName VARCHAR(100),
    StudentAge INT
);

पहला कॉलम छोड़कर INSERT करें

INSERT INTO DemoTable VALUES (NULL, 'Robert', 21);
INSERT INTO DemoTable VALUES (NULL, 'Sam', 22);
INSERT INTO DemoTable VALUES (NULL, 'Bob', 24);
INSERT INTO DemoTable VALUES (NULL, 'Carol', 20);

या कॉलम सूची निर्दिष्ट करके (अधिक स्पष्ट):

INSERT INTO DemoTable (StudentFirstName, StudentAge) 
VALUES ('Robert', 21), ('Sam', 22), ('Bob', 24), ('Carol', 20);

परिणाम:

+-----------+------------------+------------+
| StudentId | StudentFirstName | StudentAge |
+-----------+------------------+------------+
| 1         | Robert           | 21         |
| 2         | Sam              | 22         |
| 3         | Bob              | 24         |
| 4         | Carol            | 20         |
+-----------+------------------+------------+

महत्वपूर्ण नियम

  • कॉलम सूची दें: INSERT INTO table (col1, col2) VALUES (...) — सर्वोत्तम अभ्यास
  • NULL दें: ऑटो-इन्क्रीमेंट कॉलम के लिए NULL या 0 या DEFAULT दे सकते हैं
  • छोड़ नहीं सकते: यदि कॉलम सूची नहीं दी और ऑटो-इन्क्रीमेंट पहला कॉलम नहीं है, तो मान देना आवश्यक है

अन्य कॉलम छोड़ना

डिफॉल्ट मान वाले कॉलम को भी छोड़ा जा सकता है:

CREATE TABLE DemoTable (
    Id INT AUTO_INCREMENT PRIMARY KEY,
    Name VARCHAR(50),
    Status VARCHAR(20) DEFAULT 'active',
    CreatedAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- केवल Name दें, बाकी डिफॉल्ट लेंगे
INSERT INTO DemoTable (Name) VALUES ('John');

सर्वोत्तम अभ्यास

हमेशा कॉलम सूची निर्दिष्ट करें — यह कोड को अधिक मजबूत, पठनीय और स्कीमा परिवर्तनों के प्रति लचीला बनाता है।

  1. - MySQL में कॉलम नाम कैसे बदलें (Rename)

    MySQL में कॉलम नाम बदलने के लिए ALTER और CHANGE कमांड का उपयोग करना होता है। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable796 ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(100), StudentAge int ); Query OK, 0 rows affected (0.56 sec) टेबल का विवरण जांचें: mysql

  1. - MySQL में एकाधिक पैरामीटर मानों को एक कॉलम में CONCAT_WS से डालें

    CONCAT_WS() के साथ एकाधिक कॉलम को जोड़कर एक कॉलम में संग्रहीत करना INSERT के समय एकाधिक कॉलम के मानों को विभाजक के साथ जोड़कर एक ही कॉलम में संग्रहीत करने के लिए CONCAT_WS() (With Separator) का उपयोग करें। टेबल निर्माण CREATE TABLE DemoTable ( Name VARCHAR(100), Age INT, CountryName VA

  1. - MySQL में DECIMAL(19,2) कॉलम में डालते समय मान को TRUNCATE से 2 दशमलव तक सीमित करें

    TRUNCATE() फ़ंक्शन TRUNCATE(value, decimals) मान को निर्दिष्ट दशमलव स्थानों तक काटता है (राउंड नहीं करता)। उदाहरण insert into demo59 values(truncate(15.346, 2)), (truncate(20.379, 2)), (truncate(25.555, 2)), (truncate(100.456, 2)); परिणाम +--------+ | price | +--------+ | 15.34 | | 20.37 | |