MySQL 테이블 컬럼 추가

(MySQL 컬럼 추가에서 넘어옴)
MySQL 컬럼 추가
MySQL 컬럼 생성

1 방법 1: 맨 뒤에 추가[ | ]

MySQL
Copy
ALTER TABLE `테이블명` ADD `컬럼명` 자료형
Console
Copy
mysql> DESC employee;
+---------------+-------------+------+-----+---------+-------+
| Field         | Type        | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+-------+
| id            | int(11)     | NO   | PRI | NULL    |       |
| name          | varchar(16) | NO   |     | NULL    |       |
| department_id | int(11)     | NO   |     | NULL    |       |
+---------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> ALTER TABLE `employee` ADD `comments` VARCHAR(200) NOT NULL;
Query OK, 4 rows affected (0.41 sec)
Records: 4  Duplicates: 0  Warnings: 0

mysql> DESC employee;
+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| id            | int(11)      | NO   | PRI | NULL    |       |
| name          | varchar(16)  | NO   |     | NULL    |       |
| department_id | int(11)      | NO   |     | NULL    |       |
| comments      | varchar(200) | NO   |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

2 방법 2: 맨 앞에 추가[ | ]

MySQL
Copy
ALTER TABLE `테이블명` ADD `새컬럼명` 자료형 FIRST

3 방법 3: 지정 컬럼 다음에 추가 ★[ | ]

MySQL
Copy
ALTER TABLE `테이블명` ADD `새컬럼명` 자료형 AFTER `앞컬럼명`
Console
Copy
mysql> DESC employee;
+---------------+-------------+------+-----+---------+-------+
| Field         | Type        | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+-------+
| id            | int(11)     | NO   | PRI | NULL    |       |
| name          | varchar(16) | NO   |     | NULL    |       |
| department_id | int(11)     | NO   |     | NULL    |       |
+---------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> ALTER TABLE `employee` ADD `comments` VARCHAR(200) NOT NULL AFTER `name`;
Query OK, 4 rows affected (0.10 sec)
Records: 4  Duplicates: 0  Warnings: 0

mysql> DESC employee;
+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| id            | int(11)      | NO   | PRI | NULL    |       |
| name          | varchar(16)  | NO   |     | NULL    |       |
| comments      | varchar(200) | NO   |     | NULL    |       |
| department_id | int(11)      | NO   |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
→ 새 컬럼 comments가 name 컬럼의 바로 다음에 생성되었다.

4 같이 보기[ | ]

  • CentOS MySQL 설치
    RHEL5.x 버전에서 MySQL-5.5.45 버전 설치시, /usr/bin/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data 와 같이 설정해 주지 않으면 정상 동작하지 않는 경우가 있었습니다. 확인 바랍니다.
  • MySQL BigDump
    'MySQL server has gone away'는 백업본 전체의 크기가 크다기 보다는, 특정 쿼리문 1개의 크기가 너무 커서 처리를 못하는 거라서, 이런 도구로 해결하기는 어려울 것 같습니다.J Jmnote
  • MySQL STRICT TRANS TABLES
    @Jmnote 감사합니다.~ John Jeong
  • MySQL 외래키 옵션 변경
    진짜 필요한 거였는데 이런걸 이제야 알다니 정말 감사합니다. 문태부
  • MySQL 컬럼명으로 테이블 찾기
    회사 가서 쓰기 좋은 코드 1추 Stly3466