এই উত্তরগুলির কোনওোটাই আমার পক্ষে কাজ করেনি। ইউটিএফ 8 এ রূপান্তর করার সময়, যখন এনকোডারটি বাইটের একটি সেটের মুখোমুখি হয় তখন এটি ইউটিএফ 8 তে রূপান্তর করতে পারে না যার ফলস্বরূপ? প্রতিস্থাপনের ফলে ডেটা ক্ষতি হয়। আপনাকে ইউটিএফ 16 ব্যবহার করতে হবে:
SELECT
blobfield,
CONVERT(blobfield USING utf16),
CONVERT(CONVERT(blobfield USING utf16), BINARY),
CAST(blobfield AS CHAR(10000) CHARACTER SET utf16),
CAST(CAST(blobfield AS CHAR(10000) CHARACTER SET utf16) AS BINARY)
আপনি মাইএসকিউএল ওয়ার্কবেঞ্চে বাইনারি মানগুলি পরিদর্শন করতে পারেন। ক্ষেত্রটিতে ডান ক্লিক করুন -> দর্শকের-> বাইনারিতে মান খুলুন। যখন BINARY এ আবার রূপান্তরিত হয় তখন বাইনারি মানগুলি মূল হিসাবে একই হওয়া উচিত।
বিকল্পভাবে, আপনি কেবল বেস -৪৪ ব্যবহার করতে পারেন যা এই উদ্দেশ্যে তৈরি হয়েছিল:
SELECT
blobfield,
TO_BASE64(blobfield),
FROM_BASE64(TO_BASE64(blobfield))
SELECT CONVERT(column USING utf8) FROM table;