आप sql क्वेरी में रनटाइम पर कॉलेशन बदल सकते हैं,
...where title like '%torun%' collate utf8_general_ci
लेकिन सावधान रहें कि रनटाइम पर फ्लाई पर कॉलेशन बदलने से इंडेक्स का उपयोग करके MySQL की संभावना समाप्त हो जाती है, इसलिए बड़ी टेबल पर प्रदर्शन भयानक हो सकता है।
या, आप कॉलम को दूसरे कॉलम में कॉपी कर सकते हैं, जैसे searchable_title
, लेकिन उस पर संयोजन बदलें। इस प्रकार की चीजें करना वास्तव में आम है, जहां आप डेटा कॉपी करते हैं लेकिन इसे कुछ अलग रूप में रखते हैं जो कुछ विशिष्ट कार्यभार/उद्देश्य के लिए अनुकूलित होता है। डुप्लिकेट किए गए कॉलम को सिंक में रखने के लिए आप ट्रिगर्स को एक अच्छे तरीके के रूप में उपयोग कर सकते हैं। अनुक्रमित होने पर इस पद्धति में अच्छा प्रदर्शन करने की क्षमता है।
नोट - सुनिश्चित करें कि आपके डीबी में वास्तव में वे वर्ण हैं और एचटीएमएल इकाइयां नहीं हैं। साथ ही, आपके कनेक्शन का वर्ण सेट मायने रखता है। उपरोक्त मानता है कि यह utf8 पर सेट है, उदाहरण के लिए, set के माध्यम से नाम
जैसे set names utf8
यदि नहीं, तो आपको एक परिचयकर्ता की आवश्यकता है शाब्दिक मूल्य के लिए
...where title like _utf8'%torun%' collate utf8_general_ci
और निश्चित रूप से, सिंगल कोट्स में मान वास्तव में utf8 एन्कोडेड होना चाहिए, भले ही शेष sql क्वेरी न हो।