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

utf-8 बनाम latin1

UTF8 लाभ:

  1. आरटीएल भाषाओं जैसे हिब्रू सहित अधिकांश भाषाओं का समर्थन करता है।

  2. UTF8 जागरूक घटकों (JavaScript, Java, आदि) में डेटा आयात/निर्यात करते समय किसी अनुवाद की आवश्यकता नहीं है।

UTF8 के नुकसान:

  1. गैर-ASCII वर्णों को उनकी अधिक जटिल एन्कोडिंग योजना के कारण एन्कोड और डिकोड करने में अधिक समय लगेगा।

  2. गैर-ASCII वर्ण अधिक स्थान लेंगे क्योंकि उन्हें 1 बाइट से अधिक का उपयोग करके संग्रहीत किया जा सकता है (वर्ण ASCII वर्णों के पहले 127 वर्णों में नहीं हैं)। एक CHAR(10) या VARCHAR(10) कुछ UTF8 वर्णों को संग्रहीत करने के लिए फ़ील्ड को 30 बाइट्स तक की आवश्यकता हो सकती है।

  3. utf8_bin . के अलावा अन्य कोलाजंस धीमा हो जाएगा क्योंकि सॉर्ट ऑर्डर सीधे वर्ण एन्कोडिंग ऑर्डर पर मैप नहीं करेगा), और कुछ संग्रहीत प्रक्रियाओं में अनुवाद की आवश्यकता होगी (जैसा कि वैरिएबल डिफ़ॉल्ट रूप से utf8_general_ci है। संयोजन)।

  4. अगर आपको JOIN . की जरूरत है UTF8 और गैर-UTF8 फ़ील्ड, MySQL एक SEVERE . लगाएगा प्रदर्शन हिट। उप-सेकंड क्वेरी क्या होंगी, इसमें संभावित रूप से मिनट लग सकते हैं यदि जुड़े हुए फ़ील्ड अलग-अलग वर्ण सेट/संयोजन हैं।

निचला रेखा:

यदि आपको गैर-लैटिन1 भाषाओं का समर्थन करने की आवश्यकता नहीं है, अधिकतम प्रदर्शन प्राप्त करना चाहते हैं, या पहले से ही latin1 का उपयोग करने वाली तालिकाएं हैं , चुनें latin1

अन्यथा, UTF8 choose चुनें ।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या MySQL का टाइमज़ोन UTC पर सेट होना चाहिए?

  2. एक MySQL रेगेक्स में समूहों का संदर्भ?

  3. तालिका बनाएं यदि मौजूद नहीं है तो तालिका पहले से मौजूद होने के साथ विफल हो जाती है

  4. पीडीओ कॉलम नाम के रूप में कुंजी का उपयोग करके सरणी डालें

  5. Mysql के लिए अक्षांश/देशांतर भौगोलिक खोज को अनुकूलित करने में सहायता चाहिए