2012-03-15 78 views
0

我使用Table Value constructor一次插入一堆行。表格插入和範圍檢查?

但是,如果我使用SQL複製,我會自動管理我的id列上的發佈服務器上運行範圍檢查約束。

原因是在插入多個值期間id範圍似乎不會增加,這意味着在實際範圍擴展可能發生(或id閾值)之前達到最大id。

看起來像這樣的解決方案運行合併代理程序或運行sp_adjustpublisheridentityrange存儲過程的此problem

我litteraly做這樣的事情:

INSERT INTO dbo.MyProducts (Name, ListPrice) 
VALUES ('Helmet', 25.50), 
     ('Wheel', 30.00), 
     ((SELECT Name FROM Production.Product WHERE ProductID = 720), 
     (SELECT ListPrice FROM Production.Product WHERE ProductID = 720)); 
GO 

什麼是我的選擇(如果我不想或不能採取任何提議的解決方案的)?擴大範圍?降低門檻?

我可以通過編程修改我的請求來繞過這個問題嗎?

謝謝。

回答

0

唯一的解決方案似乎是運行sp_adjustpublisheridentityrange存儲過程。