什么时候不使用GUID主?

时间:2012-06-13 03:25:24

标签: c# sql-server guid

我需要记录令牌错误响应只有两种类型的错误。

“RequestError”和“SystemError”

由于这些错误没有改变,为什么使用GUID作为主键,为什么我只能将它们存储为“RequestError”和“SystemError”?

(我的工作同事说我们应该将它存储为唯一标识符,因为如果我们将这些错误更改为其他内容后,其他所有内容都将存储为唯一标识符嗯嗯但它们不会更改?)

1 个答案:

答案 0 :(得分:2)

根据我如何解释您的(标题)问题,我建议您阅读http://www.codinghorror.com/blog/2007/03/primary-keys-ids-versus-guids.html

这是一个简短的阅读并且有一个优点/缺点列表,我倾向于不同意guids没有制作非常好的主键(或者更多,所以我觉得它有点像一般的声明)

我认为如果您的记录是“RequestError”或“SystemError”,guid可能会超出需求,如果该表要保存大量记录,则简单的int主键可能更有效。

还有http://databases.aspfaq.com/database/what-should-i-choose-for-my-primary-key.html的链接,其中包含更多的优缺点