例如,我有一个列> shopping_cart.status;并且每列记录的该列状态应包含三个值之一> “不完整”,“完整”或“已发货”。我的问题是,应该是我的应用程序确保这些是唯一使用的值,还是我需要在数据库端将此构建到此属性的域中?
答案 0 :(得分:1)
使用完全符合它们意图的枚举。
ENUM是一个字符串对象,其值从列表中选择 在列中显式枚举的允许值 表创建时的规范。
枚举值必须是带引号的字符串文字;它可能不是一个 表达式,甚至是一个求值为字符串值的表达式。例如, 您可以创建一个包含ENUM列的表,如下所示:
CREATE TABLE shoppingcards (
shoppingcardstatus ENUM('incomplete', 'complete', 'shipped')
);