1. MySQL数据库用什么存储引擎?区别是?

答案:常见的有MyISAM和InnoDB。

MyISAM:不支持外键约束。不支持事务。对数据大批量导入时,它会边插入数据边建索引,所以为了提高执行效率,应该先禁用索引,在完全导入后再开启索引。

InnoDB:支持外键约束,支持事务。对索引都是单独处理的,无需引用索引

2. 外键的使用需要满足下列的条件(这里涉及到了InnoDB的概念)

(1). 两张表必须都是InnoDB表,并且它们没有临时表。

注:InnoDB是数据库的引擎。MySQL常见引擎有两种:InnoDB和MyISAM,后者不支持外键。

(2). 建立外键关系的对应列必须具有相似的InnoDB内部数据类型。

(3). 建立外键关系的对应列必须建立了索引。

(4). 假如显式的给出了CONSTRAINT symbol,那symbol在数据库中必须是唯一的。假如没有显式的给出,InnoDB会自动的创建。

3. 表连接类型和区别

内连接(INNER), 外连接(LEFT, RIGHT, FULL), 交叉连接(CROSS), 自连接

外连接不仅列出与连接条件(on)相匹配的行,还列出左表table1(左外连接)、或右表table2(右外连接)、或两个表(全外连接)中所有符合WHERE过滤条件的数据行。一般都是用左连接或者外连接。

MySQL数据库用什么存储引擎?区别是?

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据