首页> 基础笔记 >Mysql基础学习 Mysql基础学习

MySQL数据表的类型及存储位置

作者:小萝卜 2019-08-28 浏览 946

简介MySQL数据表的类型及存储位置,MySQL支持MyISAM、InnoDB、HEAP、BOB、ARCHIVE、CSV等多种数据表类型,在创建一个新MySQL数据表时,可以为它设置一个类型。

MySQL数据表的类型及存储位置

MySQL支持MyISAM、InnoDB、HEAP、BOB、ARCHIVE、CSV等多种数据表类型,在创建一个新MySQL数据表时,可以为它设置一个类型。

MyISAM和InnoDB两种表类型最为重要:

1.MyISAM数据表类型的特点是成熟、稳定和易于管理。

2.MyISAM表类型会产生碎片空间,要经常使用OPTIMIZE TABLE命令去清理表空间

3.MyISAM不支持事务处理,InnoDB支持

4.MyISAM不支持外键,InnoDB支持

5.MyISAM表类型的数据表效率更高

6.MyISAM表类型的数据表会产生三个文件,InnoDB表类型表默认只会产生一个文件。

代码:
mysql> show create table uu\G
*************************** 1. row ***************************
       Table: uu
Create Table: CREATE TABLE `uu` (
  `id` int(11) NOT NULL DEFAULT '0',
  `name` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL,
  `mm` tinyint(4) NOT NULL DEFAULT '20',
  `age` tinyint(4) DEFAULT NULL,
  `sex` enum('m','w') COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
1 row in set (0.00 sec)

mysql> alter table uu engine=myisam;
Query OK, 5 rows affected (0.06 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> show create table uu\G
*************************** 1. row ***************************
       Table: uu
Create Table: CREATE TABLE `uu` (
  `id` int(11) NOT NULL DEFAULT '0',
  `name` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL,
  `mm` tinyint(4) NOT NULL DEFAULT '20',
  `age` tinyint(4) DEFAULT NULL,
  `sex` enum('m','w') COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
1 row in set (0.02 sec)

mysql> alter table uu engine=innodb;
Query OK, 5 rows affected (0.01 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> show create table uu\G
*************************** 1. row ***************************
       Table: uu
Create Table: CREATE TABLE `uu` (
  `id` int(11) NOT NULL DEFAULT '0',
  `name` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL,
  `mm` tinyint(4) NOT NULL DEFAULT '20',
  `age` tinyint(4) DEFAULT NULL,
  `sex` enum('m','w') COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
1 row in set (0.00 sec)

mysql>

 

很赞哦! (0)

文章评论

    高端网站建设