MySQL参考手册没有提供一个明确的例子来说明如何做到这一点.

我有一个国家名称的枚举类型列,需要添加更多国家.实现这一点的正确MySQL语法是什么?

以下是我的try :

ALTER TABLE carmake CHANGE country country ENUM('Sweden','Malaysia');

我得到的错误是:ERROR 1265 (01000): Data truncated for column 'country' at row 1.

country列是上述语句中的枚举类型列.

显示创建表格输出:

mysql> SHOW CREATE TABLE carmake;
+---------+---------------------------------------------------------------------+
| Table   | Create Table
+---------+---------------------------------------------------------------------+
| carmake | CREATE TABLE `carmake` (
`carmake_id` tinyint(4) NOT NULL AUTO_INCREMENT,
`name` tinytext,
`country` enum('Japan','USA','England','Australia','Germany','France','Italy','Spain','Czech Republic','China','South Korea','India') DEFAULT NULL,
PRIMARY KEY (`carmake_id`),
KEY `name` (`name`(3))
) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=latin1 |
+---------+---------------------------------------------------------------------+
1 row in set (0.00 sec)

从carmake输出中 Select 不同的国家:

+----------------+
| country        |
+----------------+
| Italy          |
| Germany        |
| England        |
| USA            |
| France         |
| South Korea    |
| NULL           |
| Australia      |
| Spain          |
| Czech Republic |
+----------------+

推荐答案

ALTER TABLE
    `table_name`
MODIFY COLUMN
    `column_name2` enum(
        'existing_value1',
        'existing_value2',
        'new_value1',
        'new_value2'
    )
NOT NULL AFTER `column_name1`;

Mysql相关问答推荐

SQL计算不同的列并返回所有行

MySQL:统计单词在单元格中出现的次数,并将数字放在bra中单词的旁边

按相关表中的计数和特定值过滤

仅当 SELECT 语句在 MySQL 中给出空集时才执行 UPDATE 语句

MySQL Procedure 变量在 count(*) 上接收 null

多个 FULLTEXT 索引上的 MySQL SELECT.结果极其缓慢

使用来自另一个表 mysql 的值将新行插入到表中

MySQL 使用了错误的索引

JOOQ:如何将 POJO 列序列化为 JSON

MySQL如何通过外键ID Select 多行?

为什么从我的 SQL 查询中删除 BINARY 函数调用会如此显着地改变查询计划?

SUBSTRING_INDEX 获取第 n 个值

如何在mysql select查询中获取两个日期之间的日期列表

将 mySQL 查询作为 cron 作业(job)运行?

utf8mb4_unicode_ci 与 utf8mb4_bin

MySQL Partitioning / Sharding / Splitting - 走哪条路?

#1030 - 从存储引擎 Aria 收到错误 176读取错误校验和的页面

如何将数组存储到mysql中?

你能推荐一个免费的 Linux 轻量级 MySQL GUI 吗?

如何将本地托管的 MySQL 数据库与 docker 容器连接