দুই টেবিলে আলাদা অটো-ইনক্রিমেন্ট আইডি সেট করতে LAST_INSERT_ID() এবং ইউজার-ডিফাইনড ভেরিয়েবল ব্যবহার করা যায়।
উদাহরণ:
প্রথম টেবিল তৈরি (StudentId অটো-ইনক্রিমেন্ট):
CREATE TABLE DemoTable1 (
StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
রেকর্ড যোগ করা:
INSERT INTO DemoTable1 VALUES(NULL);
লাস্ট ইনসার্ট আইডি ভেরিয়েবলে সংরক্ষণ:
SET @studentId = LAST_INSERT_ID();
দ্বিতীয় টেবিল তৈরি:
CREATE TABLE DemoTable2 (Id INT);
প্রথম টেবিলের আইডি + ১ দিয়ে দ্বিতীয় টেবিলে ইনসার্ট:
INSERT INTO DemoTable2 VALUES(@studentId + 1);
ফলাফল দেখানো:
SELECT * FROM DemoTable2;
আউটপুট:
+------+ | Id | +------+ | 2 | +------+
ব্যাখ্যা: প্রথম টেবিলে StudentId ১ হয়। LAST_INSERT_ID() দিয়ে ১ ভেরিয়েবলে সেভ করা হয়। তারপর @studentId + 1 = 2 দ্বিতীয় টেবিলে ইনসার্ট করা হয়। এইভাবে দুটি টেবিলে আলাদা অটো-ইনক্রিমেন্ট মান মেনে চলা যায়।