我已经阅读了某些地方,通常对大多数MySQL表使用自动递增主键,而不是简单地依赖非增量字段,这将被强制为唯一的。要在MySQL中使用自动增量吗?
我的问题是关于一个用户表格,以及一个通过外键连接到它的表格。这里是模式:
TABLE Users {
id
name
...
}
TABLE Authors {
user_id (FK)
author_bio
}
作者表也应该有自己的自动递增主键,或者它应该依赖于user_id外键作为主键?
ALSO
是否有明显的性能理由不使用自动递增的ID作为主?
使用'USERS'表的主键作为'作者的主键'表格表示1:1的关系。规范化(3NF?)规定在这种情况下不应该有两个表。添加一个单独的主键(自动增量与否)不会改变... –
OMG - 用户可能是作者,但作者将是用户。你是这个意思吗? – johnnietheblack
不,如果只有一个USER与一个AUTHOR记录相关 - 即1:1。这个决定取决于你的业务规则,但作者被认为有假名(别名) - IE:史蒂文金写为理查德巴赫曼 –