[Oracle] 외래키[제약조건] 잠시 비활성화 하는법
- 기타/꿀팁
- 2020. 2. 24.
테이블에 데이터를 넣고 지울때 외래키 제약조건이 걸려있을때 다른 테이블이랑 외래키 제약조건[foreign key]이 걸려있어 외래키 걸려있는 테이블을 먼저 만들고 데이터를 넣은 다음에 생성해야 할 때가 있다.
하지만 부득이하게 자식 테이블에 데이터를 먼저 넣어야 할때는 제약조건 때문에 데이터를 못넣는데 이때 잠시 제약조건을 비활성화 해서 데이터를 집어넣는 방법이 있다.
ALTER TABLE 테이블명
DISABLE[ENABLE] CONSTRAINT 제약조건명;
ex)
ALTER TABLE PDS_CHANNEL
DISABLE CONSTRAINT FIDX_PDS_CHANNEL_CUSTOMERCD;
ALTER TABLE PDS_CHANNEL
ENABLE CONSTRAINT FIDX_PDS_CHANNEL_CUSTOMERCD;
|
DISABLE은 비활성화 명령어 이고
ENABLE은 활성화 시키는 명령어 이다.
DISABLE로 잠시 비활성화 시킨다음 데이터를 넣고 ENABLE로 다시 활성화를 시켜야 한다.
하지만 다시 활성화 시키려 할때
ORA-02298 에러가 발생하는데 부모 테이블에 데이터가 없을때 발생하므로 부모키에 데이터를 넣고 다시 활성화 시킬 수 있다.
'기타 > 꿀팁' 카테고리의 다른 글
[꿀팁] 소스 파일 비교해서 바뀐 부분만 수정 하는법. (0) | 2020.03.20 |
---|---|
[꿀팁] 필요없는 프로그램(키보드보안, ActiveX 등) 한방에 지우는 법 (0) | 2020.03.20 |
[Eclipse] 이클립스 스킨 추천 (0) | 2020.01.09 |
[WunderList] 많은 업무가 몰려 있을때 효과적인 업무 정리 앱 (2) | 2019.08.23 |
[Tools] 유용한 캡처도구 추천(LightShot) (0) | 2019.08.13 |