一、MYSQL中drop、delete与truncate的区别
Drop通常会删除整个表;删除通常会删除一些数据;Truncate通常会删除表中的所有记录。
二、Union与Union All的区别
Union合并重复的记录,但Union All不合并。Union具有更高的执行效率。
三、MYSQL中sql语句的执行生命周期
1.应用服务器连接到数据库。
2.数据库进程获取请求中的sql语句。
3.编译并解析执行语句。
4.在内存中执行逻辑处理。
5.将处理后的数据发送到应用服务器。
6.关闭数据库连接并释放资源。
四、数据表内容比较多时,怎么优化查询
1.增加缓存redis和memcached,将经常使用的查询数据放入缓存。
2.利用主从读写分离技术,将读写数据放入不同的数据库或不同的数据表中。
3.垂直拆分或水平拆分,将包含许多服务的内容拆分成多个子模块进行处理。
五、为什么尽量要在表中设定主键
它是主键表中的唯一键,也是确定数据行唯一性的保证,可以提高操作表中数据的添加、删除、修改和查询的效率。
六、为什么在表字段中建议设置属性值not null
空值将临时使用表中的字节空间,还可能导致程序访问中的意外差异。
七、主键自增ID和UUID设置区别
由于自增ID是按内存顺序插入的,连续向后排列,所以在执行语句时比UUID快,但UUID的优点是可以超过自增ID长度值。