요약

  • 테이블 자체 또는 열, 제약조건을 수정하는 경우 활용

1. 테이블 수정

ALTER TABLE old_table_name RENAME TO new_table_name;

2. 열 수정

-- 열 생성
ALTER TABLE 테이블명
ADD COLUMN 컬럼명1 INTEGER,
ADD COLUMN 컬럼명2 CHAR(20);
 
-- 열 삭제
ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
 
-- 열 이름 변경 (PostgreSQL은 한 번에 하나만)
ALTER TABLE 테이블명 RENAME COLUMN old_컬럼명 TO new_컬럼명;
 
-- 데이터 타입 변경
ALTER TABLE 테이블명 ALTER COLUMN 컬럼명 TYPE 변경할_데이터타입;

3. 제약조건 수정

-- PK 추가
ALTER TABLE 테이블명 ADD CONSTRAINT PK_name PRIMARY KEY (컬럼명);
 
-- 기존 PK 확인
SELECT conname FROM pg_constraint
WHERE conrelid = '스키마명.테이블명'::regclass AND contype = 'p';
 
-- PK 제거
ALTER TABLE 테이블명 DROP CONSTRAINT PK명;