Enum trong PostgreSQL giới hạn một cột chỉ nhận một tập giá trị cố định và làm schema tự mô tả (nhìn là biết có những trạng thái nào). Hợp với tập trạng thái ổn định, ít đổi như order status. Nhưng enum khó "tiến hóa" hơn bảng tra cứu (lookup table): thêm/sửa/sắp xếp giá trị, gắn metadata, đa ngôn ngữ hay đánh dấu ngừng dùng đều vướng.
Quy tắc thực tế: dùng enum cho tập nhỏ, ổn định, không cần metadata kèm theo. Dùng bảng lookup/reference khi giá trị do nghiệp vụ quản lý hoặc có thuộc tính riêng (nhãn hiển thị, thứ tự, mô tả...).