ในการระบุแอตทริบิวต์ไบนารีของ CHARACTER SET สำหรับประเภทข้อมูลสตริงอักขระ MySQL จะสร้างคอลัมน์นั้นเป็นประเภทสตริงไบนารีที่ตามมา การแปลงประเภทข้อมูล CHAR, VARCHAR และ BLOB เกิดขึ้นดังนี้ -
- CHAR จะกลายเป็นไบนารี
- VARCHAR จะกลายเป็น VARBINARY
- TEXT จะกลายเป็น BLOB
การแปลงประเภทข้างต้นจะไม่เกิดขึ้นสำหรับประเภทข้อมูล ENUM และ SET และทั้งคู่จะถูกสร้างขึ้นตามที่ประกาศไว้ขณะสร้างตาราง
ตัวอย่าง
ในตัวอย่างด้านล่าง เราได้สร้างตารางชื่อ 'EMP' โดยมีสี่คอลัมน์ทั้งหมดที่ระบุเป็นไบนารีของ CHARACTER SET ดังนี้ -
mysql> Create table Emp(Name varchar(10) CHARACTER SET binary, Address CHAR(10)CHARACTER SET binary, Designation TEXT CHARACTER SET binary, Field ENUM('ENG','SS') CHARACTER SET binary);
Query OK, 0 rows affected (0.16 sec) แต่ตอนนี้ ในการตรวจสอบสถานะของตาราง ด้วยความช่วยเหลือของแบบสอบถามด้านล่าง เราจะเห็นว่า MySQL ได้เปลี่ยนประเภทข้อมูลตามสตริงไบนารีที่ตามมา
mysql> Show Create Table EMP\G
*************************** 1. row ***************************
Table: EMP
Create Table: CREATE TABLE `emp` (
`Name` varbinary(10) DEFAULT NULL,
`Address` binary(10) DEFAULT NULL,
`Designation` blob,
`Field` enum('ENG','SS') CHARACTER SET binary DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)