语法:ALTER TABLE 表名 DROP CONSTRAINT 外键名
创新互联建站是一家专注于成都网站建设、做网站与策划设计,无为网站建设哪家好?创新互联建站做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:无为等地区。无为做网站价格咨询:18982081108
例子:
mysql CREATE TABLE categories (
- category_id tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
- name varchar(30) NOT NULL,
- PRIMARY KEY(category_id)
- ) ENGINE=INNODB;
mysql CREATE TABLE articles (
- article_id INT(11) unsigned NOT NULL AUTO_INCREMENT,
- title varchar(255) NOT NULL,
- category_id tinyint(3) unsigned NOT NULL,
- member_id int(11) unsigned NOT NULL,
- INDEX (category_id),
- FOREIGN KEY (category_id) REFERENCES categories (category_id),
- PRIMARY KEY(article_id)
- ) ENGINE=INNODB;
外键名是什么:在上面的例子中category_id
分两步走:
确认受外键约束的数据是否可用同步删除。如果可用则直接删除,如果不可以则接触外键约束。
外键解除或受外键约束数据被删除后,可用直接删除自身数据。
alter table test drop foreign key 外键名称;
在删除那个把该外键作为主键的表之前,你先把包含外键的那个表中的外键全部删掉,置为null,或者直接将那列删掉,这样就没有地方引用这些外键,你就可以将那个表删除掉了。希望可以帮忙。记得以前做过类似的东西,删除将外键作为主键的表之前,必须将引用到这个键的内容置空,即没有引用该键,这样便可以删除了。