반응형
설계된 테이블 명세에 따라 테이블을 생성하였더라도 시스템 구축 과정에서 추가 요구사항이나 오류 발견에 따라 테이블을 수정해야 하는 경우가 생길 수 있습니다. 이런 경우 ALTER TABLE 명령어를 활용한 다양한 테이블 수정 방법에 대해 알아보겠습니다.
테이블 수정 방법
테이블에 컬럼을 추가, 수정, 삭제하거나 테이블 명을 변경하는 방법에 대해 알아보겠습니다.
테이블명 변경 (RENAME)
- ALTER TABLE 테이블명 RENAME 변경테이블명;
ALTER TABLE STUDENT RENAME TEACHER;
컬럼 추가 (ADD)
- ALTER TABLE 테이블명 ADD COLUMN 컬럼명 데이터타입;
ALTER TABLE STUDENT ADD COLUMN AGE INT NOT NULL;
컬럼명 수정 (CHANGE)
- ALTER TABLE 테이블명 CHANGE COLUMN 컬럼명 변경컬럼명 데이터타입;
ALTER TABLE STUDENT CHANGE COLUMN AGO AGE INT NOT NULL;
컬럼 수정 (MODIFY)
- ALTER TABLE 테이블명 MODIFY COLUMN 컬럼명 변경데이터타입;
ALTER TABLE STUDENT MODIFY COLUMN AGE DECIMAL(3,0) NULL;
컬럼 디폴트값 및 순서 변경 (ALTER, MODIFY)
- ALTER TABLE 테이블명 ALTER COLUMN 컬럼명 SET DEFAULT 디폴트값;
- ALTER TABLE 테이블명 MODIFY 컬럼명 데이터타입 AFTER 앞 순서 컬럼명;
- ADD 명령어를 사용하여 컬럼을 추가할 때도 디폴트값과 순서를 정의할 수 있음.
# 컬럼 디폴트값 설정
ALTER TABLE STUDENT ALTER COLUMN AGE SET DEFAULT 10;
# 컬럼 순서 변경
ALTER TABLE STUDENT MODIFY AGE INT AFTER NAME;
# ADD로 디폴트값 설정 및 순서 정의
ALTER TABLE STUDENT ADD COLUMN GRADE INT(2) DEFAULT 1 FIRST;
-- > GRADE 컬럼의 디폴트값은 1이고 맨 앞에 정의
컬럼 삭제 (DROP)
- ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
ALTER TABLE STUDENT DROP COLUMN GRADE;
반응형
'IT > MYSQL' 카테고리의 다른 글
MYSQL - ROLLUP 함수로 소계, 합계 한 번에 조회하기 (0) | 2023.02.26 |
---|---|
MYSQL - SUM, MAX, MIN, AVG, COUNT 집계함수 데이터 조회하기 (0) | 2023.02.25 |
MYSQL - RANK / DENSE_RANK / ROW_NUMBER 함수로 순위 쉽게 구하기 (0) | 2023.02.24 |
MYSQL - 테이블 외래키(FOREIGN KEY) 추가, 삭제, 확인하기 (0) | 2023.02.23 |
MYSQL - 테이블 생성하기 CREATE TABLE (0) | 2023.02.19 |
댓글