"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > MySQL बड़े पूर्णांकों को छोटे स्तंभों में क्यों परिवर्तित करता है?

MySQL बड़े पूर्णांकों को छोटे स्तंभों में क्यों परिवर्तित करता है?

2024-11-13 को प्रकाशित
ब्राउज़ करें:702

Why does MySQL transform large integers inserted into shorter columns?

MySQL में संख्यात्मक कॉलम परिवर्तन को समझना

छोटे कॉलम में डालने पर MySQL अक्सर लंबे पूर्णांकों को अप्रत्याशित मानों में बदल देता है। काट-छाँट करने के बजाय, MySQL संग्रहीत मूल्य को समायोजित करता है। इस व्यवहार को पूर्णांक अतिप्रवाह तंत्र के लिए जिम्मेदार ठहराया गया है।

अतिप्रवाह तंत्र

MySQL दस्तावेज़ के अनुसार, पूर्णांक अतिप्रवाह तब होता है जब गणना का परिणाम डेटा प्रकार के लिए अधिकतम अनुमत मान से अधिक हो जाता है। इस मामले में, 10-बिट पूर्णांक के लिए अधिकतम मान 2147483647 है। ]परिणाम = संख्या % (2^बिट्स) - 1

जहां:

नंबर डाला जा रहा मूल नंबर है

बिट्स गंतव्य कॉलम में बिट्स की संख्या है

Result = Number % (2^Bits) - 1

2147483647

  • BigInt बनाम Int
  • पूर्णांक अतिप्रवाह से बचने के लिए, बड़े पूर्णांकों के लिए bigint डेटा प्रकार का उपयोग करें। BigInt 2^63-1 तक मान संग्रहीत कर सकता है, जिससे कटौती या परिवर्तन संबंधी समस्याओं को रोका जा सकता है।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3