Type enum trong mysql là gì?

Post on: 2023-04-03 23:38:11 | in: 10 vạn câu hỏi vì sao
Trong MySQL, ENUM là một kiểu dữ liệu cơ sở dữ liệu được sử dụng để giới hạn giá trị có thể được lưu trữ trong một cột.

Các giá trị được liệt kê và chỉ định khi tạo bảng, và các giá trị được lưu trữ trong cột phải là một trong các giá trị đã chỉ định.

Để tạo một cột ENUM trong MySQL, bạn có thể sử dụng câu lệnh CREATE TABLE như sau:

CREATE TABLE example_table (
    id INT NOT NULL AUTO_INCREMENT,
    name VARCHAR(50),
    status ENUM('active', 'inactive', 'pending'),
    PRIMARY KEY (id)
);

Trong ví dụ này, chúng ta đã tạo một bảng gồm ba cột: id, name, và status. Cột status được định nghĩa là kiểu ENUM với ba giá trị có thể có: active, inactive, và pending.

Khi bạn chèn dữ liệu vào bảng này, bạn chỉ có thể sử dụng một trong ba giá trị đã được định nghĩa trong ENUM cho cột status. Nếu bạn cố gắng chèn một giá trị khác, bạn sẽ gặp lỗi. Ví dụ:

INSERT INTO example_table (name, status) VALUES ('John', 'active');  -- hợp lệ
INSERT INTO example_table (name, status) VALUES ('Jane', 'invalid'); -- lỗi

Lưu ý rằng khi sử dụng ENUM, bạn cần phải cân nhắc kỹ lưỡng về các giá trị mà bạn định nghĩa cho nó, vì nếu cần thay đổi danh sách giá trị này thì bạn sẽ cần phải thay đổi cấu trúc bảng, điều này có thể gây ra một số vấn đề cho các ứng dụng của bạn.

Tag: mysql