MySQLリファレンスマニュアルには、これを行う方法の明確な例はありません。
国を追加する必要がある国名のENUMタイプの列があります。これを達成するための正しいMySQL構文は何ですか?
これが私の試みです:
ALTER TABLE carmake CHANGE country country ENUM('Sweden','Malaysia');
私が得るエラーは: ERROR 1265 (01000): Data truncated for column 'country' at row 1.
country
列には、上記の文ではENUM型のカラムです。
作成テーブル出力を表示:
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の出力から異なる国を選択してください:
+----------------+
| country |
+----------------+
| Italy |
| Germany |
| England |
| USA |
| France |
| South Korea |
| NULL |
| Australia |
| Spain |
| Czech Republic |
+----------------+