我正在数据库中添加一个新表,该表可能会增长到拥有数百万条记录。该表有两列,
TicketId - PrimaryKey, Auto increment id
RefNo - GUID, UniqueIdentifier
RefNo的目的是提取记录详细信息并在UI上显示。我不想在用户界面中显示主键。
这是用户提取票证详细信息时将在URL上看到的内容(id为RefNo)
在WebAPI项目上,我将RefNo传递给数据库(实体框架)并提取记录。目前一切正常。
我的问题是,当表包含数百万个数据时,将使用GUID(RefNo)而不是主键查询数据库会影响数据库性能吗?
哪个会更快,我还有其他选择吗?
您的查询有很多不错的评论。由于我是新手,因此限制为add a comment
,因此发布答案。
如果您/客户团队中有指定的DBA负责数据库独立维护,那么Int与uniqueidentifier不会有任何区别。
性能几乎为equal
,这是示例here的详细信息