===========================================
제시하신 오류 해결책과 요청하신 데이터베이스 관련 개념에 대해 답변드리겠습니다.
제시된 오류들은 인덱스 이름 중복(ORA-00955)과 동일 컬럼 인덱스 중복 생성 시도(ORA-01408) 때문입니다. 문제를 해결하기 위한 구체적인 조치는 다음과 같습니다.
| 오류가 난 명령 | 오류 코드 | 문제 진단 | 해결 방법 (수정된 명령) |
|---|---|---|---|
CREATE INDEX EMP_IDX02 ON EMP(JOB) |
ORA-00955 | EMP_IDX02라는 이름의 객체가 이미 존재함. |
새로운 고유 이름 사용:CREATE INDEX EMP_JOB_IX_02 ON EMP(JOB); |
CREATE INDEX EMP_IDX10 ON EMP(JOB) |
ORA-00955 | EMP_IDX10라는 이름의 객체가 이미 존재함. |
새로운 고유 이름 사용:CREATE INDEX EMP_JOB_IX_10 ON EMP(JOB); |
CREATE INDEX EMP_IDX10 ON EMP(SAL) |
ORA-00955 | EMP_IDX10라는 이름의 객체가 이미 존재함. |
새로운 고유 이름 사용:CREATE INDEX EMP_SAL_IX_10 ON EMP(SAL); |
CREATE INDEX EMP_IDX15 ON EMP(JOB) |
ORA-01408 | EMP(JOB) 컬럼에 대해 이미 인덱스가 존재함. |
생성 시도 중단 또는 복합 인덱스 생성:CREATE INDEX EMP_JOB_SAL_IX ON EMP(JOB, SAL); |
핵심 수정 조치:
EMP_IDX02 또는 EMP_IDX10 대신 EMP_JOB_IX_NEW와 같이 다른 인덱스 이름을 사용하세요.EMP(JOB) 컬럼에 대한 인덱스가 꼭 필요하다면, 현재 스키마에 존재하는 기존 인덱스를 먼저 제거(DROP INDEX 기존인덱스명;)하거나, 기존 인덱스를 계속 사용하세요.