डबल-एनकोडेड यूटीएफ8 कैरेक्टर से पुनर्प्राप्त करना
लोड डेटा इन्फाइल का उपयोग करके पहले आयातित डेटा को गलती से लैटिन1 में एन्कोड किया गया मान लिया गया था। नतीजतन, मल्टीबाइट वर्णों को अलग-अलग बाइट्स में विभाजित किया गया और बाद में यूटीएफ 8 में एन्कोड किया गया, जिसके परिणामस्वरूप डबल-एन्कोडिंग हुई। इसके कारण "ñ" के बजाय "ñ" जैसे वर्ण दूषित हो जाते हैं।
इन त्रुटियों को सुधारने के लिए, डबल-एन्कोडिंग के बाद सही UTF8 स्ट्रिंग्स को पुनर्स्थापित करने के लिए एक विशेष MySQL फ़ंक्शन का उपयोग किया जा सकता है:
CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8)
यह फ़ंक्शन हो सकता है प्रभावित फ़ील्ड को सही करने के लिए एक अद्यतन विवरण में एकीकृत किया गया:
UPDATE tablename SET field = CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8);
इस कथन को निष्पादित करके, डेटाबेस चरित्र विसंगतियों को हल करते हुए, डबल-एन्कोडेड मानों को उनके सही UTF8 समकक्षों के साथ बदल देगा।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3