MySQL 3.23 中文参考手册 |
| 后退 |
18.19 与ALTER TABLE有关的问题 |
前进 |
|
|
| 2004-02-12 MySQL 译者:晏子 http://www.mysql.com/doc.html |
|
| |
如果ALTER TABLE死于这样一个错误:
Error on rename of './database/name.frm' to './database/B-a.frm' (Errcode: 17)
问题可能是MySQL在前一个ALTER TABLE中已经崩溃并且留下了一个名为“A-xxx”或“B-xxx”的老的数据库表。在这种情况下,到MySQL数据目录中并删除所有名字以A-或B-开始的文件。(你可以把他们移到别的地方而不是删除他们)。
ALTER TABLE工作方式是:
以要求的改变创建一个名为“A-xxx”的新表。
从老表把所有行拷贝到“A-xxx”。
老表被改名为“B-xxx”。
“A-xxx”被改名为你的老表的名字。
“B-xxx”被删除。
如果某些改名操作出错,MySQL试图还原改变。如果出错严重(当然,这不应该发生。),MySQL可能留下了老表为“B-xxx”但是一个简单改名就应该恢复你的数据。
|
| |
|
|
| |
|
发表评论
关闭窗口
|
|
|
|