티베로(Tibero) 오라클(Oracle)
[오라클] ora-00001: unique constraint violated. unique index 삭제
xemaker
2018. 10. 10. 09:40
오라클 쿼리를 실행하던 중
ora-00001: unique constraint(xxx_pk) violated
에러가 발생했다.
역시 오라클에서도 unique 한 키가 가장 중요하다고 생각해서 인지 1번으로 에러를 표시한 듯 하다.
중복건이 들어가야 되서 PK를 없애주기로 했다.
desc 해서 살펴보면
create unique index table_pk
on TABLE
(
EMP ASC
);
이런식으로 설정되어 있었다.
저걸 삭제 하면
ALTER TABLE TABLE명 DROP CONSTRAINT PK명;
오너명이 있다면
alter table 오너명.테이블명 drop constraint pk명;
뒤에 pk명에는 오너명이 안들어 간다.
라고 했는데 안됐다.. ㅎㅎ
이유는 PK가 아니고 unique index 였기 때문이다.
그래서 pk drop 이 아니고 unique index drop으로 바꾸어 준다.
drop index pk명;
drop index xxx_pk;
오너명이 있다면
drop index 오너명.unique index 명;
pk는 null을 허용 안하고
unique index는 null을 허용한다.