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

प्राथमिक कुंजी के लिए SQL सर्वर BIGINT या DECIMAL(18,0)

आपको यह श्रेणी bigint के साथ मिलती है:

-2^63 to 2^63-1 

also known as roughly:

-9.2 x 10^18 to 9.2 x 10^18

आपको यह श्रेणी दशमलव(18,0) के साथ मिलती है :

-10^18 to 10^18

दशमलव:भंडारण बाइट्स प्रति परिशुद्धता

Precision    Storage Bytes
1-9:         5
10-19:       9
20-28:       13
29-38:       17

पूर्णांक प्रकार और संग्रहण बाइट्स

integer type    Storage Bytes
bigint          8
int             4
smallint        2
tinyint         1

विचार

आपके प्रश्न में पोस्ट किए गए दो उदाहरण वास्तव में समान मात्रा में अद्वितीय मान उत्पन्न करते हैं।

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

अपनी विशिष्ट समस्या का समाधान करने के लिए, यदि आप एक बड़ी श्रेणी चाहते हैं, तो दशमलव (38,0) का उपयोग करें। यह आपको देता है:

-10^38 to 10^38

यदि आप गति के बारे में चिंतित हैं, तो न्यूनतम सटीकता का उपयोग करें जो आपके सॉफ़्टवेयर के जीवनकाल तक चलेगा।

यदि आप नैनो-सेकंड में समय नहीं माप रहे हैं, तो वह विकल्प चुनें जो आपके प्रोग्रामर की मानसिकता और संख्याओं का एक बहुत लंबा सेट रखने की आपकी इच्छा के लिए सबसे उपयुक्त हो।

संदर्भ



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 30 दिनों से डेटा कैसे चुनें?

  2. उच्चतम भुगतान वाली कर्मचारी पंक्ति कैसे प्राप्त करें

  3. SQL मूल क्लाइंट (Windows 7 - IIS7) का उपयोग करके क्लासिक ASP से SQL Server 2008 R2 से कनेक्ट नहीं हो सकता

  4. एक सीटीई को दो बार कैसे संदर्भित करें?

  5. SQL सर्वर 2008 दिनांक के लिए सबसोनिक 2.2 जेनरेट की गई संपत्ति