sql - 你如何确定什么应该是主键?

标签 sql mysql database-design

这是一个相当笼统的问题,但我想知道你用什么来确定表的主键。非常需要随推理提供的示例。

我注意到许多程序员添加 ID 列并将其用作主键。我认为,从设计的角度来看,这是有缺陷的,因为在这种情况下,ID 与表格无关。

最佳答案

主键的作用是唯一标识表中的每一行。如果没有列或列集符合此要求,则通常会添加一个包含唯一 ID 的列作为主键。

我不同意您关于程序员添加与表数据无关的 id 的评论。当您需要跨多个表链接数据时,简洁的 id 比复合键更容易使用。

关于sql - 你如何确定什么应该是主键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1272444/

相关文章:

php - 为什么此更新用户密码的代码不起作用?

php - 更改文件中的格式 JSON 输出?

sql - 使用第三个表中的共同 id 重新连接两个 sql 表

mysql - 如何在 Go 中构建类型接口(interface)的变量?

php - 将数组中的多行插入具有唯一 ID 的表中

asp.net - 包含永远不会被删除或更改的数据的表

sql - postgresql 如何插入具有默认值的枚举字段?

phpMyAdmin 用户级别

mysql - 具有并属于许多实现问题/标签

mysql - DB表设计建议