【发布时间】:2015-03-08 15:35:24
【问题描述】:
我有一个包含大约 600000 条记录的表。我想重新设定该表的标识列。这是我的计划:
- 将此表的内容存储在临时表中
- 从该表中删除所有记录
- 种子身份
- 将该临时表中的记录插入此表中
那么如何将这个表存储到一个临时表中呢?
【问题讨论】:
-
为什么不直接从 600001 删除身份、更新 ID 和重新播种?
-
如果您想通过删除所有内容来做到这一点,您可以使用
SELECT ... INTO子句使用现有数据填充新表。 -
@GiorgiNakeuri 我使用 int 作为标识,并且已达到其限制,因为在此表中插入记录的作业会不断删除旧记录并插入新记录。由于我们将此表从 Dev 移至 Production,因此身份已经非常高,因为在测试期间不断删除和插入。
标签: sql-server-2012 identity temp-tables