表中不存在关键列,但我发誓它确实存在

时间:2013-05-29 01:04:20

标签: mysql foreign-keys

我一直在阅读其他堆栈溢出条目,但无法弄清楚为什么我收到此错误。这是详细信息:

MySQL查询号1,似乎显示有一个名为'indyid'的列是主键:

DESCRIBE INDICATORS;

indyid  int(11) NO  PRI     auto_increment
INDICATORNAME   varchar(255)    YES         
INDICATORCODE   varchar(255)    YES

MySQL查询号2尝试将外键列添加到现有表中:

ALTER TABLE YEARS
ADD FOREIGN KEY (indyid)
REFERENCES INDICATORS (indyid);

Error Code 1072: Key Column 'indyid' doesn't exist in table

假设错误可能是指我的“YEARS”表中没有'indyid'列,我尝试添加它但是出现了这个错误:

Error Code 1075: Incorrect table definition; 
there can only be one auto column and it must be defined as a key.

是什么给出的?感谢您分享您的知识。

1 个答案:

答案 0 :(得分:0)

我删除了多年来的主键并执行了一个查询,允许我同时添加一列作为外键和auto_increment。