一、主键和候选键有什么区别?
表格的每一行都由主键唯一标识, 一个表只有一个主键。
主键也是候选键。按照惯例,候选键可以被指定为主键,并且可以用于任何外键引用。
二、MySQL 数据库服务器性能分析的方法命令有哪些?
Show status 一些值得监控的变量值:
Bytes received 和 Bytes sent 指服务器之间来往的流量。
Com 服务器正在执行的命令。
Created 查询执行期间创建的临时表和文件。
Handler 存储引擎操作。
Select 不同类型的联接执行计划。
Sort_* 几种排序信息。
Show session status like ‘Select’;
Show profiles SET profiling=1;
Show profiles\G Show profile;
三、LIKE 和 REGEXP 操作有什么区别?
LIKE 和 REGEXP 运算符用于表示 ^ 和%。
SELECT * FROM tablename WHERE * REGEXP “^b”;
SELECT * FROM tablename WHERE * LIKE “%b”;
四、BLOB 和 TEXT 有什么区别?
BLOB 是一个二进制对象,可以容纳可变数量的数据。有四种类型的 BLOB
· TINYBLOB
· BLOB
· MEDIUMBLOB 和
· LONGBLOB
它们只能在所能容纳价值的最大长度上有所不同。
TEXT 是一个不区分大小写的 BLOB。四种 TEXT 类型
· TINYTEXT
· TEXT
· MEDIUMTEXT 和
· LONGTEXT
它们对应于四种 BLOB 类型,并具有相同的最大长度和存储要求。
BLOB 和 TEXT 类型之间的唯一区别在于对 BLOB 值进行排序和比较时区分大小写,对 TEXT 值不区分大小写。
五、数据库的三范式?
第一范式:数据库表的每一个字段都是不可分割的。
第二范式:数据库表中的非主属性只依赖于主键。
第三范式:不存在非主属性对关键字的传递函数依赖关系。
六、MySQL 表中允许有多少个 TRIGGERS?
在 MySQL 表中允许有六个触发器,如下:
BEFORE INSERT
AFTER INSERT
BEFORE UPDATE
AFTER UPDATE
BEFORE DELETE
AFTER DELETE