sql - SQL Server中的主键设计

标签 sql sql-server

现在,我正在设计数据库,众所周知,主键是数据库设计中的重要因素。

我在决定 GUID、identity 之间的主键时遇到了困境(自动增量)和主键自定义键,我应该在什么场景下使用?

我正在尝试为学校设计数据库。学校在不同地点和不同城市设有许多分校。学校有中央数据库,他们希望每天晚上更新。

请指导我?谢谢

最佳答案

在我看来,默认选择是使用自动递增的 32 位整数。

您可以在此 QA 中涵盖的特定场景下使用 GUID:What are the best practices for using a GUID as a primary key, specifically regarding performance?

仅当您出于某种原因需要根据您的设计或业务需求分配特定 key 时,才应使用自定义 key 。

编辑:根据您的更新,如果您要合并断开连接的表,您可能需要考虑使用 GUID 键,这样就不会出现冲突问题。

关于sql - SQL Server中的主键设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26307967/

相关文章:

mysql - Redmine 与 SQL Server 2008 R2

sql - 如何将表格旋转45度并将结果保存到另一个表格中?

sql - 加入不处理 information_schema.tables 与用户表

SQL 在数字第一次出现时分割字符串

java - 如何删除行并编辑 JTable 上保存的任何数据并将其更新到 mySQL 数据库

mysql - asp.net中的mysql如何转义?

SQL Server Management Studio 网络相关或特定于实例的错误

php - 如何在 CakePHP 中执行自定义查询

mysql - sql错误errno : 121

c# - 在 SQL smo 中迭代所有表时如何仅识别基表?