Kann mir bitte jemand sagen, was mit dieser Tabellendefinition nicht stimmt?
MySQL-Version ist 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
Antworten:
Dies wird anscheinend mit MyISAM als Speicher-Engine funktionieren, nicht mit InnoDB, wenn Sie damit leben können.
Eine andere Möglichkeit, es zum Laufen zu bringen, besteht darin, Orte von
queue
undidx
in der Primärschlüsseldeklaration zu tauschen .quelle
Sie können auch
idx
einen eigenen Schlüssel angeben, wenn Sie dies lieberqueue
zuerst in der PK haben möchten . Beachten Sie das Hinzufügen derindex(idx)
Zeile:quelle
Versuchen Sie, das Warteschlangenfeld aus dem Primärschlüssel zu entfernen. Sie können die Warteschlangenspalte indizieren, wenn Sie möchten
quelle