表结构:
_____________ | | | EVENTS | |_____________| | | | *EVENT_ID | | EVENT_DATE | | TITLE | |_____________|
问题:
由于之前删除了数据库mytest中的events.frm,而events.ibd仍然存在,导致创建events表失败。
错误提示:
02:45:38 Apply changes to events Error 1050: Table ‘`mytest`.`events`‘ already exists SQL Statement: CREATE TABLE `mytest`.`events` ( `idevents` INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (`idevents`))
解决办法:
1、新建数据库 test1 ,创建相同的表events和结构:
CREATE SCHEMA `test1` ; CREATE TABLE `test1`.`events` ( `EVENT_ID` INT NOT NULL AUTO_INCREMENT, `EVENT_DATE` TIMESTAMP NULL, `TITLE` VARCHAR(45) NULL, PRIMARY KEY (`EVENT_ID`));
2、关闭数据库服务。拷贝一份events.ibd
3、到数据库test1的数据文件夹下找到events.frm,将其拷贝到mytest的文件夹下。
D:\MySQL_Data\MySQL_Server5.6\data\test1 中的 events.frm 拷贝到 ==> D:\MySQL_Data\MySQL_Server5.6\data\mytest 文件夹下
4、开启数据库服务。
5、这时可以看到mytest中的表events,先不进行其他任何操作,直接删除数据库mytest中的表events
USE mytest; DROP TABLE events;
可以成功删除表events了,然后重新在mytest中重新建立events表就OK了。
本文出自 “菜鸟笨飞” 博客,请务必保留此出处http://srteert.blog.51cto.com/4009782/1381433
好好的表在MySQL5.6 就Table xxx.xxx dont't exist了(2),布布扣,bubuko.com