Может кто-нибудь, пожалуйста, скажите мне, что не так с этим определением таблицы.
версия mysql - 5.1.52-log
root@localhost spoolrdb> create table spoolqueue (
queue int,
idx bigint not null auto_increment,
status smallint,
querystring varchar(2048),
contenttype varchar(255),
characterencoding varchar(16),
body text,
primary key(queue,idx)
);
ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
Ответы:
Очевидно, это будет работать с MyISAM в качестве механизма хранения, а не с InnoDB, если вы можете жить с этим.
Еще один способ заставить его работать, если поменять местами
queue
иidx
в объявлении первичного ключа.источник
Вы также можете дать
idx
свой собственный ключ, если вы предпочитаете иметьqueue
первый в ПК. Обратите внимание на добавлениеindex(idx)
строки:источник
Попробуйте удалить поле очереди из первичного ключа. Вы можете индексировать столбец очереди, если хотите
источник