【问题标题】:Mysql Add a new value to a column of data type enumMysql 给数据类型为 enum 的列添加新值
【发布时间】:2012-04-06 17:50:51
【问题描述】:

假设我有一个 mysql 表,并且我有一个 enum 类型的列,并且该列定义了一组值,例如 enum('a','b','c','d')

如何使用 alter table 语句将 'e' 的值添加到该集合中?

我想使用CONCAT 将新值附加到它的末尾。

【问题讨论】:

    标签: mysql ddl


    【解决方案1】:

    很遗憾,在向枚举添加新值时,您需要重新列出所有现有枚举值。

    ALTER TABLE mytable MODIFY COLUMN mycolumn ENUM('a','b','c','d','e');
    

    你真的不想在这种情况下使用CONCAT()

    【讨论】:

      【解决方案2】:

      如果您想添加默认值并且还想在特定列之后进行枚举,请尝试以下查询:

      Alter table `your_table` 
      Add column `visible_on` enum('web','mobile','both') default 'both' 
      After `your_column`;
      

      【讨论】:

      • 这与问题有什么关系?
      • 感谢您提供此代码 sn-p,它可能会提供一些有限的短期帮助。一个正确的解释would greatly improve 它的长期价值通过展示为什么这是一个很好的解决问题的方法,并将使它对未来有其他类似问题的读者更有用。请edit您的回答添加一些解释,包括您所做的假设。
      猜你喜欢
      • 2010-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-02
      • 1970-01-01
      • 2019-01-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多