যদি কোনো টেবিলে ইতিমধ্যে থাকে এবং সেটিতে AUTO_INCREMENT যোগ করতে হয়, তবে MODIFY কমান্ড ব্যবহার করতে হয়।
উদাহরণ
প্রথমে একটি ডেমো টেবিল তৈরি করি:
mysql> CREATE TABLE AddingAutoIncrement (
-> Id INT,
-> Name VARCHAR(200),
-> PRIMARY KEY(Id)
-> );
Query OK, 0 rows affected (0.47 sec)
এখন ALTER TABLE ব্যবহার করে Id কলামে AUTO_INCREMENT যোগ করি:
ALTER TABLE আপনার_টেবিল_নাম MODIFY আপনার_কলাম_নাম INT AUTO_INCREMENT;
প্রয়োগ:
mysql> ALTER TABLE AddingAutoIncrement MODIFY Id INT AUTO_INCREMENT; Query OK, 0 rows affected (1.19 sec) Records: 0 Duplicates: 0 Warnings: 0
সফলভাবে যোগ হয়েছে কিনা যাচাই করতে DESC কমান্ড ব্যবহার করি:
mysql> DESC AddingAutoIncrement;
আউটপুট:
+-------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | Name | varchar(200) | YES | | NULL | | +-------+--------------+------+-----+---------+----------------+ 2 rows in set (0.00 sec)
Extra কলামে auto_increment দেখা যাচ্ছে, অর্থাৎ সফলভাবে যোগ হয়েছে।
পরীক্ষা
এখন কিছু রেকর্ড ইনসার্ট করি (Id দিয়ে না):
mysql> INSERT INTO AddingAutoIncrement(Name) VALUES('John');
Query OK, 1 row affected (0.20 sec)
mysql> INSERT INTO AddingAutoIncrement(Name) VALUES('Smith');
Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO AddingAutoIncrement(Name) VALUES('Bob');
Query OK, 1 row affected (0.10 sec)
ফলাফল:
+----+-------+ | Id | Name | +----+-------+ | 1 | John | | 2 | Smith | | 3 | Bob | +----+-------+ 3 rows in set (0.00 sec)
দেখা যাচ্ছে Id স্বয়ংক্রিয়ভাবে ১, ২, ৩ হয়ে বেড়েছে।