我有问题,我们应该在表中使用Int/GUID。使用这种情况。SQL SERVER - INT Vs GUID - 我们应该使用
使用BIGINT
作为主键 - 聚集等,用于连接,快速检索等,即为检索和用户便利而优化。
将GUID
作为您记录的唯一标记,这是您在跨服务器/应用程序移植数据时所使用的内容。这绝不会显示给用户,而是记录到所有记录。
这为您提供了两全其美的解决方案,避免了使用GUIDs
作为主键的碎片和性能问题,但在移动数据/在系统之间共享数据时保留其优势,因为您可以独立识别记录。
有些人可能会争辩说额外的存储成本过高,但我认为从长远来看,在SAN上花费几美元更便宜,而不是试图用同一数据列做两件不同的事情。