MySQL-এ ডিফল্ট কোলেশন 몇몇 স্পেশাল ক্যারেক্টার (যেমন রাইট সিংগেল কোটেশন ’) সঠিক দেখাতে পারে না। utf8_unicode_ci বা utf8mb4_unicode_ci কোলেশন ব্যবহার করে সমাধান করা যায়।
টেবিল তৈরি ও কোলেশন সেট:
mysql> CREATE TABLE DemoTable2000 (Name VARCHAR(20)); mysql> ALTER TABLE DemoTable2000 COLLATE='utf8_unicode_ci';
ডেটা ইনসার্ট (রাইট সিংগেল কোটেশন সহ):
mysql> INSERT INTO DemoTable2000 VALUES
('Chris’s Brown'), ('David’s Miller'), ('Robert’s Downey');
আউটপুট:
+-------------------+ | Name | +-------------------+ | Chris’s Brown | | David’s Miller | | Robert’s Downey | +-------------------+
সেরা অভ্যাস
- নতুন ডেটাবেস/টেবিলে
utf8mb4_unicode_ciব্যবহার করুন (ইমোজি ও সাপোর্ট করে)। CREATE DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;- কানেকশন সেটিং-এ
SET NAMES utf8mb4ব্যবহার করুন।
পুরানো utf8 ক্যারেক্টার সেট ৩ বাইট পর্যন্ত সাপোর্ট করে, utf8mb4 ৪ বাইট (ইমোজি, রেয়ার ক্যারেক্টার) সাপোর্ট করে।