对象图中只有不到一百万个节点,大部分是断开的,需要批量导入。
密钥都是服务器生成的。有几个级别的关系,因此在插入每个批次之后,需要检索正确的身份密钥以用作下一批中的外键值。
最简单的方法是什么?是否有BULK INSERT
的输出?
或者它可以很好地调整表上的当前增量ID值,为我们插入的行数腾出空间,从这些数字在客户端分配ID,以及带有标识插入的批量复制?例如。如果下一个增量ID为120,001且要插入600,000行,请将下一个ID设置为720,001,并在任何插入之前手动使用120,001到720,000之间的数字作为ID?
declare @lastID int, @newLastID int;
begin tran
set @lastID = ident_current('dbo.Strains');
set @newLastID = @lastID + 1000;
dbcc checkident('dbo.Strains', reseed, @newLastID);
commit
select @lastID + 1;