您的位置:首页 > 职场人生

MySQL 面试问题与解答

2016-08-26 16:27 288 查看

1. MySQL中表的触发器有几种

表允许6个触发器:

BEFORE INSERT

AFTER INSERT

BEFORE UPDATE

AFTER UPDATE

BEFORE DELETE

AFTER DELETE

2. FlOAT和DOUBLE的区别

FLOAT的精度是4字节,DOUBLE的精度是8字节

3. 说一下你所理解的内存表(Heap tables)

内存表是存在内存中,它用来做临时高速存储。它的主要特点是:

不允许BLOB和TEXT字段

只有比较操作符像 =, <,>, = >,=< 可以用

内存表不支持 AUTO_INCREMENT

索引不为NULL

4. 怎么限制内存表(Heap tables)的大小

使用mysql配置变量max_heap_table_size。

5. MySQL相对Oracle有什么优势

MySQL是开源软件,0成本

轻便

支持GUI管理数据库

6. myisamchk是干什么的

可以压缩MyISAM表大小,减少硬盘和内存使用

7. 相互转换Unix 和 MySQL时间戳

MySQL转Unix,使用命令 UNIX_TIMESTAMP

Unix转MySQL,使用命令 FROM_UNIXTIME

8. 什么是BLOB

BLOB是大二进制文件类型,可以保持大数据

根据保持数据长度的不同,分为4种:

TINYBLOB

BLOB

MEDIUMBLOB

LONGBLOB

9. MyISAM表在硬盘是怎么组织的

.frm 文件:保存表的定义

.MYD:数据文件

.MYI:索引文件

10. 解释MyISAM相对于InnoDB的优势是什么

MyISAM支持更好的硬盘空间管理-把表存储在分离的文件中,可以在需要时压缩存储。

InnoDB存储在表空间中,不利于进一步优化。

11. MySQL连接字符串

使用CONCAT:

CONCAT (string1, string2, string3)


12. 在MySQL中获取当前时间

如下查询:

SELECT CURRENT_DATE()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql 面试