Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर में पढ़ें और बढ़ाएँ int मान

क्या यह जरूरी है कि लॉट नंबर क्रमिक हों? क्यों न केवल एक identity का उपयोग करें ? यह समवर्ती के संदर्भ में बेहतर है क्योंकि अन्यथा आपको समवर्ती सम्मिलन प्रयासों को अवरुद्ध करने की आवश्यकता होती है यदि वे वापस लुढ़क जाते हैं और अनुक्रम में एक अंतर छोड़ देते हैं।

अगर यह पूरी तरह से एक आवश्यकता है, तो आप कर सकते हैं

CREATE TABLE dbo.Sequence 
  (
     OneRow CHAR(1) DEFAULT('X') PRIMARY KEY CHECK(OneRow = 'X'),
     val    INT
  )  

प्रारंभिक बीज के साथ एक पंक्ति डालें।

INSERT INTO dbo.Sequence 
            (val)
VALUES     (1)  

फिर अपने डालने के लिए पर्याप्त आकार की एक श्रृंखला आवंटित करने के लिए (इसे स्पष्ट रूप से उसी लेनदेन में कॉल करें)

CREATE PROC dbo.GetSequence
@val AS int OUTPUT,
@n as int =1
AS
UPDATE dbo.Sequence 
SET @val = val = (val + @n);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर C# के साथ बैकअप करता है

  2. SQL सर्वर केस-संवेदनशीलता की जाँच करता है?

  3. SQL सर्वर - कई क्षेत्रों के साथ खंड में

  4. कैसे पता लगाया जाए कि किसी स्ट्रिंग में विशेष वर्ण हैं या नहीं?

  5. SQL सर्वर बिल में राशि का आवंटन