특정 열 뒤에 새 열을 추가하고 기본값을 정의하려면 몇 가지 단계를 수행해야 합니다. 이를 수행하려면 ALTER 명령을 사용해야 합니다. 먼저 테이블을 생성하겠습니다 -
mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName varchar(20), StudentAge int, StudentCountryName varchar(100) ); Query OK, 0 rows affected (0.21 sec)
테이블 설명을 확인해보자 -
mysql> desc DemoTable;
이것은 다음과 같은 출력을 생성합니다 -
+--------------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------------+--------------+------+-----+---------+----------------+ | StudentId | int(11) | NO | PRI | NULL | auto_increment | | StudentFirstName | varchar(20) | YES | | NULL | | | StudentAge | int(11) | YES | | NULL | | | StudentCountryName | varchar(100) | YES | | NULL | | +--------------------+--------------+------+-----+---------+----------------+ 4 rows in set (0.15 sec)
다음은 특정 컬럼 뒤에 새로운 컬럼을 추가하고 기본값을 정의하는 쿼리이다. 열 이름 "StudentFirstName" 뒤에 새 열 "StudentLastName"을 추가해 보겠습니다. StudentLastName 열의 기본값은 "Doe"입니다.
mysql> alter table DemoTable add StudentLastName varchar(20) NOT NULL after StudentFirstName; Query OK, 0 rows affected (0.91 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> alter table DemoTable alter StudentLastName set default 'Doe'; Query OK, 0 rows affected (0.32 sec) Records: 0 Duplicates: 0 Warnings: 0
다시 한번 테이블 설명을 확인해보자.
mysql> desc DemoTable;
이것은 다음과 같은 출력을 생성합니다 -
+--------------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------------+--------------+------+-----+---------+----------------+ | StudentId | int(11) | NO | PRI | NULL | auto_increment | | StudentFirstName | varchar(20) | YES | | NULL | | | StudentLastName | varchar(20) | NO | | Doe | | | StudentAge | int(11) | YES | | NULL | | | StudentCountryName | varchar(100) | YES | | NULL | | +--------------------+--------------+------+-----+---------+----------------+ 5 rows in set (0.01 sec)