MySQL INSERT करते समय स्ट्रिंग्स को कन्वर्ट करना चाहता है और SELECT . रूपांतरण आपके द्वारा घोषित क्लाइंट . के बीच है स्तंभ भंडारण घोषित किया गया है।
इससे बचने का एक ही तरीका है VARBINARY और BLOB VARCHAR . के बजाय और TEXT ।
COLLATION utf8mb4_bin . का उपयोग CHARACTER SET utf8mb4 . में/से रूपांतरण को टालता नहीं है; यह केवल इतना कहता है कि WHERE और ORDER BY एक्सेंट और केस फोल्डिंग से निपटने के बजाय बिट्स की तुलना करनी चाहिए।
ध्यान रखें कि CHARACTER SET utf8mb4 पाठ को एन्कोड करने का एक तरीका है; COLLATION utf8mb4_* उस एन्कोडिंग में ग्रंथों की तुलना करने के लिए नियम है। _bin सरल विचारों वाला है।
UNIQUE समानता के लिए तुलना करना शामिल है, इसलिए COLLATION . अधिकांश utf8mb4 कॉलेशन में, 3 (रिक्त स्थान के बिना) बराबर की तुलना करेंगे। utf8mb4_bin 3 को अलग मानेंगे। utf8mb4_hungarian_ci एक का इलाज करता है =एक> एक।
पिछली जगहों को कॉलम के डेटाटाइप द्वारा नियंत्रित किया जाता है (VARCHAR या अन्य)। नवीनतम संस्करण में पिछली जगहों पर विचार करने से संबंधित एक सेटिंग भी है।