>Собственно что случиться когда primary ket int8) в mysql "закончится" (станет максимально
>возможным) ? :))))
В Мускуле результат инкремента столбца, содержащего максимальное значение, - это то же самое значение. А значит произойдёт конфликт в индексе. Таким образом, наблюдается следующая картина:
mysql> create table AutoTest (id int unsigned not null auto_increment, primary key (id));
Query OK, 0 rows affected (0.51 sec)
mysql> insert into AutoTest values (4294967294);
Query OK, 1 row affected (0.25 sec)
mysql> select * from AutoTest;
+------------+
| id |
+------------+
| 4294967294 |
+------------+
1 row in set (0.05 sec)
mysql> insert into AutoTest values ();
Query OK, 1 row affected (0.00 sec)
mysql> select * from AutoTest;
+------------+
| id |
+------------+
| 4294967294 |
| 4294967295 |
+------------+
1 row in set (0.00 sec)
mysql> insert into AutoTest values ();
ERROR 1062: Duplicate entry '4294967295' for key 1
mysql> select * from AutoTest;
+------------+
| id |
+------------+
| 4294967294 |
| 4294967295 |
+------------+
2 rows in set (0.02 sec)
Что и требовалось доказать.
В общем, достаточно неприятно, и если это критично (а это реально может быть критично), используйте bigint - вряд ли доберётесь до конца :) или какой-нибудь другой механизм назначения уникальных номеров.