- 칼럼명 변경하는 방법
> 기본 구조 ALTER TABLE 테이블명 CHANGE 변경 전이름 변경 후이름 칼럼타입;
* 주의사항
not null이나 default 그리고 제약조건이 있는 칼럼의 이름을 변경할 때, 칼럼타입까지만 입력해주면 뒤에 설정한 값들이 초기화되고 컬럼타입만 유지가 됩니다. 예시를 통해 보시죠.
주의사항 예시
-- 컬럼명 변경 전
create table test(
name_id int not null default 1
);
-- name_id를 user_id로 변경하기
alter test change name_id uesr_id int;
결괏값: uesr_id int -- 기존에 있던 not null과 default값은 초기화
그렇기 때문에 이름변경할 때 설정한 값들을 유지하고 싶다면,
컬럼타입 + 설정한 값도 추가적으로 작성해 주시면 됩니다.
올바른 사용법
-- 컬럼명 변경 전
create table test(
name_id int not null default 1
);
-- name_id를 user_id로 변경하기
alter test change name_id uesr_id int not null default 1;
결괏값: uesr_id int not null default 1 -- 설정값이 유지된다
- 칼럼 타입 변경하는 방법
> 기본 구조 ALTER TABLE 테이블명 MODIFY 칼럼명 변경할 칼럼타입;
* 주의사항
not null이나 default 그리고 제약조건이 있는 칼럼의 이름을 변경할 때, 칼럼타입까지만 입력해 주면 뒤에 설정한 값들이 초기화되고 칼럼타입만 유지가 됩니다. 그렇기 때문에 위의 예시처럼 설정값이 있다면 다 작성해줘야 합니다.
올바른 사용법
-- 컬럼 타입 변경 전
create table test1(
user_id int not null default 2
)
-- 컬럼 타입 변경 후
alter table test1 modify user_id varchar(5) not null default 2;
결괏값: user_id varchar(5) not null default 2
- 칼럼 디폴트값 변경하는 방법
> 기본 구조 ALTER TABLE 테이블명 ALTER COLUMN 칼럼명 SET DEFAULT 수정사항;
* 디폴트값만 변경할 때는 위와 달리 설정값이 초기화되지 않고 디폴트만 바뀌게 됩니다.
사용 예시
-- 변경 전
create table test3(
user_id int not null default 1
)
-- user_id 컬럼 default값 변경 하기 (1에서 3으로)
alter table test3 alter column user_id set default 3;
- 칼럼 삭제하는 방법
> 기본 구조 ALTER TABLE 테이블명 DROP COLUMN 칼럼명;
사용 예시
-- 컬럼 삭제하기
alter table test2 drop column user_id;
- 칼럼 추가하는 방법
> 기본 구조 ALTER TABLE 테이블명 ADD 추가칼럼명 추가조건 나열;
사용 예시
-- num_id 컬럼 추가하기
alter table test2 add num_id int not null default 2;