DBAtlas · Atlas de operaciones de bases de datos

1075: Incorrect table definition; there can be only one auto column and it must be defined as a key (definición de tabla incorrecta; solo puede haber una columna automática y debe definirse como clave)

MySQL

¿Qué significa?

La definición de la tabla no es válida porque se infringieron las reglas de AUTO_INCREMENT: una tabla solo puede tener una columna autoincremental, y esa columna debe formar parte de una clave (PRIMARY KEY o UNIQUE/índice).

¿Por qué ocurre?

Definir más de una columna AUTO_INCREMENT, o dejar la columna AUTO_INCREMENT fuera de todas las claves (índices). Ocurre durante CREATE TABLE o ALTER TABLE.

Cómo solucionarlo

Mantenga una sola columna AUTO_INCREMENT y haga que forme parte de una clave: CREATE TABLE t (id INT AUTO_INCREMENT PRIMARY KEY, ...); Para corregir una tabla existente, añada primero la columna a una clave: ALTER TABLE t ADD PRIMARY KEY (id); y después defina AUTO_INCREMENT. Si necesita más de una columna automática, replantee el diseño; MySQL no lo admite.

Abrir en DBAtlas →

Más entradas de este motor