Azure的数据传输标识列种子10,000跳下 [英] Azure data transfer Identity Column Seed Jumped by 10,000

查看:109
本文介绍了Azure的数据传输标识列种子10,000跳下的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

通过SQL脚本插入数据后
这有

After inserting the data via sql script that had

SET IDENTITY_INSERT [dbo].[table] ON
...
SET IDENTITY_INSERT [dbo].[table] OFF

身份种子增加了10,000

the identity seed has increased by 10,000

我曾尝试运行补种

dbcc CHECKIDENT ('vendors', 'reseed', 57439)

但我得到的错误说DBCC命令'CHECKIDENT在这个版本的SQL Server不支持。

but I get the error saying the DBCC command 'CHECKIDENT' is not supported in this version of SQL Server.

如何停止在将来这个问题?

How to stop in the future this problem?

推荐答案

我发现<一个href=\"http://www.networksteve.com/forum/topic.php/Identity_/_Primary_Key_field_in_SQL_Azure_skipping_large_blocks/?TopicId=37864&Posts=24\">this 发布在网络上。

行为(补种)是由设计,但已确认
  内部为小于最佳和请求已取得(再次,
  内部的)去改变。这可能会或可能不会发生。

The behavior (reseed) is by design, but has been acknowledged internally as less than optimal and a request has been made (again, internally) to change the behavior. This may or may not happen.

该补种按照实例反弹,这是由触发覆盖
  SLA。他们大多是补丁的操作系统或SQL Azure的本身。

The reseed is triggered by instance bounces, which are covered by the SLA. They are mostly patches to the OS or SQL Azure itself.

最重要的一点是,有机会,我们将永远不会打
  INT限制。我认为,我们所有人都忘了(至少我这样做)的
  SQLAzure并不像SQL服务器;还有的地方非常真实的限制,
  特别是总规模的DB(150演出)。他还表示,有一个最大的行
  每10万条记录表限制,但我没有找到
  那在网络上的文件。假设是正确的,即使有
  1000K的跳跃,我们仍然是安全的。是的,你也可以切换
  为一个BIGINT如果你打的总数据库大小限制之前,INT限制。
  他的观点是根本,我们将运行的空间,我们打了前
  INT限制。

The most important point was that, chances are, we will never hit the int limit. I think we all are forgetting (at least I did) that SQLAzure is not like SQL Server; there are very real limits in place, specifically total db size (150 gigs). He also said there is a max row limit per table of 10 million records, but I'm not finding documentation of that on the web. Assuming that is correct, even with jumps of 1000k, we would still be safe. And yes you could also switch to a bigint if you hit the int limit before the total db size limit. His point was simply that we will run out of room before we hit the int limit.

SQL Azure上的限制可能会改变,但我猜的一点是,你可以得到很大的差距,如果SQL实例崩溃。

The Limits on SQL Azure could change, but I guess the point is you can get the large gaps if the SQL instance crashes.

这篇关于Azure的数据传输标识列种子10,000跳下的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆