当前位置: 首页 > 面试题库 >

在MySQL中更改表引擎

杨乐
2023-03-14
问题内容

我正在使用mysql和mysql工作台。我用innodb引擎创建了5个表。我检查了他们的引擎,然后才将数据插入到innodb中。我从5个MyISAM表中插入了数据,现在我的innodb表是MyISAM。我不能改变他们。我使用了alter
table engine = innodb,但是它不起作用。


问题答案:

从手册中:http :
//dev.mysql.com/doc/refman/5.1/en/alter-
table.html

例如,要将表转换为InnoDB表,请使用以下语句:

ALTER TABLE t1 ENGINE = InnoDB;

尝试更改表的存储引擎的结果受所需存储引擎是否可用以及NO_ENGINE_SUBSTITUTIONSQL模式的设置的影响,如第5.1.11节 “服务器SQL模式”中所述。

https://dev.mysql.com/doc/refman/8.0/zh-CN/sql-
mode.html#sqlmode_no_engine_substitution

创建表时,您会收到有关引擎类型不可用的任何警告吗?



 类似资料:
  • 本文向大家介绍在Linux中更改MySQL根密码,包括了在Linux中更改MySQL根密码的使用技巧和注意事项,需要的朋友参考一下 示例 要更改MySQL的root用户密码: 步骤1:停止MySQL服务器。 在Ubuntu或Debian中: sudo /etc/init.d/mysql stop 在CentOS,Fedora或Red Hat Enterprise Linux中: sudo /etc

  • 我很难更改列名。我知道我的语法是正确的,但我收到了一条错误消息。 我使用的语法是: 我一直收到这个错误消息,错误1064(42000):您的SQL语法有错误;查看与MySQL服务器版本对应的手册,了解第2行“COLUMN CustomerID to CollaboratorID”附近使用的正确语法 请帮忙。

  • 问题内容: 我只是在VM上设置了debian 8.3,并在本教程之后安装了xampp 。一切正常,直到我尝试创建一个新表: 我得到了错误: 然后我发现它来自,它仅限于767Byte,可以通过在my.cnf文件中设置innodb_large_prefix来解决此问题。但是我找不到文件,它不在下面,也没有-folder,但是我发现的唯一是在中,但是,我将其添加到文件并重新启动了lampp之后。我仍然得

  • 在前面提到,MySQL 的核心就是存储引擎。MySQL 存储引擎主要有 InnoDB、MyISAM、Memory、BDB、Merge、Archive、Federated、CSV、BLACKHOLE 等。 MySQL 中修改数据表的存储引擎的语法格式如下: ALTER TABLE <表名> ENGINE=<存储引擎名>; ENGINE 关键字用来指明新的存储引擎。 实例演示 下面将数据表 stude

  • 问题内容: 我一直在检查MySQL文档中的ALTER TABLE,它似乎没有提供添加或修改列注释的方法。我怎样才能做到这一点? 问题答案: 尝试: