mysql学习--数据类型 & 存储引擎

71 阅读1分钟

1、mysql数据类型

char和varchar的区别?

   1.char是固定字符串,固定长度,varchar是可变字符串,同时存储abc,如果char10)则要用10个,varchar(10)则3.
   2.char类型的效率比varchar的效率稍高
   

日期类型的使用

 mysql支持多种日期 datetime ,dateyeartime 
 我们大部分都使用的是datetime,年月日时分秒都显示,如果不显示时分秒,用date就可以,
 

Json类型

 mysql支持json类型的使用,但是目前为止,我还没有见过使用json的。

2、存储引擎

InnoDB

存储引擎有很多种,InnoDb是mysql5.5版本之后默认的,支持很多功能。

1、自动增长 2、外键约束,外键约束,当父表有操作的时候,字表也会有相应的操作、 常用的:cascade(级联),no action ,restrict,在字表有关联记录的情况下父表不能更新。

Memory

memory存储引擎使用存在于内存中的内容来创建表。

他的数据存在内存中,并且使用HASH索引,没有持久化操作,一旦服务关闭,内容消失。

注意

这里的存储引擎不是全部,还有MyISAM,是mysql5.5之前的版本默认的,还有TokuDB,这里只是一个了解

3.字符集

怎么让我们的产品支持表情输出呢?

答案就是字符集的设置。 mysql8.0中默认的字符集utf8mb4就支持表情。

如果想编写出高性能的库,这些细节是肯定的要扣的,哪个字符集的编码少,需要支持哪些功能...

索引

MyISAM和InnoDB默认都是BTree索引,这个也是考点,Btree是怎么实现快速索引的。