1.一张表中可以有几个主键?
答:一个。
2.那联合主键是什么?
答:一张表多个主键,就是联合主键,可以由多个列形成联合主键,但是主键只能有一个
3.主键作用是什么?
答:主键的作用是保证数据的唯一性和完整性,同时通过主键检索表能够增加检索速度。
4.索引是不是主键?索引的作用是什么?
答:主键属于索引的一种,索引不一定是主键,索引是查询优化最主要的方式;
5.索引分为哪几种?一张表中可以有多个唯一索引嘛?
(1).普通索引:
列值可以取空值或重复值。创建使用关键字INDEX或KEY;
(2).唯一索引:
列值不能重复;即索引列值必须是唯一的,但可以是空值;创建使用关键字UNIQUE;
(3).主键索引:
主键索引是系统自动创建的主键索引,并且是唯一的。与唯一索引区别是;列值不能为空;
(4).聚簇索引:
就是数据存储的物理存储顺序,非聚簇索引就是索引顺序与数据的物理顺序无关。一个表只能有一个聚簇索引。目前只有InoDB和solidDB支持。
(5).全文索引:
只能创建在varchar或text的列上;建立全文索引能够在全文索引的列上进行查找。
所以一张表可以有多个唯一索引
6.什么是单列索引和组合索引?
(1).单列索引:
就是一个索引只包含表中的一个列;创建一个学号ID的单列索引;再创建一个姓名name的单列索引。即每个索引包含一个列。
(2).组合索引(复合索引或多列索引):
就是表中的两个列或多个列来创建成一个索引;比如;以用户ID、用户名Name、用户年龄Age来创建的索引就是联合索引。
排序规则是;左前缀原则:即先按照用户ID,排序后;当第一列值相同的情况下;则按照用户名Name第二列判刑;依次类推。