目录
-
- 1. 请简洁描述 MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?
- 2. 在 MySQL 中 ENUM 的用法是什么?
- 3. CHAR 和 VARCHAR 的区别?
- 4. 列的字符串类型可以是什么?
- 5. MySQL 中使用什么存储引擎?
- 6. TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 数据类型上做什么?
- 7. 主键和候选键有什么区别?
- 8. MySQL 数据库服务器性能分析的方法命令有哪些?
- 9. LIKE 和 REGEXP 操作有什么区别?
- 10. BLOB 和 TEXT 有什么区别?
- 11. 数据库的三范式?
- 12. MySQL 表中允许有多少个 TRIGGERS?
- 13. 什么是通用 SQL 函数?
- 14. MySQL 中有哪几种锁?
- 15. MySQL 数据优化。
- 16. MySQL 的关键字。
- 17. 存储引擎。
- 18. 数据库备份。
- 19. truncate delete drop 的区别。
- 20. Redis 是什么?两句话做一下概括。
- 21. Redis(管道,哈希)。
- 22. Redis 实现原理或机制。
- 23. Redis 有两种类型分区。
- 24. 什么是 MongoDB。
- 25. MongoDB 特点。
- 26. MongoDB 的功能。
- 27. MongoDB 的适用场景。
- 28. Redis、memcache、MongoDB 对比。
- 29. Redis 有什么用?
1. 请简洁描述 MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?
SQL 标准定义的四个隔离级别为:
read uncommited :读到未提交数据
read committed:脏读,不可重复读
repeatable read:可重读
serializable :串行事物
2. 在 MySQL 中 ENUM 的用法是什么?
ENUM 是一个字符串对象,用于指定一组预定义的值,并可在创建表时使用。
SQL 语法如下:
Create table size(name ENUM('Smail,‘Medium’,‘Large’);
3. CHAR 和 VARCHAR 的区别?
CHAR 和 VARCHAR 类型在存储和检索方面有所不同。
CHAR 列长度固定为创建表时声明的长度,长度值范围是 1 到 255。 当 CHAR 值被存储时,它们被用空格填充到特定长度,检索 CHAR 值时需删除尾随
空格。
4. 列的字符串类型可以是什么?
字符串类型是:
SET
BLOB
ENUM
CHAR
TEXT
VARCHAR
5. MySQL 中使用什么存储引擎?
存储引擎称为表类型,数据使用各种技术存储在文件中。
技术涉及:
Storage mechanism
Locking levels
Indexing
Capabilities and functions.
6. TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 数据类型上做什么?
创建表时 TIMESTAMP 列用 Zero 更新。只要表中的其他字段发生更改,UPDATE
CURRENT_TIMESTAMP 修饰符就将时间戳字段更新为当前时间。
7. 主键和候选键有什么区别?
表格的每一行都由主键唯一标识, 一个表只有一个主键。
主键也是候选键。按照惯例,候选键可以被指定为主键,并且可以用于任何外键引
用。
8. MySQL 数据库服务器性能分析的方法命令有哪些?
Show status 一些值得监控的变量值: Bytesreceived 和 Bytessent 和服务器之间
来往的流量。 Com 服务器正在执行的命令。 Created 在查询执行期限间创建的临时
表和文件。 Handler 存储引擎操作。 Select 不同类型的联接执行计划。 Sort_* 几
种排序信息。 Show session status like ‘Select’; Show profiles SET
profiling=1; Show profiles\G Show profile;
9. LIKE 和 REGEXP 操作有什么区别?
LIKE 和 REGEXP 运算符用于表示 ^ 和%。
SELECT * FROM WHERE * REGEXP “^b”;
SELECT * FROM WHERE * LIKE “%b”;
10. BLOB 和 TEXT 有什么区别?
BLOB
BLOB 是一个二进制对象,可以容纳可变数量的数据。有四种类型的 BLOB
TINYBLOB
BLOB
MEDIUMBLOB 和
LONGBLOB
它们只能在所能容纳价值的最大长度上有所不同。
TEXT
TEXT 是一个不区分大小写的 BLOB。四种 TEXT 类型
TINYTEXT
TEXT
MEDIUMTEXT 和
LONGTEXT
它们对应于四种 BLOB 类型,并具有相同的最大长度和存储要求。
BLOB 和 TEXT 类型之间的唯一区别在于对 BLOB 值进行排序和比较时区分大小
写,对 TEXT 值不区分大小写。
11. 数据库的三范式?
第一范式:数据库表的每一个字段都是不可分割的。
第二范式:数据库表中的非主属性只依赖于主键。
第三范式:不存在非主属性对关键字的传递函数依赖关系。
12. MySQL 表中允许有多少个 TRIGGERS?
在 MySQL 表中允许有六个触发器,如下:
BEFORE INSERT
AFTER INSERT
BEFORE UPDATE
AFTER UPDATE
BEFORE DELETE and
AFTER DELETE
13. 什么是通用 SQL 函数?
数学函数
Abs(num)求绝对值
floor(num)向下取整
ceil(num)向上取整
字符串函数
insert (s1,index,length,s2) 替换函数
o S1 表示被替换的字符串
o s2 表示将要替换的字符串
o Index 表示被替换的位置, 从 1 开始
o Lebgth 表示被替换的长度
upper(str),ucase(str)将字母改为大写
lower(str),lcase(str)将字母改为小写
left(str,length)返回 str 字符串的前 length 个字符
right(str,length)返回 str 字符串的后 length 个字符
substring(str,index,length)返回 str 字符串从 index 位开始长度为
length 个字符(index 从 1 开始)
reverse(str)将 str 字符串倒序输出
日期函数
curdate()、current_date( ) 获取当前日期
curtime()、current_time( ) 获取当前日期
now()获取当前日期和时间
datediff(d1、d2)d1 和 d2 之间的天数差
adddate(date,numÿ