MySQL JDBC ड्राइवर डॉक्यूमेंटेशन आपको JDBC कनेक्शन URL में भी वर्ण एन्कोडिंग सेट करने की आवश्यकता है। यहां एक उदाहरण दिया गया है:
jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8
अन्यथा MySQL JDBC ड्राइवर नेटवर्क पर भेजने से पहले वर्णों को बाइट्स में बदलने के लिए प्लेटफ़ॉर्म डिफ़ॉल्ट एन्कोडिंग का उपयोग करेगा, जो आपके मामले में स्पष्ट रूप से UTF-8 नहीं है। फिर सभी खुले वर्णों को प्रश्नवाचक चिह्नों से बदल दिया जाएगा।
साथ ही, डेटा पुनर्प्राप्त करते समय, आपको यह सुनिश्चित करने की आवश्यकता है कि कंसोल/फ़ाइल जहां आप वर्ण प्रदर्शित/लिख रहे हैं, यूटीएफ -8 का भी समर्थन/उपयोग करता है। नहीं तो वे भी प्रश्नचिह्न बन जाएंगे। इसे कैसे ठीक किया जाए यह इस बात पर निर्भर करता है कि आप उन पात्रों को कैसे/कहां प्रदर्शित कर रहे हैं/लिख रहे हैं।
यह भी देखें:
वैसे, आपको SET NAMES
. की आवश्यकता नहीं है यहां क्वेरी करें।