1075: Incorrect table definition; there can be only one auto column and it must be defined as a key
MySQLNe demek?
Tablo tanımı geçersiz çünkü AUTO_INCREMENT kuralları çiğnendi: bir tabloda yalnızca tek bir otomatik artan sütun olabilir ve bu sütun bir anahtarın (PRIMARY KEY ya da UNIQUE/index) parçası olmak zorundadır.
Neden olur?
Birden fazla AUTO_INCREMENT sütunu tanımlamak; ya da AUTO_INCREMENT sütununu herhangi bir anahtara (index) dahil etmeden bırakmak. CREATE TABLE veya ALTER TABLE sırasında ortaya çıkar.
Nasıl çözülür?
Tek bir AUTO_INCREMENT sütunu bırakın ve onu bir anahtarın parçası yapın: CREATE TABLE t (id INT AUTO_INCREMENT PRIMARY KEY, ...); Var olan tabloda düzeltmek için önce sütunu anahtara ekleyin: ALTER TABLE t ADD PRIMARY KEY (id); ardından AUTO_INCREMENT tanımlayın. Birden fazla otomatik sütun gerekiyorsa tasarımı gözden geçirin; MySQL bunu desteklemez.
Aynı motorda diğer kayıtlar
- 1615Prepared statement needs to be re-prepared
- 1553Cannot drop index needed in a foreign key constraint
- 3948Loading local data is disabled; this must be enabled on both the client and server sides
- 1055Expression not in GROUP BY (only_full_group_by)
- 1267Illegal mix of collations
- 1030Got error N from storage engine
- 1197Multi-statement transaction required more than 'max_binlog_cache_size'