mysql学习笔记(四)——存储引擎和数据类型
存储引擎指定了如何存储和索引数据以及表在计算机中的存储方式,是个可以选择的插件。
所以我们一般根据实际需要选择存储引擎,首先我们要知道我们的mysql数据库管理系统支持哪些存储引擎——show engines;
可以看到mysql 8.0有9种存储引擎。
在support这一栏,yes代表支持;no代表不支持;default代表默认支持。
那么就可以看到,mysql 8.0默认支持的存储引擎是InnoDB。
数据类型指定了表存储的数据的类型,包括整数类型、浮点数类型、定点数类型、位类型、日期和时间类型和字符串类型。
查看数据类型——help data types;
下面是一个新建int类型表,并插入数据的简单例子(注意,新建表之前要先选择数据库)
对于浮点数类型和定点数类型,要注意浮点数类型存储数据是存储近似值,而定点数存储数据是存储字符串,可知定点数的精确度会更高一些。
对于位类型,主要差异体现在insert的形式,无论以任何进制插入,select之后显示的都是二进制形式,比如插入11,则显示1011;插入b'111',显示111。
对于日期和时间类型,根据具体实际需要,选择不同类型,包括:date、datetime、time、year等等。
对于字符串类型,
如果字符串较短:类似于C语言中,字符串=字符数组,可以用char (xx) 或者 varchar(xx)
如果字符串较长:类似于C++语言中,直接用text进行定义