解决Cannot drop index 'PK_school_schooltype': needed in a foreign key constraint

原创 2015年07月07日 11:24:12

今天小编在用mysql数据库去删除一个表的字段时遇到了Cannot drop index 'PK_school_province': needed in a foreign key constraint问题,如下将表的创建贴出来:

CREATE TABLE `school` (
  `school_id` int(11) NOT NULL AUTO_INCREMENT,
  `school_name` varchar(255) NOT NULL,
  `school_pro_id` int(11) NOT NULL,
  PRIMARY KEY (`school_id`),
  KEY `PK_school_province` (`school_pro_id`),
  CONSTRAINT `PK_school_province` FOREIGN KEY (`school_pro_id`) REFERENCES `province` (`province_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2735 DEFAULT CHARSET=utf8

大家都知道KEY与index的意思相近,都是创建索引,现在使用coinstraint来将对字段进行限制,将索引PK_school_province 与外键school_pro_id与外表province表的province_id限制关联(constraint也有索引的意思,on面跟语句),那么现在我想直接删除school_pro_id这个字段,这时,直接使用"alter table school drop column school_pro_id"会出现Cannot drop index 'PK_school_province': needed in a foreign key constraint;大意是不能删除被外键限制的索引PK_school_province。那么这个时候我们需要将外键限制的索引给删除掉,使用”alter table school drop foreign key PK_school_province“就能将PK_school_province删除掉,那么这个时候再使用“alter table school drop column school_pro_id”就可以将school表中的school_pro_id删除掉。

mysql Error : Cannot truncate a table referenced in a foreign key constraint 清空具有外键约束的表时报

mysql Error : Cannot truncate a table referenced in a foreign key constraint 清空具有外键约束的表时报...

Could not drop object 'student' because it is referenced by a FOREIGN KEY constraint

1. Find foreign keys SELECT * FROM sys.foreign_keys WHERE referenced_object_id = object_id('Stu...

cannot drop index

drop index时出现如下错误: SQL> drop index oos_index; drop index oos_index * ERROR at line 1: ORA-02429: can...
  • ziwen00
  • ziwen00
  • 2011年08月03日 10:27
  • 2657

Cannot delete or update a parent row: a foreign key constraint fails解决方法

我在使用delete from table语句清空一个表数据时,报错 Cannot delete or update a parent row: a foreign key constraint fa...

jbpm4 jbpm4_execution “Cannot delete or update a parent row: a foreign key constraint fails” 异常解决

异常内容: 严重: Could not synchronize database state with session org.hibernate.exception.ConstraintV...

无法添加外键约束的原因(cannot add foreign key constraint)

首先看下面这张表Create table student (sno int(10) unsigned not null, sname varchar(20) not null, sex enum('男...

MySQL中创建外键的错误:1215 Cannot add the foreign key constraint

引言: MySQL中经常会需要创建父子表之间的约束,这个约束是需要建立在主外键基础之上的,这里解决了一个在创建主外键约束过程中碰到的一个问题。...

表删除时 Cannot delete or update a parent row: a foreign key constraint fails 异常处理

表删除时 Cannot delete or update a parent row: a foreign key constraint fails 异常处理: 这个错误的原因是表外键关联,级联删除时出...

Cannot add or update a child row: a foreign key constraint fails 问题的处理

前言     这是错误是数据库的相关操作过程中出现的。在一个名为购物商城的项目中,处理交易数据时,做了一个测试方法,这个测试方法执行后出现的异常。 描述     1.测试方法:测试在执行交易后,更新...
  • niaonao
  • niaonao
  • 2017年04月08日 15:58
  • 439

Mysql出现 Cannot add foreign key constraint 错误

在创建外键表的时候出现了Cannot add foreign key constraint  。 这里如果设置pid 为外键,有两个必要的条件: 1:pid 不能为该表的主键(primary key)...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解决Cannot drop index 'PK_school_schooltype': needed in a foreign key constraint
举报原因:
原因补充:

(最多只允许输入30个字)