主键:

唯一标识一条记录,不能有重复的,不允许为空,一个表只有一个主键,用于保证数据的唯一,完整性。

外键:

表的外键是另一表的主键, 外键可以有重复的, 可以是空值,一个表可以有多个主键,用来和其他表建立关系。

索引:

分主键索引(唯一,不允许空、重复),唯一索引(唯一,可空),普通索引(可空,重复),多个索引,用于加快查询。