【问题标题】:Is it possible to change a database table's engine after the table has been created?创建表后是否可以更改数据库表的引擎?
【发布时间】:2011-01-20 23:20:33
【问题描述】:

我为我正在完成的 CakePHP 教程创建了一个测试数据库,并且只使用了 phpMyAdmin 的引擎默认设置 (MyISAM)。现在我已经学习了几天的教程,这表明要使用一些功能,表需要使用 InnoDB。

是否可以(在 phpMyAdmin 本身或通过 SQL 文件导入)在创建表后更改表的引擎选择?他们目前有数据,但每个只有几条记录,所以我不在乎是否必须清空表格。如果可能的话,我只是不想完全重新创建表。

我似乎无法在 phpMyAdmin 中找到任何方法来执行此操作 - 我可以找到引擎选择的唯一地方是当我创建一个全新的表时。

在运行查询后编辑添加屏幕截图:

【问题讨论】:

    标签: mysql phpmyadmin


    【解决方案1】:

    使用这个查询:

    ALTER TABLE my_table ENGINE = InnoDB;
    

    其中“my_table”是您的表名。

    在 phpMyAdmin 中,导航到表格并单击顶部的“SQL”选项卡。然后粘贴上面的查询并点击“Go/Execute”。

    【讨论】:

    • 谢谢!这正是我所需要的。
    • 问题:它确实更新了所有现有的表,但是当我查看数据库摘要时,它仍然在“总计”行中显示 MyISAM。 (屏幕截图添加到原始帖子。)这是一个问题吗?
    • 不,不是问题。这只是新表的默认设置。
    猜你喜欢
    • 2021-10-13
    • 1970-01-01
    • 2011-09-05
    • 2020-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-10
    相关资源
    最近更新 更多