gpt4 book ai didi

sql-server - 如何从现有列中禁用标识以及添加数据后,如何在 SQL Server 2008 中的同一列上再次启用标识?

转载 作者:行者123 更新时间:2023-12-02 08:40:27 25 4
gpt4 key购买 nike

我要做数据迁移。

为此,我必须禁用列的标识,并且在添加数据后需要为 SQL Server 2008 中的同一列再次启用该标识。

谁能解释一下该怎么做,或者有其他方法可以完成同样的任务吗?

最佳答案

如果您使用普通的 INSERT 语句进行迁移,那么您可以使用 IDENTITY_INSERT *:

SET IDENTITY_INSERT abc ON

INSERT INTO abc (/* Columns */) VALUES
(/* Values */)

SET IDENTITY_INSERT abc OFF

如果您使用 BULK INSERT ,那么您需要 KEEPIDENTITY 选项。

如果您使用的是 SSIS OLE DB Destination那么您会想要使用“保留身份”选项。

如果您使用的是 SQL Server 导入和导出向导,那么当您在向导的选择源表和 View 页面上选择了适当的工作表/表时,选择编辑Mappings... 并勾选 Enable identity insert 选项。


*许多人发现此选项的名称令人困惑,因为他们认为他们是在告诉系统要做什么——“请插入标识值”——相反,意思是“我要插入标识值”。这就是为什么要在插入之前打开并在插入之后关闭,而不是相反。

关于sql-server - 如何从现有列中禁用标识以及添加数据后,如何在 SQL Server 2008 中的同一列上再次启用标识?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16962346/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com