加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 数据库 > MsSql > 正文

SQL Server中PK的最佳实践

发布时间:2020-05-31 01:59:33 所属栏目:MsSql 来源:互联网
导读:我一直想知道在SQL Server中的M2M表中设置PK的最佳实践或后果是什么.例如: 我有2张桌子 用户 角色 我正在制作一张新桌子 UserRole 其中有2个字段 RoleId用户身份 我应该 创建一个UserRoleID作为PK,并将UserID和RoleID设为FK 制作PK UserID和RoleID并将它们设

我一直想知道在SQL Server中的M2M表中设置PK的最佳实践或后果是什么.例如:

我有2张桌子

>用户
>角色

我正在制作一张新桌子

> UserRole

其中有2个字段
RoleId&用户身份

我应该

>创建一个UserRoleID作为PK,并将UserID和RoleID设为FK

>制作PK UserID和RoleID并将它们设置为FK
>别的

我想知道每个选项的性能问题以及推荐的最佳实践.

解决方法

这些案例的标准程序是有两个索引.唯一的PK是两个字段的复合,首先是具有更大基数的字段,即UserID;和仅具有辅助字段的第二个索引(即RoleID).

然后聚集在可能涉及更多多记录结果集的任何一个上(即,如果查询每个用户的多个角色,或每个角色多个用户).

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读