官方解释文档: http://docs.oracle.com/cd/E19957-01/mysql-refman-5.5/storage-engines.html
文档的一个章节 13.7.8.6. Better Error Handling when Dropping Indexes 里面提到是说这个错误是mysql的一个BUG,现在已经解决了。ERROR 1553 (HY000): Cannot drop index 'fooIdx': needed in a foreign key constraint
下面是一个实例:
create table goodsType(id int(10) unsigned not null auto_increment,name varchar(45) not null,primary key(id))
create table goods(id int(10) unsigned not null auto_increment,typeId int(10)unsigned not null,
name varchar(50) not null,introduce text(16) not null,price float not null,primary key(id),foreign key(typeId) references goodsType(id))
输入命令: alter table goods drop typeId 时报错
解决方案:先删除约束条件,再删除列
约束条件我没有取名字,可以用 show create table goods 命令查看系统生成的约束名
命令:
alter table goods drop foreign key [完整性约束名]
alter table goods drop typeId
你的tomcat中可能有别的项目连接数据库时密码是错误的,你没有改过来,你可以在tomcat的webapps中把不用的项目先删掉,或者把可能出错的项目中连接数据库的密码改正确就可以了把表的字段写全(应该是这里出的问题),比如:"insert into 表1(ID,**,**,**) values(190,'中国人民解放军','人民','中华人民共和国')")
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)