HiLo 还是身份?

发布于 2024-07-18 01:14:29 字数 66 浏览 4 评论 0原文

只是想获得一些关于主键的意见 - 使用身份/序列号或使用 HiLo 策略(查询高值并增加应用程序本身的低值)会更好吗?

Just wanted to get some opinions on primary keys - would it be better to use identity/sequence numbers or use a HiLo strategy (query for the high value and increment the low value on the app itself)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

随心而道 2024-07-25 01:14:29

如果您使用带有大型表(> 100 万行)的 SQL Server 2005/2008,您可能需要考虑 ,链接到 。 在某些情况下,scope_identity() 和 @@identity 会出现问题。

当然,围绕当前的实现问题进行设计并不总是最明智的决定。

If you're using SQL Server 2005/2008 with a large table (> 1 million rows), you may want to consider this, which links to this. There's an issue with scope_identity() and @@identity under certain circumstances.

Of course, designing around a current implementation issue isn't always the wisest decision.

明明#如月 2024-07-25 01:14:29

如果您的应用程序仅使用一个数据库,我会使用身份/序列。

我所看到的使用 HiLo 的唯一真正令人信服的理由是,当您的应用程序可能有两个断开连接的实例时,人们可以同时处理这两个实例,并且您需要在某个时刻协调差异

Ex。 您正在开发一个内容管理系统,人们可以在不同位置的两台不同服务器上工作,但两者需要在某个时刻同步

If your application is only going to use one database, I'd go with an identity/sequence.

The only really compelling reason to go with HiLo that I've seen is when you could have two disconnected instances of your application that people can work on simultaneously and you need to reconcile the differences at some point

Ex. You are working on a content management system where people could be working on two different servers at different locations but the two need to be sync'd at some point

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文