如何将记录插入到具有6054条记录的表中

时间:2014-03-19 06:21:01

标签: sql-server

我有一个包含3个f_Key的表和1个包含6054个记录的P_Key。

该表丢失了一条记录。我试图将记录插入该表。

记录ID是2352,最后一个记录ID是9560所以,如果我插入记录然后它取9561 id,这是id之前的下一个id。如果尝试删除其他记录然后因为F_Key它不允许还要删除。如果我尝试更新9561 ID,那么它也不允许更新。

2 个答案:

答案 0 :(得分:1)

您可以使用SET IDENTITY INSERT构造在具有自动编号的表中显式插入PK值,如下所示:

set identity_insert #your_table on
insert into your_table (PK_COL_IDENTITY, ...) values (2352, ...)
set identity_insert #your_table off

答案 1 :(得分:0)

据我所知,如果您的ID自动递增,那么您无法更新该ID(密钥)。在您的情况下,唯一的方法是TRUNCATE。如果您将截断表格,那么它将允许生成新的序列。

您可以创建临时表并将数据迁移到临时表并截断该父表,然后再次将数据从临时表迁移到父表。

希望它会对你有所帮助。