要回答这个问题首先必须了解主键的定义:主关键字(primary key)是表中的一个或多个字段,它的值用于
惟一地

主键:表中经常有一个列或多个列的组合,其值能唯一的标识表中的每一行。这样的一列或多列称为表的主键。
外键:用来表示表与表之间联系,是表中的一个列。
主键和外键都是用于维护数据库完整性的一种机制。
区别:1、主键是唯一标识一条记录,不能重复,不允许为空;而外键可以重复,可以是空值;
2、主键是用来保持数据完整性,外键是用来建立与其他表联系用的;
3、主键只有一个,外键可以有多个。外键
mysql中主键具有的特性:
1)一个表中只能有一个主键。如果在其他字段上建立主键,则原来的主键就会取消。在ACCESS中,虽然主键不是必需的,但最好为每个表都设置一个主键。
2)主键的值不可重复,也不可为空(NULL)。
3)主键值不能被重用。
主键可以由一个字段,也可以由多个字段组成,分别成为单字段主键或多字段主键。
MySQL的主键是必须的,为所有的表添加主键,是一个使用数据库的好习惯,主键将帮助用户在迁移数据时,不会引入重复数据问题。
表中的每一行由主键(PK)唯一确定。您在创建表的时候必须指定组成主键的列,这些列称为主键列。主键列必须有值。您必须确保主键列的值的组合能够唯一地确定一行。在后续使用的过程中,主键列的类型不能改变。