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

MySQL को UTF-8 को ठीक से कैसे हैंडल करें

अपडेट करें:

संक्षिप्त उत्तर - आपको लगभग हमेशा utf8mb4 . का उपयोग करना चाहिए चारसेट और utf8mb4_unicode_ci मिलान।

डेटाबेस बदलने के लिए:

ALTER DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

देखें:

मूल उत्तर:

MySQL 4.1 और इसके बाद के संस्करण में UTF-8 का डिफ़ॉल्ट वर्ण सेट है। आप इसे अपने my.cnf . में सत्यापित कर सकते हैं फ़ाइल, दोनों सेट करना याद रखें क्लाइंट और सर्वर (default-character-set और character-set-server )।

यदि आपके पास मौजूदा डेटा है जिसे आप UTF-8 में बदलना चाहते हैं, तो अपने डेटाबेस को डंप करें, और सुनिश्चित करें कि इसे UTF-8 के रूप में वापस आयात करें:

  • SET NAMES utf8 का उपयोग करें डेटाबेस में क्वेरी/सम्मिलित करने से पहले
  • DEFAULT CHARSET=utf8 का उपयोग करें नई तालिकाएँ बनाते समय
  • इस समय आपका MySQL क्लाइंट और सर्वर UTF-8 में होना चाहिए (देखें my.cnf ) याद रखें कि आपके द्वारा उपयोग की जाने वाली कोई भी भाषा (जैसे PHP) UTF-8 भी होनी चाहिए। PHP के कुछ संस्करण अपने स्वयं के MySQL क्लाइंट लाइब्रेरी का उपयोग करेंगे, जो UTF-8 से अवगत नहीं हो सकते हैं।

यदि आप मौजूदा डेटा को माइग्रेट करना चाहते हैं तो पहले बैकअप लेना याद रखें! जब चीजें योजना के अनुसार नहीं होती हैं तो बहुत सी अजीब तरह से डेटा काटना हो सकता है!

कुछ संसाधन:



  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 इंसर्ट कमांड बनाम टी-एसक्यूएल क्वेरी सिंटैक्स उदाहरणों के साथ

  2. वर्डप्रेस ब्लॉग चलाने के लिए PHP-MySQL लगातार कनेक्शन का उपयोग करना

  3. MySQL में प्रकार:BigInt(20) बनाम Int(20)

  4. प्रॉक्सीएसक्यूएल-व्यवस्थापक विकल्प - क्लस्टरकंट्रोल प्रॉक्सीएसक्यूएल जीयूआई

  5. MySQL में DATETIME को DATE के रूप में कैसे डाला जाए?