SQL INSERT INTO Statement का उपयोग database table में नया data (new record / row) add करने के लिए किया जाता है। जब भी किसी application में user कोई form fill करता है या नई information save होती है, तो backend में INSERT INTO statement ही data को table में store करता है।
Simple शब्दों में
INSERT INTO = table के अंदर नया data डालना
INSERT INTO Statement का Basic Syntax
INSERT INTO table_name (column1, column2, column3)
VALUES (value1, value2, value3);
यह syntax बताता है:
- किस table में data डालना है
- किन columns में data डालना है
- उन columns के values क्या होंगी
Example Table
मान लीजिए हमारे पास students नाम की table है:
| id | name | age | city |
|---|---|---|---|
| 1 | Rahul | 20 | Delhi |
अब हमें इस table में नया student add करना है।
Example 1: Single Row Insert करना
INSERT INTO students (id, name, age, city)
VALUES (2, 'Aman', 22, 'Jaipur');
इस query के execute होते ही table में एक नई row add हो जाएगी।
Table अब ऐसा दिखेगा:
| id | name | age | city |
|---|---|---|---|
| 1 | Rahul | 20 | Delhi |
| 2 | Aman | 22 | Jaipur |
INSERT INTO Without Column Names
अगर आप सभी columns के लिए values दे रहे हैं और order सही है, तो column names लिखना optional होता है।
INSERT INTO students
VALUES (3, 'Neha', 21, 'Mumbai');
ध्यान रखें:
- Values का order table के column order से match होना चाहिए
- यह तरीका beginner के लिए risky हो सकता है
INSERT INTO Selected Columns
आप सभी columns में data डालना जरूरी नहीं है।
INSERT INTO students (id, name)
VALUES (4, 'Rohit');
बाकी columns में:
- NULL value जाएगी
- या DEFAULT value जाएगी (अगर set है)
INSERT INTO Multiple Rows
एक ही query में multiple rows भी insert की जा सकती हैं।
INSERT INTO students (id, name, age, city)
VALUES
(5, 'Pooja', 23, 'Delhi'),
(6, 'Karan', 19, 'Chandigarh'),
(7, 'Simran', 22, 'Amritsar');
यह तरीका fast और efficient होता है।
INSERT INTO with DEFAULT Value
अगर column में DEFAULT value defined है, तो आप उसे skip कर सकते हैं।
INSERT INTO students (id, name, city)
VALUES (8, 'Anjali', 'Pune');
INSERT INTO with NULL Value
अगर किसी column में data available नहीं है, तो NULL insert किया जा सकता है।
INSERT INTO students (id, name, age, city)
VALUES (9, 'Ravi', NULL, 'Indore');
INSERT INTO from Another Table
एक table से data लेकर दूसरी table में insert किया जा सकता है।
INSERT INTO new_students (name, age, city)
SELECT name, age, city
FROM students
WHERE age > 21;
INSERT INTO and Auto Increment Column
अगर column AUTO_INCREMENT है, तो उसमें value देने की जरूरत नहीं होती।
INSERT INTO students (name, age, city)
VALUES ('Meena', 20, 'Bhopal');
Database खुद id generate कर देगा।
Common Mistakes
- String values को quotes में न लिखना
- Column order और value order mismatch होना
- Extra या missing values देना
Incorrect example:
INSERT INTO students (id, name, age, city)
VALUES (10, Ravi, 22);
Correct example:
INSERT INTO students (id, name, age, city)
VALUES (10, 'Ravi', 22, 'Delhi');
INSERT और UPDATE में Difference
| INSERT INTO | UPDATE |
|---|---|
| New row add करता है | Existing row change करता है |
| Table खाली हो तब भी काम करता है | WHERE जरूरी होता है |
| Data create करता है | Data modify करता है |
Summary
- INSERT INTO table में नया data डालने के लिए उपयोग होता है
- Single और multiple rows दोनों insert कर सकता है
- Column names लिखना best practice है
- Auto Increment column में value देने की जरूरत नहीं होती
