MYSQL 删除外键

有下面两个表:

create table user(user_id int(8) primary key, user_name varchar(30), user_psd varchar(60));
create table papers(paper_id int(8) primary key auto_increment, paper_user int(8), foreign key(paper_user) references user(user_id));

意思很明显,但现在如果不需要这个 约束关系,怎么删除呢?
步骤是这样的:

show create table papers;

得到类似下面的结果:

| Table  | Create | papers | CREATE TABLE `papers` ( `paper_id` int(8) NOT NULL AUTO_INCREMENT, `paper_user` int(8) DEFAULT NULL, PRIMARY KEY (`paper_id`), KEY `paper_user` (`paper_user`), CONSTRAINT `papers_ibfk_1` FOREIGN KEY (`paper_user`) REFERENCES `user` (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 | 

可以看到,CONSTRAINT papers_ibfk_1 FOREIGN KEY (paper_user),也就是删除时需要通过删除papers_ibfk_1来删除这种约束关系,代码如下:

alter table papers drop foreign key papers_ibfk_1;

OK.

你可能感兴趣的:(mysql)