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

कैसे एक varchar autoincrement करने के लिए

  1. डेटाबेस डिज़ाइन में विचार प्रत्येक डेटा तत्व को अलग रखना है। और प्रत्येक तत्व का अपना डेटाटाइप, बाधाएं और नियम होते हैं। वह c0002 एक क्षेत्र नहीं, बल्कि दो है। XXXnnn . के साथ भी ऐसा ही है या जो कुछ भी। यह गलत है, और यह डेटा का उपयोग करने और डेटाबेस सुविधाओं और सुविधाओं का उपयोग करने की आपकी क्षमता को गंभीर रूप से सीमित कर देगा।

    इसे दो अलग-अलग डेटा आइटम में विभाजित करें:
    column_1 CHAR(1)
    column_2 INTEGER

    फिर ऑटोइनक्रिमेंट को column_2 . पर सेट करें

    और हाँ, आपकी प्राथमिक कुंजी (column_1, column_2) . हो सकती है , इसलिए आपने जो कुछ भी अर्थ खोया नहीं है c0002 आपके लिए है।

  2. आपूर्तिकर्ताओं और ग्राहकों (जो भी "सी" और "एस" का अर्थ है) को एक ही टेबल में न रखें। यदि आप ऐसा करते हैं, तो आपके पास डेटाबेस तालिका नहीं होगी, आपके पास एक फ्लैट फ़ाइल होगी। और इसके परिणामस्वरूप विभिन्न समस्याएं और सीमाएं।

    इसका मतलब है, डेटा को सामान्य करें। आप के साथ समाप्त होगा:

    • Person के लिए एक टेबल या Organisation सामान्य डेटा युक्त (Name, Address ...)
    • Customer के लिए एक टेबल ग्राहक-विशिष्ट डेटा युक्त (CreditLimit ...)
    • Supplier के लिए एक टेबल आपूर्तिकर्ता-विशिष्ट डेटा युक्त (PaymentTerms ...)
    • कोई अस्पष्ट या वैकल्पिक कॉलम नहीं, इसलिए कोई नल नहीं
    • उपयोग या SQL फ़ंक्शन पर कोई सीमा नहीं

    और जब आपको कॉलम जोड़ने की आवश्यकता होती है, तो आप इसे केवल वहीं करते हैं जहां इसकी आवश्यकता होती है, फ्लैट फ़ाइल के अन्य सभी मुकदमों को प्रभावित किए बिना। प्रभाव का दायरा परिवर्तन के दायरे तक सीमित है।



  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 सर्वर के लिए Linux पर चल रहे एप्लिकेशन को Amazon रिलेशनल डेटाबेस सर्विसेज (RDS) से कनेक्ट करना

  2. MS SQL सर्वर से कनेक्ट करते समय RODBC अस्थायी तालिका समस्या

  3. SQL सर्वर (T-SQL) में डेटाबेस की सूची प्राप्त करने के 3 तरीके

  4. आशावादी बनाम निराशावादी लॉकिंग

  5. Salesforce के साथ SQL सर्वर का उपयोग करने के लिए युक्तियाँ