SQL सर्वर के लिए:BIT
. प्रकार के 8 कॉलम तक एक बाइट के अंदर संग्रहीत किया जा सकता है, जबकि प्रत्येक कॉलम प्रकार का CHAR(1)
एक बाइट लेगा।
दूसरी ओर:एक BIT
कॉलम में दो मान हो सकते हैं (0 =असत्य, 1 =सत्य) या बिल्कुल भी कोई मान नहीं (NULL) - जबकि एक CHAR(1)
कोई भी वर्ण मान हो सकता है (बहुत अधिक संभावनाएं)
तो वास्तव में, यह नीचे आता है:
- क्या आपको सच/गलत (हां/नहीं) फ़ील्ड की वाकई ज़रूरत है? अगर ऐसा है:
BIT
. का इस्तेमाल करें - क्या आपको केवल दो से अधिक संभावित मानों वाली किसी चीज़ की आवश्यकता है -
CHAR(1)
. का उपयोग करें
मुझे नहीं लगता कि यह प्रदर्शन के दृष्टिकोण से कोई महत्वपूर्ण अंतर डालता है - जब तक कि आपके पास हजारों कॉलम न हों। फिर निश्चित रूप से, BIT
. का उपयोग करके जो एक बाइट में 8 कॉलम तक स्टोर कर सकता है वह फायदेमंद होगा। लेकिन फिर से:आपके "सामान्य" डेटाबेस केस के लिए, जहां आपके पास कुछ कॉलम हैं, उनमें से एक दर्जन कॉलम हैं, इससे वास्तव में कोई फर्क नहीं पड़ता है। कॉलम प्रकार चुनें जो आपकी आवश्यकताओं के अनुरूप हो - प्रदर्शन के बारे में ज़्यादा चिंता न करें.....