MySQL-এ AUTO_INCREMENT কলামের সীমা: ডেটা টাইপ অনুযায়ী
MySQL-এ AUTO_INCREMENT কলামের সর্বোচ্চ মান এর ডেটা টাইপের ওপর নির্ভর করে। নিচে.Integer টাইপগুলোর রেঞ্জ দেওয়া হলো:
ইন্টিজার টাইপ এবং তাদের রেঞ্জ
| ডেটা টাইপ | সাইনড (Signed) রেঞ্জ | অনসাইনড (Unsigned) রেঞ্জ |
|---|---|---|
| TINYINT | 127 | 255 |
| SMALLINT | 32,767 | 65,535 |
| MEDIUMINT | 8,388,607 | 16,777,215 |
| INT | 2,147,483,647 | 4,294,967,295 |
| BIGINT | 9,223,372,036,854,775,807 | 18,446,744,073,709,551,615 |
উদাহরণ: TINYINT লিমিট টেস্ট
টেবিল তৈরি (TINYINT AUTO_INCREMENT)
mysql> CREATE TABLE LimitOfAutoIncrement (
-> Id TINYINT NOT NULL AUTO_INCREMENT,
-> PRIMARY KEY(Id)
-> );
১২৭ টি রেকর্ড ইনসার্ট করা (TINYINT সাইনড রেঞ্জ)
mysql> INSERT INTO LimitOfAutoIncrement VALUES (), (), ..., (); -- ১২৭ বার
১২৮ তম ইনসার্ট করার চেষ্টা (এরর)
mysql> INSERT INTO LimitOfAutoIncrement VALUES (); ERROR 1062 (23000): Duplicate entry '127' for key 'PRIMARY'
নোট: বড় টেবিলের জন্য সবসময় BIGINT বা কমপক্ষে INT UNSIGNED ব্যবহার করা উচিত। TINYINT বা SMALLINT শুধু ছোট লুক-আপ টেবিলের জন্য উপযুক্ত।