MySQL-এ INSERT INTO স্টেটমেন্টে কলাম তালিকায় নির্দিষ্ট কলাম বাদ দিলে, সেই কলামে ডিফল্ট মান (সাধারণত NULL) ইনসার্ট হয়।
টেবিল তৈরি
mysql> CREATE TABLE DemoTable (
-> StudentName VARCHAR(100),
-> StudentAge INT
-> );
Query OK, 0 rows affected (0.72 sec)
আংশিক কলাম দিয়ে ইনসার্ট
mysql> INSERT INTO DemoTable(StudentAge) VALUES(23);
mysql> INSERT INTO DemoTable(StudentName) VALUES('John');
সব রেকর্ড দেখানো
mysql> SELECT * FROM DemoTable;
আউটপুট
+-------------+------------+ | StudentName | StudentAge | +-------------+------------+ | NULL | 23 | | John | NULL | +-------------+------------+ 2 rows in set (0.00 sec)
ব্যাখ্যা: প্রথম ইনসার্টে শুধু StudentAge দেওয়া হয়েছে, তাই StudentName-এ NULL চলে গেছে। দ্বিতীয় ইনসার্টে শুধু StudentName দেওয়া হয়েছে, তাই StudentAge-এ NULL চলে গেছে।
গুরুত্বপূর্ণ নোট:
- যদি কলামে
NOT NULLকনস্ট্রেইন্ট থাকে এবং ডিফল্ট মান নেই, তবে এরর হবে। AUTO_INCREMENTকলাম বাদ দিলে স্বয়ংক্রিয় মান এসাইন হয়।DEFAULTভ্যালু সেট থাকলে সেটি ইনসার্ট হবে (NULL না)।- সব কলামে মান দিতে চাইলে কলাম তালিকা বাদ দিয়ে
INSERT INTO DemoTable VALUES('John', 23);লিখা যায় (ক্রম মেনে চলতে হবে)।