MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのデータ型enumの列に新しい値を追加しますか?


ALTER MODIFYコマンドを使用して、データ型enumの列に新しい値を追加できます。

enumの既存の値が必要な場合は、データ型enumの列に新しい値を追加するときに、既存のenum値を手動で書き込む必要があります。

構文は次のとおりです-

ALTER TABLE yourTableName MODIFY COLUMN yourEnumColumnName
ENUM('yourExistingValue1','yourExistingValue2',........N,'yourNewValue1',’yourNewValue2’,.....N);

上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-

mysql> create table AddingNewValueToEnumColumn
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Colors ENUM('RED','GREEN','BLUE'),
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.64 sec)

上記の表のDDLを確認するには、showcreateコマンドを使用します。クエリは次のとおりです-

mysql> show create table AddingNewValueToEnumColumn\G

以下は出力です-

*************************** 1. row ***************************
Table − AddingNewValueToEnumColumn
Create Table − CREATE TABLE `addingnewvaluetoenumcolumn` (
   `Id` int(11) NOT NULL AUTO_INCREMENT,
   `Colors` enum('RED','GREEN','BLUE') DEFAULT NULL,
   PRIMARY KEY (`Id`)
   ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci
1 row in set (0.00 sec)

値が「RED」、「GREEN」、「BLUE」の列挙型列「Colors」を確認し、別の値が必要な場合は、上記のようにALTERコマンドを使用します。

次に、新しい値、つまり「YELLOW」、「ORANGE」、「PINK」を追加しましょう。以下は、列挙型列「Colors」に新しい値を追加するためのクエリです-

mysql> ALTER TABLE addingnewvaluetoenumcolumn MODIFY COLUMN Colors
   -> ENUM('RED','GREEN','BLUE','YELLOW','ORANGE','PINK');
Query OK, 0 rows affected (0.17 sec)
Records − 0 Duplicates − 0 Warnings − 0

表の説明をチェックして、値が追加されているかどうかを確認してください。構文は次のとおりです-

DESC yourTableName;

DESCを使用して「addingnewvaluetoenumcolumn」テーブルの説明を確認してください-

mysql> desc AddingNewValueToEnumColumn;

以下は出力です-

+--------+-----------------------------------------------------+------+-----+---------+----------------+
| Field  | Type                                                | Null | Key | Default | Extra          |
+--------+-----------------------------------------------------+------+-----+---------+----------------+
| Id     | int(11)                                             | NO   | PRI | NULL    | auto_increment |
| Colors | enum('RED','GREEN','BLUE','YELLOW','ORANGE','PINK') | YES  |     | NULL    |                |
+--------+-----------------------------------------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

  1. MySQLでカスタム開始値を使用して自動インクリメント列を追加します

    作成済みのテーブルに新しい列を追加するには、ALTERTABLEとADDCOLUMNを使用します。 AUTO_INCREMENTを使用して、自動増分カスタム値を設定します。 まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> StudentName varchar(20)    -> ); Query OK, 0 rows affected (0.63 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql

  2. MySQLのデフォルト値をJSONタイプの列に設定しますか?

    デフォルト値を設定するには、次の構文のようにDEFAULT制約を使用します- alter table yourTableName modify column yourColumnName JSON NOT NULL DEFAULT ( JSON_OBJECT() ); テーブルを作成しましょう- mysql> create table demo24 −> ( −> employee_information text −> ) −> ; Query OK, 0 rows affected (1.43 sec) これ