DBAtlas · Atlas d'exploitation des bases de données

1075: Incorrect table definition; there can be only one auto column and it must be defined as a key (définition de table incorrecte : une seule colonne auto, qui doit être définie comme clé)

MySQL

Que signifie cette erreur ?

La définition de la table est invalide car les règles d'AUTO_INCREMENT ont été enfreintes : une table ne peut avoir qu'une seule colonne auto-incrémentée, et cette colonne doit faire partie d'une clé (PRIMARY KEY ou UNIQUE/index).

Cause

Définition de plus d'une colonne AUTO_INCREMENT, ou colonne AUTO_INCREMENT laissée hors de toute clé (index). Se produit lors d'un CREATE TABLE ou d'un ALTER TABLE.

Comment la corriger

Conservez une seule colonne AUTO_INCREMENT et intégrez-la à une clé : CREATE TABLE t (id INT AUTO_INCREMENT PRIMARY KEY, ...); Pour corriger une table existante, ajoutez d'abord la colonne à une clé : ALTER TABLE t ADD PRIMARY KEY (id); puis définissez AUTO_INCREMENT. Si vous avez besoin de plusieurs colonnes auto, revoyez la conception ; MySQL ne le prend pas en charge.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur