【发布时间】:2018-08-21 08:28:47
【问题描述】:
我在表格中添加了一列(下面的查询)
ALTER TABLE `acct_doc_item_data`
ADD fk_job_id INT(11),
ADD FOREIGN KEY (fk_job_id) REFERENCES `job`(`job_id`);
现在我想删除此列 (fk_job_id)。我尝试了这些查询,但它们给出了错误。
ALTER TABLE `acct_doc_item_data` DROP FOREIGN KEY `fk_job_id`;
ALTER TABLE `acct_doc_item_data` DROP COLUMN `fk_job_id`;
第一个 Alter 语句给出错误为 - Can't DROP 'fk_job_id'; check that column/key exists(但该列存在)。
第二条 Alter 语句给出的错误为 - Cannot drop index 'fk_job_id': needed in a foreign key constraint
【问题讨论】:
-
需要删除索引的名称
ALTER TABLE acct_doc_item_data DROP FOREIGN KEY <foreign key index/constraint>;,删除外键时不能使用列名,只能删除列时使用。 -
你添加外键时没有提供外键名称,如果内存服务mysql会分配一个给你尝试stackoverflow.com/questions/201621/…识别名称。
标签: mysql