mysql数据库中如何修改表类型

这篇文章主要介绍mysql数据库中如何修改表类型,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

在mysql中,可以利用“alter table”语句和“ENGINE子句”来修改表类型,语法为“alter table 数据表名  ENGINE = 需要的表类型值;”。

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

MySQL 数据表主要支持六种类型 ,分别是:BDB、HEAP、ISAM、MERGE、MYISAM、InnoBDB。

本想将表类型修改为MyISAM,却报错了,如下图:

mysql数据库中如何修改表类型

出错原因:

由于MYSQL查询语句写法 TYPE=MyISAM 太老了,在MYSQL 5.5即以上上已经被禁用

使用sql语句修改表类型:

alter table product  ENGINE = MyISAM; #(用ENGINE = MyISAM代替TYPE=MyISAM,修改成功了)

扩展知识:

  • MyISAM 默认的MySQL插件式存储引擎,它是基于ISAM类型,但它增加了许多有用的扩展,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。

    优点:

    1.比ISAM表更小,所占资源更少

    2.可以在不同平台间二进制移植表的类型在创建表时指定。

  • ISAM 是MyISAM类型出现之前MySQL表使用的默认类型,现在已经被MyISAM代替。

  • Memory (HEAP) 是MySQL表中访问最快的表,将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。注意,这种类型下数据是非持久化设计的,它一般适应于临时表,如果MySQL或者服务器崩溃,表中数据全部丢失。

  • Merge 是一种值得关注的新式表,它是由一组MyISAM表组成,之所合并主要出于性能上考虑,因为它能够提高搜索速度,提高修复效率,节省磁盘空 间。允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。有时它以 MRG_MYISAM 名称出现。

  • Archive 为大量很少引用的历史、归档、或安全审计信息的存储和检索提供了完美的解决方案。

  • Federated 能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。

  • NDBCluster/Cluster/NDB MySQL的簇式数据库引擎,尤其适合于具有高性能查找要求的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性。

  • CSV 使用标准的CSV格式,由逗号隔开的文本文件,适应于外部数据交换

  • Blackhole 它会接受数据但不保存,而且对任何检索请求返回一个空集。它一般适应于数据会被自动复制并不进行本地保存的分布式数据库设计。(不确定的)似乎也可以用于临时禁止/忽略对数据库的应用程序输入。

  • Example 这是一个测试引擎,你可以创建一个这样的表,但既不能写入数据,也不能检索数据。它似乎是一个针对MySql开发者提供的示例引擎。

以上是“mysql数据库中如何修改表类型”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

mysql数据库中如何修改表类型