पहचान संपत्ति को रीसेट करने का आदेश है
DBCC CHECKIDENT (tablename, RESEED, new_reseed_value)
जब आप कॉलम पहचान को 12345 पर सेट करना चाहते हैं तो आप इसे चलाते हैं
DBCC CHECKIDENT (beer, RESEED, 12345)
जब आप परीक्षण पंक्तियों को हटाना चाहते हैं और मान को पिछले मान पर पुनर्स्थापित करना चाहते हैं, तो आप निम्न कार्य करते हैं।
DELETE
FROM beer
WHERE beer_id >= 12345 ;
DECLARE @NewSeed NUMERIC(10)
SELECT @NewSeed = MAX(beer_id)
FROM beer ;
DBCC CHECKIDENT (beer, RESEED, @NewSeed)
यहां आपके परिदृश्य के लिए एक प्रदर्शन है। ध्यान दें कि बियर_आईडी कॉलम IDENTITY (1, 1)
. के साथ बनाया गया है संपत्ति, जो 1 की वृद्धि के साथ पहचान को 1 से सीड करती है।
CREATE TABLE beer
(
beer_id NUMERIC(10) IDENTITY (1,1) NOT NULL,
mnemonic NVARCHAR(8)
);
GO
INSERT INTO beer(mnemonic) VALUES ('Beer 1')
INSERT INTO beer(mnemonic) VALUES ('Beer 2')
SELECT *
FROM beer ;
DBCC CHECKIDENT (beer, RESEED, 12345)
GO
INSERT INTO beer(mnemonic) VALUES ('Beer 3')
INSERT INTO beer(mnemonic) VALUES ('Beer 4')
SELECT *
FROM beer ;
DELETE
FROM beer
WHERE beer_id >= 12345 ;
DECLARE @NewSeed NUMERIC(10)
SELECT @NewSeed = MAX(beer_id)
FROM beer ;
DBCC CHECKIDENT (beer, RESEED, @NewSeed)
GO
INSERT INTO beer(mnemonic) VALUES ('Beer 5')
INSERT INTO beer(mnemonic) VALUES ('Beer 6')
SELECT *
FROM beer ;