Studying/SQL
[Oracle & Tibero] 기존 PK 있는 테이블 컬럼 추가(PK, NOT NULL)
YOO'sssss
2023. 7. 24. 16:07
테이블에 기존 PK가 잡혀있는 상태에서 컬럼 추가(PK, NOT NULL) 하는 경우
1. 컬럼이름 추가
ALTER TABLE [테이블명] ADD [컬럼명] [타입]
2. 테이블에 컬럼 추가 시 자동으로 NULL로 들어가므로 NOT NULL 옵션 추가 불가능
3. 데이터 NULL 아닌것으로 바꾸고 MODIFY로 수정
ALTER TABLE [테이블명] MODIFY [컬럼명] NOT NULL
4. PK 잡으려면 원래 지정되어있던 PRIMARY KEY, UNIQUE KEY 삭제 후 추가 가능
ALTER TABLE [테이블명] DROP PRIMARY KEY
5. PK 지워도 UNIQUE KEY 삭제 안되어 있어서 UNIQUE KEY도 지워줘야함
DROP INDEX [인덱스명]
6. 다 지운 후 PRIMARY KEY 잡아줌
ALTER TABLE [테이블명] ADD CONSTRAINT [인덱스명] PRIMARY KEY (PK 잡아줄 컬럼명들)