1075 🐬 MySQL

MySQL ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key

An AUTO_INCREMENT column isn’t indexed (or there are two auto-increment columns).

Seen on: MySQL

Meaning

MySQL requires the AUTO_INCREMENT column to be part of a key, typically the PRIMARY KEY. Imports that drop keys before adding AUTO_INCREMENT hit this.

Common causes

  • AUTO_INCREMENT added before the PRIMARY KEY
  • Two AUTO_INCREMENT columns
  • Primary key dropped

⚡ Quick fix

  1. Add PRIMARY KEY (id) in the same statement
  2. Keep a single auto-increment column

Detailed fix by platform

MySQL

  1. ALTER TABLE items MODIFY id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD PRIMARY KEY (id);

How to diagnose

  1. Keys — Is the auto column indexed?
  2. Recent change — Did it start after a deploy, upgrade, or configuration change? Compare with the last working version.

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.