1、mysql数据类型
char和varchar的区别?
1.char是固定字符串,固定长度,varchar是可变字符串,同时存储abc,如果char(10)则要用10个,varchar(10)则3.
2.char类型的效率比varchar的效率稍高
日期类型的使用
mysql支持多种日期 datetime ,date,year,time
我们大部分都使用的是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是怎么实现快速索引的。