数据库范围相当于SET IDENTITY_INSERT OFF

tag*_*s2k 1 sql-server identity identity-insert

在我从SQL脚本插入140万行数据的永恒 传奇中,我编写了一个基本的WinForms应用程序,它接受脚本的每一行并单独执行.

但是,因为包含原始脚本

SET IDENTITY_INSERT [Table] OFF
Run Code Online (Sandbox Code Playgroud)

和SET是一个会话范围的命令,这个设置在每次SQL调用时都会丢失,这意味着每一行都失败了.有没有办法在整个数据库范围内为整个表设置IDENTITY_INSERT,这样我可以在没有它们的情况下进行这些单独调用失败?或许我可以通过在每一行附加一个命令来告诉它忽略身份规范?

tva*_*son 5

BULK INSERT对你不起作用?或者SQL Server导入/导出向导(此处还是此处)?我知道导入/导出可以关闭整个导入的身份插入.我有理由相信你可以在BULK INSERT之前做到这一点