Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Giá trị ENUM trong MySQL có thể chứa khoảng trắng không?

CÓ. MySQL cho phép các giá trị trong kiểu ENUM chứa khoảng trắng (space). Khi định nghĩa cột ENUM, bạn chỉ cần đặt các giá trị trong dấu nháy đơn, bao gồm cả khoảng trắng bên trong.

Tạo bảng với ENUM chứa khoảng trắng

mysql> CREATE TABLE DemoTable (
    Size ENUM('SMALL SIZE', 'LARGE SIZE', 'XL SIZE')
);

Kiểm tra cấu trúc bảng

mysql> DESC DemoTable;
+-------+-------------------------------------------+------+-----+---------+-------+
| Field | Type                                      | Null | Key | Default | Extra |
+-------+-------------------------------------------+------+-----+---------+-------+
| Size  | enum('SMALL SIZE','LARGE SIZE','XL SIZE') | YES  |     | NULL    |       |
+-------+-------------------------------------------+------+-----+---------+-------+

Chèn và truy xuất dữ liệu

mysql> INSERT INTO DemoTable VALUES ('XL SIZE');
mysql> SELECT * FROM DemoTable;
+---------+
| Size    |
+---------+
| XL SIZE |
+---------+

Lưu ý quan trọng:

  • Khi chèn hoặc so sánh, giá trị phải khớp chính xác bao gồm cả khoảng trắng và chữ hoa/thường (tùy collation).
  • Khoảng trắng ở đầu/cuối chuỗi trong định nghĩa ENUM sẽ bị loại bỏ tự động bởi MySQL. Ví dụ: ENUM(' SMALL ', 'LARGE ') sẽ lưu thành 'SMALL', 'LARGE'.
  • Nên tránh dùng khoảng trắng trong giá trị ENUM để giảm rủi ro lỗi so sánh, thay vào đó dùng dấu gạch dưới (SMALL_SIZE) hoặc viết liền (SMALLSIZE).