有人可以告诉我这个表定义有什么问题。
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
如果您希望在 PK 中拥有第一名,您也可以提供
idx
自己的密钥。queue
注意添加的index(idx)
行:尝试从主键中删除队列字段。如果需要,您可以索引队列列