gpt4 book ai didi

mysql - 唯一键可以用作主键那么为什么我们保留另一个主键?

转载 作者:可可西里 更新时间:2023-11-01 08:34:32 25 4
gpt4 key购买 nike

CREATE TABLE IF NOT EXISTS `tbl_users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) COLLATE latin1_general_ci NOT NULL,
`passd` varchar(50) COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ;

我们有usermane作为unique,我们可以用它作为主键,那么把id作为主键有什么好处呢?

谢谢

最佳答案

主键将避免表中的重复值和空值unique+not null 的组合可以做到。但是优点是,如果表有主键,我们可以创建与子表的关系。

This Will Help You

编辑:主键

  1. 主键不能接受空值。
  2. 默认情况下,主键是聚簇索引,数据库表中的数据是按照聚簇索引的顺序物理组织的。
  3. 一张表中只能有一个主键。
  4. 主键可以做成另一个表的外键。

唯一键

  1. 唯一键只能接受一个空值。
  2. 默认情况下,唯一键是唯一的非聚集索引。
  3. 一张表中可以有多个唯一键。
  4. 在SQL Server中,Unique key可以做成另一个表的外键。

关于mysql - 唯一键可以用作主键那么为什么我们保留另一个主键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16587366/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com