【发布时间】:2013-06-17 18:18:29
【问题描述】:
我对这种情况的最佳做法有疑问: 我有一个 mysql 表,其中包含(除了其他列)两列都是 TINYINT(1) 但它们不能都在 0 上,它们可以是 0 和 1、1 和 0、1 和 1 但没有 0 和0。 控制这种情况的最佳方法是什么?甚至是一种控制它的方法?
编辑:我想我会选择 ENUM 选项,但是如果我将 mysql 与 Entity Framework 结合起来,这将如何执行?
【问题讨论】:
-
这很难。列有什么用?了解它们的实际用途可能有助于人们提出解决方案。
-
这些列用于系统交付配置,值是 is_physical_delivery,另一个是 is_digital_delivery,因此可以是一个、另一个或两者
-
那么我可能会同意在一个名为
delivery_configuration的单个列中建议包含可能值的枚举的答案。 :) -
对于这种情况,我同意......像这样:
ALTER table ADD delivery ENUM('physical', 'digital', 'both') NOT NULL会准确地描述数据。 -
你最终选择了
SET还是ENUM?