Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

MySQL VARCHAR अधिकतम आकार क्या है?


5.0.3 से पहले का MySQL संस्करण 255 वर्णों को संग्रहीत करने में सक्षम था, लेकिन संस्करण 5.0.3 से, यह 65,535 वर्णों को संग्रहीत करने में सक्षम है।

MySQL आधिकारिक दस्तावेज बताता है -

MySQL 5.0.3 और बाद में VARCHAR की प्रभावी अधिकतम लंबाई अधिकतम पंक्ति आकार (65,535 बाइट्स, जो सभी स्तंभों के बीच साझा की जाती है) और उपयोग किए गए वर्ण सेट के अधीन है। उदाहरण के लिए, utf8 वर्णों को प्रति वर्ण तीन बाइट्स की आवश्यकता हो सकती है, इसलिए utf8 वर्ण सेट का उपयोग करने वाले VARCHAR कॉलम को अधिकतम 21,844 वर्ण घोषित किया जा सकता है।

ध्यान रखें कि अधिकतम पंक्ति आकार की सीमा 65,535 बाइट्स है। यह बताता है कि सभी स्तंभों सहित यह 65,535 बाइट्स से अधिक नहीं होना चाहिए।

आइए देखें कि इसका उल्लंघन होने पर क्या होता है -

यहां दो स्तंभों वाली एक तालिका है, "एक" वर्चर जिसकी लंबाई 32,765 है और "दो" 32766 है।

लंबाई =32765+2 + 32766 + 2 =65535।

CREATE TABLE IF NOT EXISTS `mytable` (
`one` varchar(32765) NOT NULL,
`two` varchar(32766) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

अब हम कॉलम की लंबाई बढ़ाते हैं -

CREATE TABLE IF NOT EXISTS `mytable` (
`one` varchar(32767) NOT NULL,
`two` varchar(32770) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

ऊपर निम्न त्रुटि देता है -

#1118 - Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs

उपरोक्त में ही कहा गया है कि -

The maximum row size is 65,535 bytes. If it exceeds, an error will be visible.

  1. MySQL में एक varchar फ़ील्ड से अधिकतम मान प्राप्त करना

    इसके लिए SUBSTRING() के साथ MAX() फ़ंक्शन का उपयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.52 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (2019-0517-2780); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) चयन कथन का उपयोग करके

  1. क्या MySQL में वर्चर फ़ील्ड के आकार को विस्तारित करने से इसके अंदर के डेटा पर असर पड़ेगा?

    यदि आप MySQL में एक varchar फ़ील्ड का आकार बढ़ाएंगे तो यह उसके अंदर के डेटा को प्रभावित नहीं करेगा। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable(Name varchar(8));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.11 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (सैम);

  1. पायथन में सूची का अधिकतम आकार क्या है?

    सूची की अधिकतम लंबाई प्लेटफॉर्म पर निर्भर है और पता स्थान और/या रैम पर निर्भर करती है। sys मॉड्यूल में परिभाषित अधिकतम आकार स्थिरांक 64 बिट सिस्टम पर 263-1 लौटाता है। >>> import sys >>> sys.maxsize 9223372036854775807 प्लेटफ़ॉर्म के Py_ssize_t प्रकार द्वारा समर्थित सबसे बड़ा