尝试删除外键时出现错误#1064

时间:2013-09-16 11:18:06

标签: mysql foreign-keys

我正在尝试从表pcwithhw中删除外键。但它显示错误: -

  

:#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第2行的“hw_serial_no”附近使用正确的语法

在查询之后我正试图跑。

alter table pcwithhw
drop foreign key fk_`hw_serial_no`;

任何与问题相关的线索????

2 个答案:

答案 0 :(得分:1)

fk_前缀构成外键名称的一部分:因此必须包含在引号中,否则应完全删除引号。那就是:

alter table pcwithhw
drop foreign key `fk_hw_serial_no`;

alter table pcwithhw
drop foreign key fk_hw_serial_no;

就目前而言,你有一个反引号字符出现在一个不带引号的名称中间,这会引起你观察到的语法错误(MySQL将反引号解析为一个新的无效令牌的开头)。

答案 1 :(得分:0)

将反引号移动到外键名称的前面,例如

  

`fk_hw_serial_no`