MySQL第二章总结_Mysql第二章 存储引擎

1、本章目标

存储引擎

数据类型(重点)

2、存储引擎

在关系型数据库中,数据存储在表中,表由行和列组成。

开发中,可能需要各种不同的表,有的表简单,有的表复杂,有的表读取快,有的读取数据慢,有的表更新快等。

根据对数据的不同的处理需求,使用不同的存储引擎,可以将MySQL数据库的性能发挥到最大。

查询MySQL数据库中的存储引擎:show engines;

mysql5.5 默认使用的存储引擎是:innodb

MyISAM:

MySQL默认数据库引擎,不支持事务、外键,速度快,用于无事务要求或者select、insert为主的场景。

会创建3个文件.frm(存储表定义),.MYD(MYData,存储数据),.MYI(MYIndex,存储引擎)。

支持3中存储格式,静态(固定长度)表,动态表,压缩表。

静态表是默认格式,固定长度速度快,但是占空间大。记录长度不够时会用空格填充,读取数据时会清除空格,存在吃尾部空格的情况。

动态表包含变长字段,记录不是固定长度,占用空间少,但是频繁更新和删除会产生随便,需要定期整理,并且在出现故障时恢复比较困难。

压缩表由mysiampack工具创建,空间小。

InnoDB:

提供了具有提交、回滚、崩溃恢复能力的事务安全,但是会占用更多空间用以保存数据和索引。

支持外键,创建外键的时候,要求父表必须有对应的碎银,子表在创建索引的时候也会自动创建对应的索引。

存储表和索引有两种方式,

使用共享表空间存储,表结构保存在.frm文件中,数据和索引在innodb_data_home_dir和innodb_data_file_path定义的表空间中,可以是多个文件。

使用多表空间存储,表结构保存在.frm文件中,每个表的数据和索引单独保存在.ibd中。

3、数据类型

日期

date   2019-3-20

datetime 2019-3-20 10:27:37

timestamp 时间戳,类datetime相似

数值

整型(整数)

int

浮点型(小数)

float

double

decimal(有效位,精度)     decimal(5,2)

字符串

char(n)            固定

varchar(n)        可变

char(10)和varchar(10)  同时 存储 'abc',前者占用10个字符空间,后者占3个字符空间

text

详细请参照:https://www.cnblogs.com/-xlp/p/8617760.html

4、属性

主键:primary key

标识列(自增):auto_increment

唯一:unique

默认:default

非空:not null

外键:foreign key 外建名(字段名) references 主表(字段)

检查:check,MySQL没有实现check约束的功能,若要实现,可以使用后面学习的触发器

获取当前系统时间:now(),sysdate()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值