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

डेटाटाइम फ़ील्ड पर SQL सर्वर प्राथमिक कुंजी

जब आप कहते हैं कि तिथियां अद्वितीय होंगी, तो क्या आपका मतलब यह है कि आप सोचते हैं वे अद्वितीय होंगे, या समस्या के बयान से उनकी विशिष्टता की गारंटी है? मेरे अनुभव में, कुछ चीजें एक कल्पना की तुलना में कम अनोखी होती हैं (अमेरिकी सामाजिक सुरक्षा संख्या एक उदाहरण है)।

यदि दिनांक मानों की गारंटी अद्वितीय नहीं है, तो आपको पूर्णांक कुंजी जोड़नी चाहिए।

यदि दिनांक मान अद्वितीय होने की गारंटी है, तो क्या वे बदलते हैं? यदि वे बदलते हैं, तो क्या उन्हें अन्य तालिकाओं द्वारा संदर्भित किया जाता है? यदि दोनों उत्तर "हां" हैं, तो संभवतः आपको पूर्णांक कुंजी जोड़नी चाहिए।

यदि दिनांक मानों की गारंटी अद्वितीय है, और परिवर्तित नहीं होते हैं या संदर्भित नहीं हैं, तो आप उन्हें कुंजी के लिए उपयोग कर सकते हैं। नियमित DATETIME 8 बाइट्स हैं और मानक INTEGER मान 4 बाइट्स हैं जिनका अनुक्रमण पर मामूली प्रभाव पड़ सकता है। यदि आपके दिनांक मान केवल दिनांक हैं, या केवल मिनट या उससे कम के लिए सटीक हैं, और प्रकार द्वारा अनुमत अधिक प्रतिबंधित सीमा में हैं, तो आप SMALLDATETIME का उपयोग कर सकते हैं और उन अनुक्रमणिका मानों को 4 बाइट्स तक कम कर सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. फ़ोल्डर में फ़ाइल आने पर एसएसआईएस पैकेज कैसे निष्पादित करें

  2. SQL सर्वर 2005/2008:Transact-SQL में एक varbinary(max) कॉलम में एक फ़ाइल डालें

  3. sql-server से दूसरे डेटा रिपॉजिटरी में रीयल-टाइम यूनिडायरेक्शनल सिंक्रोनाइज़ेशन

  4. क्वेरी जो मात्रा के आधार पर रिकॉर्ड की नकल करेगी

  5. SQL सर्वर में एक वर्ग की गणना कैसे करें