Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

แปลงผลลัพธ์คำสั่ง MySQL เป็น UTF-8


ใช้ฟังก์ชัน CAST() หรือ CONVERT() เพื่อแปลงผลลัพธ์คำสั่ง MySQL เป็น UTF-8 ใช้ MySQL 8.0.12

mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.12    | +-----------+ 1 row in set (0.00 sec)

หมายเหตุ: ควรใช้ utf8mb4 แทน utf8 เพื่อหลีกเลี่ยงคำเตือน เนื่องจาก utf8 ใน MySQL เป็น alias ของ utf8mb3

รูปแบบไวยากรณ์

SELECT yourColumnName1, CONVERT(yourColumnName2 USING utf8mb4) AS anyVariableName FROM yourTableName;

หรือรูปแบบอื่น:

SELECT yourColumnName1, CONVERT(CAST(yourColumnName2 AS BINARY) USING utf8mb4) AS anyVariableName FROM yourTableName;

ตัวอย่างการใช้งาน

สร้างตาราง:

mysql> create table ConvertOutputtoUtf8Demo ( Id int NOT NULL AUTO_INCREMENT, Name varchar(20), Age int, PRIMARY KEY(Id) ); Query OK, 0 rows affected (0.79 sec)

เพิ่มข้อมูล:

mysql> insert into ConvertOutputtoUtf8Demo(Name,Age) values('John',24); Query OK, 1 row affected (0.78 sec)
mysql> insert into ConvertOutputtoUtf8Demo(Name,Age) values('Larry',21); Query OK, 1 row affected (0.15 sec)
mysql> insert into ConvertOutputtoUtf8Demo(Name,Age) values('Carol',26); Query OK, 1 row affected (0.12 sec)
mysql> insert into ConvertOutputtoUtf8Demo(Name,Age) values('Mike',27); Query OK, 1 row affected (0.18 sec)
mysql> insert into ConvertOutputtoUtf8Demo(Name,Age) values('Sam',22); Query OK, 1 row affected (0.15 sec)

คำสั่งแปลงเป็น UTF-8:

mysql> SELECT Id, CONVERT(Name USING utf8mb4) AS ConvertToUtf8 FROM ConvertOutputtoUtf8Demo;

ผลลัพธ์:

+----+---------------+ | Id | ConvertToUtf8 | +----+---------------+ | 1  | John          | | 2  | Larry         | | 3  | Carol         | | 4  | Mike          | | 5  | Sam           | +----+---------------+ 5 rows in set, 1 warning (0.00 sec)