这篇文章主要讲解了“mysql主键和唯一的区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql主键和唯一的区别是什么”吧!
区别
1、一个表至多有一个主键,但可以有多个唯一。
2、主键不允许为空,唯一可以为空。
3、主键创建后一定包含一个唯一性索引。
唯一性索引并不一定就是主键。
4、唯一性索引列允许空值,而主键列不允许为空值。
实例
查看索引 show index from sdn_system_operation; 创建唯一索引 create unique index unique_index_operation_name on sdn_system_operation(operation_name); create unique index unique_index_operation_code on sdn_system_operation(operation_code); create unique index unique_index_operation_nameandcode on sdn_system_operation(operation_name,operation_code); 删除唯一索引 drop index unique_index_operation_name on sdn_system_operation; drop index unique_index_operation_code on sdn_system_operation; drop index unique_index_operation_nameandcode on sdn_system_operation; 将UNIQUE约束添加到已存在的表中 alter table sdn_system_operation constraint unique_index_operation_name unique(operation_name); alter table sdn_system_operation constraint unique_index_operation_code unique(operation_code); alter table sdn_system_operation constraint unique_index_operation_nameandcode unique(operation_name,operation_code); 解除唯一索引 alter table sdn_system_operation drop index unique_index_operation_name; alter table sdn_system_operation drop index unique_index_operation_code; alter table sdn_system_operation drop index unique_index_operation_nameandcode;