VARCHAR 作为替代方案

假设我们有

type ENUM('fish','mammal','bird')

另一种选择是

type VARCHAR(20)  COMENT "fish, bird, etc"

这是非常开放的,因为新的类型被简单地添加。

比较,无论是好于还是差于 ENUM:

  • (相同)INSERT:只提供字符串
  • (更糟糕?)在 INSERT 上,一个错字将被忽视
  • (相同)SELECT:返回实际的字符串
  • (更糟糕的是)消耗了更多的空间