oracle 제약조건 질문입니다 ㅠㅠ 0 6 2,418

by 밀크캬라멜 [2015.02.12 16:13:32]


oracle 기본키 제약조건을 drop하고

alter table A drop primary key; (제약조건명 = PK_A)

 

기본키 제약조건을 다시 생성하였는데요
alter table A add constraint A_PK primary key(a, b, c, d, e);
 

데이터 INSERT 시 제약조건 PK_A에 걸려 저장이 되지 않습니다

 

해당 제약조건을 제거하려 했으나

alter table A drop constraint PK_A cascade;

 

존재하지않는 제약조건이여서 삭제도 안되네요

ㅠㅠ어떻게해야하나요 도와주세요 

by 임상준 [2015.02.12 16:20:07]

인서트 시 에러메시지가 뭔가요?


by 밀크캬라멜 [2015.02.13 15:53:58]

제약조건 PK_A에 대해 무결성 제약조건 오류가 났었습니다.

제약조건 PK_A에 대한 인덱스 제거하여 해결하였습니다. 답변감사합니다


by 아발란체 [2015.02.12 17:03:58]

PK는 처음 사용하신 것처럼 "alter table A drop primary key"로 삭제하시면 될 것 같습니다.


by 밀크캬라멜 [2015.02.13 15:54:52]

저 문장으로 PK_A를 제거하였었습니다.

PK_A로 되어있는 인덱스 제거하여 해결하였습니다. 

기본키로 생성된 인덱스는 기본키를 제거할 때 같이 제거되지 않나요?ㅜㅜ


by 마농 [2015.02.13 17:11:53]

인덱스가 어떻게 만들어 졌느냐에 따라 다릅니다.
1. 인덱스 먼저 만들고 PK 생성한 경우 => PK 지워도 인덱스는 남습니다.
2. PK 생성시 인덱스 자동 생성된 경우 => PK 지우면 인덱스도 지워집니다.


by 밀크캬라멜 [2015.03.05 14:11:52]

그런가요? ㅎㅎㅎ감사합니다

그렇다면 이건 다른분이 만들어놓은 인덱스인가 보네요 기본키로 저절로 생긴 게 아니라

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입