【发布时间】:2011-12-26 10:28:32
【问题描述】:
是否可以像在 Postgres 中那样在 SQL Server 中设置 autoincrement 字段的下一个值?
对于好奇的人,这是整个背景故事。我的公司曾经使用 Postgres,它允许您轻松地将自动增量字段的下一个值设置为任意值。
新公司收购了旧公司,现在我们正在将 Postgres 数据导入 SQL Server。不知何故,帐户上的自动递增 AcctID 字段设置为 9 位数字,即使有数千个 8 位数字。显然有人出于某种现在未知的原因在 Postgres 中这样做了一段时间。
所以现在在新的 SQL Server 数据库中,新账户都有 9 位的账户 ID,但是客户的会计软件无法处理 9 位的账户号码,所以他们添加的任何新账户都无法处理他们的会计部门,直到问题得到解决。
当然,有多达 72 个不同的表可以依赖于 Accounts 的 AcctID 字段,并且客户在意识到所涉及的问题之前创建了大约 360 个新帐户,因此保存这些数据,截断表,并且重新插入数据将是一项繁重的任务。
最好将 AcctID 的自动增量值设置为最后 8 位值 + 1。然后至少他们可以在解决 9 位帐户的解决方案时添加新帐户在。事实上,他们声称他们只需要他们添加的 360 帐户中的 3 个。
那么是否可以像在 Postgres 中那样在 SQL Server 中重置字段的自动增量值?
【问题讨论】:
标签: sql-server postgresql auto-increment