MySQL创建数据表时设定引擎MyISAM/InnoDB操作

作者:萧逸凡 时间:2024-01-20 18:28:58 

我在配置mysql时将配置文件中的默认存储引擎设定为了InnoDB。今天查看了MyISAM与InnoDB的区别,在该文中的第七条“MyISAM支持GIS数据,InnoDB不支持。即MyISAM支持以下空间数据对象:Point,Line,Polygon,Surface等。”

作为一个地理信息系统专业的学生(其实是测绘专业)来讲,能存储空间数据的数据库才是好数据库,原谅我是数据库小白的身份。

有三种方式可以设定数据库引擎:

(1)修改配置文件

将安装目录下~\MySQL\mysql-5.6.31-winx64的my.int配置文件打开,在[mysqld]的后面修改或添加(如果你之前未设置)下列语句:

default-storage-engine=INNODB

MySQL创建数据表时设定引擎MyISAM/InnoDB操作

而我会自己修改为MyISAM,以后在你创建数据表时默认引擎为当前设置。

(2)创建数据表时声明


mysql> create table test(
-> id int(10) unsigned not null auto_increment,
-> name varchar(10) character set utf8,
-> age int(10),
-> primary key(id)
-> )
-> engine=MyISAM
-> ;

上述语句为创建表格的语句,如下图,没有什么可说的。

MySQL创建数据表时设定引擎MyISAM/InnoDB操作

接下来查询一下,创建的表格的引擎类别。

show create table test;

MySQL创建数据表时设定引擎MyISAM/InnoDB操作

(3)更改数据表的引擎

数据表的引擎类型,不是一成不变的,可以通过可视化应用如Navicat for Mysql进行修改,也可以通过命令来修改,下面将刚才新建的test表格引擎修改为InnoDB.

alter table test engine=innodb;

MySQL创建数据表时设定引擎MyISAM/InnoDB操作

补充知识:MySQL 更改所有表的数据引擎,MyISAM 设置为 InnoDB

一、先设置执行SQL语句:


SELECT GROUP_CONCAT(CONCAT( 'ALTER TABLE ' ,TABLE_NAME ,' ENGINE=InnoDB; ') SEPARATOR '' )
FROM information_schema.TABLES AS t
WHERE TABLE_SCHEMA = '数据库' AND TABLE_TYPE = 'BASE TABLE';

把数据库改成你的数据库名字,这里假设我的数据库是database


SELECT GROUP_CONCAT(CONCAT( 'ALTER TABLE ' ,TABLE_NAME ,' ENGINE=InnoDB; ') SEPARATOR '' )
FROM information_schema.TABLES AS t
WHERE TABLE_SCHEMA = 'database' AND TABLE_TYPE = 'BASE TABLE';

二、得到一段超长的SQL,复制后执行这段SQL

MySQL创建数据表时设定引擎MyISAM/InnoDB操作

三、查看当前数据库的字段存储信息

SHOW TABLE STATUS FROM database;

结果:

MySQL创建数据表时设定引擎MyISAM/InnoDB操作

来源:https://blog.csdn.net/renwudao24/article/details/52136955

标签:MySQL,创建表,引擎,MyISAM,InnoDB
0
投稿

猜你喜欢

  • VsCode中ctrl+s后会在当前目录下自动生成dist目录的方法

    2023-04-25 09:19:41
  • JavaScript 自定义事件之我见

    2024-04-10 10:50:01
  • JavaScript实现设计模式中的单例模式的一些技巧总结

    2024-05-02 16:21:11
  • Python读入mnist二进制图像文件并显示实例

    2023-04-23 16:40:44
  • 人工神经网络算法知识点总结

    2023-05-16 11:36:06
  • python async with和async for的使用

    2021-10-16 16:31:02
  • javascript面向对象编程(一)

    2008-03-07 12:54:00
  • 浅谈Pytorch中的自动求导函数backward()所需参数的含义

    2021-04-29 13:38:04
  • 详解向scrapy中的spider传递参数的几种方法(2种)

    2023-05-22 04:40:38
  • python+tkinter+mysql做简单数据库查询界面

    2024-01-19 21:13:20
  • 对acronym、abbr标签的理解

    2008-05-29 13:03:00
  • 土豆网前端概况

    2008-01-24 12:06:00
  • Python之random库的常用函数有哪些

    2022-10-04 03:01:13
  • Python对多个sheet表进行整合实例讲解

    2021-01-15 06:18:24
  • python实现彩票系统

    2021-04-12 21:16:42
  • Jar包一键重启的Shell脚本及新服务器部署的一些经验分享

    2023-06-24 19:01:08
  • 如何将yolov5中的PANet层改为BiFPN详析

    2023-08-12 18:08:38
  • 教你使用pyinstaller打包Python教程

    2021-01-20 01:07:28
  • MySQL 与 Elasticsearch 数据不对称问题解决办法

    2024-01-23 13:43:57
  • 浅谈python中str字符串和unicode对象字符串的拼接问题

    2022-03-27 22:00:32
  • asp之家 网络编程 m.aspxhome.com