唯一标识符和long int比较作为主键

时间:2012-11-20 04:44:52

标签: sql sql-server primary-key sqldatatypes

我已经多次看到两种数据类型唯一标识符和long int作为数据表的主键。哪一个更好?请分享您的意见。两者相互之间的优缺点。

1 个答案:

答案 0 :(得分:1)

if you don't have a specific reason to use GUIDs, use INTs.

GUIDING OF GUID:

  • 唯一标识符更好,因为guaranteed to always return a unique value across space and time

  • 我不知道创建GUID的完整机制,但我似乎 请记住它与您的MAC地址有关 网卡和系统时间。

  • 如果你是consolidating records from multiple SQL Servers into one table,就像在数据仓库中一样,这会派上用场。

    SQL Server复制也大量使用GUID,以便在多个SQL Server中分散行时跟踪行。

    DISADVANTAGEOUS OF GUID:

  • 无法确定uniqueidentifier的顺序 产生了价值。它们不适合现有应用程序 这取决于串行递增键值

  • 使用GUID作为键值的主要缺点是它们是 大。构建在GUID上的索引将比大于和慢 建立在IDENTITY列上的索引

  • GUID作为群集密钥存在问题,因为它很高 随机性