ALTER 문에 대해서 좀 끄적여 놓으려 한다.
우선 ALTER문은 이미 존재하는 테이블의 구조나 형식등을 바꾸기 위해 사용한다.
따라서, 칼럼의 구조나 형식을 변경하기 위해 ALTER명령을 사용하게 된다.
ALTER 명령어는 다음과 같다.
1. 테이블 형식 변경
- Engine 사용 : ALTER TABLE 테이블명 ENGINE=형식;
- type 사용 : ALTER TABLE 테이블명 TYPE=형식;
2. 테이블 이름 변경
- ALTER TABLE 테이블명 RENAME 바꿀이름
- RENAME TABLE 테이블명 TO 바꿀이름
3. 칼럼 추가
- 마지막에 추가 : ALTER TABLE 테이블명 ADD COLUMN 칼럼이름 칼럼타입
- 지정 칼럼 뒤에 : ALTER TABLE 테이블명 ADD COLUMN 칼럼이름 칼럼타입 AFTER 칼럼이름
- 제일 앞에 : ALTER TABLE 테이블명 ADD COLUMN 칼럼이름 칼럼타입 FIRST
4. 칼럼 삭제
- ALTER TABLE 테이블명 DROP COLUMN 칼럼이름
5. 칼럼 변경
- ALTER TABLE 테이블명 MODIFY 컬럼이름 새컬럼타입
- ALTER TABLE 테이블명 CHANGE 컬럼이름 새컬럼이름 새컬럼타입
6. 인덱스에 새항목 추가
- ALTER TABLE 테이블명 ADD INDEX(컬럼이름)
7. 인덱스 삭제
- ALTER TABLE 테이블명 DROP INDEX 컬럼이름
- DROP INDEX 인덱스이름 ON 테이블명
7. 기본키(Primary Key) 지정하기
- ALTER TABLE 테이블명 ADD PRIMARY KEY(칼럼이름) 컬럼이름
mysql> DESCRIBE test;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| t1 | varchar(40) | | | | |
| t2 | varchar(40) | YES | | NULL | |
| t3 | varchar(40) | YES | | NULL | |
| t4 | varchar(40) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
mysql> ALTER TABLE test ADD PRIMARY KEY(t1);
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> DESCRIBE test;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| t1 | varchar(40) | | PRI | | |
| t2 | varchar(40) | YES | | NULL | |
| t3 | varchar(40) | YES | | NULL | |
| t4 | varchar(40) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
7. 기본키 삭제
- ALTER TABLE 테이블명 DROP PRIMARY KEY
'데이터베이스 > MySql & MariaDB' 카테고리의 다른 글
Mysql Cursor (0) | 2015.09.25 |
---|---|
mysql관리시 알아 두어야 할 주요 상태 확인 명령 (0) | 2015.06.10 |
MySql,MariaDB 서버변수 설정(ConnectionTimeOut, Max_allowed_packet) (0) | 2015.05.12 |
Mysql 5.X Function & Procedure 만들기 기타 쿼리 (0) | 2014.07.10 |
[마리아] db 각종 명령어 모음 (0) | 2014.01.02 |