आइए पहले आइडेंटिटी प्रॉपर्टी को समझने के साथ शुरू करते हैं और फिर हम आगे बढ़ सकते हैं, हम इसे कैसे रीसेट कर सकते हैं? नीचे दी गई स्क्रिप्ट का उपयोग करके पहचान कॉलम के साथ एक SQL सर्वर तालिका बनाएं
USE TEST GO
CREATE TABLE dbo.Person( ID INT IDENTITY(1,1), Name VARCHAR(10))
चलो नीचे दिए गए कथनों का उपयोग करके नीचे रिकॉर्ड डालें
INSERT INTO dbo.Person(name)
VALUES ('Aamir')
INSERT INTO dbo.Person(Name)
VALUES ('Aamir Shahzad')
केवल एक रिकॉर्ड डाला जाएगा और दूसरा रिकॉर्ड विफल हो जाएगा क्योंकि स्ट्रिंग का आकार कॉलम डेटा प्रकार के आकार से अधिक है चित्र 1-SQL सर्वर तालिका में रिकॉर्ड डालें
पहचान की जांच करें एक कॉलम का मान: किसी कॉलम के पहचान मूल्य की जांच करने के लिए, हम नीचे दिए गए कथन का उपयोग कर सकते हैं
--Check the Identity Value of a Column
DBCC CHECKIDENT ('dbo.Person');
Fig 2- DBCC CHECKIDENT to see the Identity Value
यहां तक कि दूसरे रिकॉर्ड के लिए इंसर्ट भी विफल हो गया था लेकिन पहचान मान बढ़ गया है। यदि हम अगला रिकॉर्ड डालेंगे, तो उसके लिए पहचान मान 3 होगा जैसा कि हम चित्र 3 में देख सकते हैं।
यहां कुछ तरीके दिए गए हैं जिनसे हटाने के बाद कॉलम का पहचान मान रीसेट किया जा सकता है data.
TRUNCATE का उपयोग करके पहचान मान रीसेट करें: यदि हम तालिका से सब कुछ हटाना चाहते हैं और तालिका में कोई विदेशी कुंजी संबंध नहीं है, तो हम तालिका को छोटा कर सकते हैं और यह डेटा को साफ कर देगा और साथ ही पहचान मूल्य निर्धारित करेगा चित्र 3-तालिका को साफ करने और पहचान मान को रीसेट करने के लिए Truncate का उपयोग करें
DBCC CHECKIDENT का उपयोग करके पहचान मान रीसेट करें: यदि तालिका किसी अन्य तालिका (प्राथमिक-विदेशी कुंजी) संबंध के साथ संबंध में है, तो हम तालिका को छोटा नहीं कर पाएंगे। उस स्थिति में हमें डिलीट स्टेटमेंट का उपयोग करके तालिका से मानों को हटाना होगा और फिर पहचान मान सेट करना होगा।
DBCC CHECKIDENT ('dbo.Person', RESEED, 0);
चित्र 4. तालिका से डेटा हटाएं और पहचान मूल्य को फिर से जोड़ने के लिए DBCC CHECKIDENT का उपयोग करें
वीडियो डेमो :SQL सर्वर तालिका में पहचान कॉलम मान को कैसे रीसेट करें