คำสั่ง
ALTER TABLE yourTableName CONVERT TO CHARACTER SET yourCharsetName;
ตัวอย่าง
สร้างตาราง (Default Charset)
mysql> create table CharsetDemo (Id int, Name varchar(200), Age int);
เปลี่ยน Charset เป็น latin7
mysql> alter table CharsetDemo convert to character set latin7; Query OK, 0 rows affected (1.59 sec)
ตรวจสอบ
mysql> show create table CharsetDemo;
+-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | +-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | CharsetDemo | CREATE TABLE `charsetdemo` (`Id` int(11) DEFAULT NULL, `Name` varchar(200) DEFAULT NULL, `Age` int(11) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=latin7 | +-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
DEFAULT CHARSET=latin7 ยืนยันการเปลี่ยนสำเร็จ
ข้อควรระวัง
CONVERT TO: แปลงข้อมูลเดิมให้เข้ากับ Charset ใหม่ (อาจใช้เวลานานถ้าข้อมูลเยอะ)DEFAULT CHARACTER SET(ไม่มี CONVERT TO): เปลี่ยน Default สำหรับคอลัมน์ใหม่เท่านั้น ข้อมูลเก่าไม่เปลี่ยน- แนะนำใช้ utf8mb4 แทน latin7/utf8 เพื่อรองรับ Unicode เต็มรูปแบบ