MySQL BOOL और BOOLEAN कॉलम डेटा प्रकारों में क्या अंतर है?


88

मैं MySQL संस्करण 5.1.49-1ubuntu8.1 का उपयोग कर रहा हूं। यह मुझे दो अलग-अलग डेटा प्रकारों के कॉलम को परिभाषित करने की अनुमति देता है: BOOLऔर BOOLEAN। दोनों प्रकारों के बीच अंतर क्या हैं?

जवाबों:


136

वे दोनों टिनिनेट (1) के लिए समानार्थक शब्द हैं ।


11
आदम क्या कहता है। MySQL में कोई वास्तविक BOOLEAN प्रकार नहीं है।
मचल

25

जैसा कि अन्य टिप्पणियों में स्थापित किया गया है, वे TINYINT (1) के लिए समानार्थी हैं।

* तो, क्यों वे बूल, बूलियन, छोटे * int (1) के बीच अंतर करना परेशान करते हैं ?

अधिकतर शब्दार्थ।

बूल और बूलियन: MySQL डिफ़ॉल्ट इनको छोटे प्रकार में परिवर्तित करता है। इस लेखन के समय के आसपास किए गए एक MySQL स्टेटमेंट के अनुसार, "हम भविष्य के MySQL रिलीज़ में, मानक SQL के अनुसार, पूर्ण बूलियन टाइप हैंडलिंग को लागू करने का इरादा रखते हैं।"

0 = FALSE 1 = TRUE

TINYINT: एक बाइट पर कब्जा करता है; -128 से +127 तक; या, 0 - 256।


आमतौर पर इस तुलना में लाया जाता है: MySQL 5.0.3 के बाद - बिट: 8 बाइट्स का उपयोग करता है और केवल बाइनरी डेटा संग्रहीत करता है।


2
यह वास्तव में इस सवाल का जवाब नहीं है। बीच क्या अंतर है BOOLऔर BOOLEAN?
रात

7
पहले के पोस्ट पहले ही स्थापित कर चुके थे कि दोनों टिनिट (1) का पर्याय हैं। आदर्श रूप से, अगला प्रश्न "क्यों, फिर, क्या उन्होंने डेटा प्रकारों के बीच अंतर किया?"
छठी से

3
@Sixthfore Bit: Uses 8 bytes and stores only binary data.गलत जानकारी है। जब आप अपनी तालिका में थोड़ा कॉलम जोड़ते हैं तो यह केवल एक बिट नहीं, बल्कि प्रत्येक रिकॉर्ड में एक पूरी बाइट पर कब्जा कर लेगा। जब आप दूसरा बिट कॉलम जोड़ते हैं तो इसे उसी बाइट में संग्रहीत किया जाएगा। नौवें बिट कॉलम को भंडारण के दूसरे बाइट की आवश्यकता होगी।
Kolunya

4

एक बात जो मैंने अभी देखी है - MySql में BOOL के रूप में परिभाषित कॉलम के साथ, स्प्रिंग रूओ सही ढंग से जावा कोड को एक बूलियन के लिए अनमर्सहॉल उत्पन्न करता है, इसलिए संभवतः निर्दिष्ट BOOL कुछ मूल्य जोड़ सकता है, भले ही केवल एक संकेत की प्रकृति में हो। स्तंभ का इच्छित उपयोग।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.