SQL Server 2012 シーケンス オブジェクトがあります。
/****** Create Sequence Object ******/
CREATE SEQUENCE TestSeq
START WITH 1
INCREMENT BY 1;
トランザクション内でいくつかのクエリを実行する SP があります。
BEGIN TRAN
SELECT NEXT VALUE FOR dbo.TestSeq
<here all the query update code......>
ROLLBACK TRAN
トランザクションが失敗した場合、すべての更新は問題なくロールバックされますが、トランザクションの範囲外であるため、シーケンスはロールバックされません。
それを処理する方法の手がかりはありますか?