যদি কোনো টেবিলে শুধু একটি AUTO_INCREMENT PRIMARY KEY কলাম থাকে, তবে সারি ইনসার্ট করতে NULL বা DEFAULT কীওয়ার্ড ব্যবহার করুন।
টেবিল তৈরি
CREATE TABLE single_auto_inc_demo (
user_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
ইনসার্ট পদ্ধতিগুলো
পদ্ধতি ১: SET সিনট্যাক্স
INSERT INTO single_auto_inc_demo SET user_id = NULL;
পদ্ধতি ২: VALUES সিনট্যাক্স
INSERT INTO single_auto_inc_demo VALUES (NULL);
পদ্ধতি ৩: DEFAULT কীওয়ার্ড (MySQL 8.0.13+)
INSERT INTO single_auto_inc_demo VALUES (DEFAULT);
পদ্ধতি ৪: কলাম তালিকা ছাড়া (যদি সকল কলাম AUTO_INCREMENT/DEFAULT থাকে)
INSERT INTO single_auto_inc_demo () VALUES ();
ফলাফল যাচাই
SELECT * FROM single_auto_inc_demo;
+--------+
| user_id|
+--------+
| 1 |
| 2 |
+--------+
LAST_INSERT_ID() দিয়ে শেষ ইনসার্ট করা ID পাওয়া
INSERT INTO single_auto_inc_demo VALUES (NULL);
SELECT LAST_INSERT_ID();
আউটপুট
+------------------+
| LAST_INSERT_ID() |
+------------------+
| 3 |
+------------------+
বহু সারি একসাথে ইনসার্ট
INSERT INTO single_auto_inc_demo VALUES (NULL), (NULL), (NULL), (NULL);
দ্রষ্টব্য
0দিয়ে ইনসার্ট করলেওAUTO_INCREMENTকাজ করে ( কিন্তুNO_AUTO_VALUE_ON_ZEROSQL মোড অন থাকলে ০ ইনসার্ট হতে পারে)NULLবাDEFAULTব্যবহার করা সেরা অনুশীলনLAST_INSERT_ID()শুধু বর্তমান সেশনের জন্য কাজ করে