Oracle에서 인덱스를 확인하는 방법
Oracle 데이터베이스에 의존하는 제품의 스키마 업그레이드 스크립트를 작성하고 있습니다.한 영역에서 테이블에 인덱스를 작성해야 합니다(인덱스가 아직 존재하지 않는 경우).오라클 스크립트에서 이름을 알고 있는 인덱스가 있는지 쉽게 확인할 수 있는 방법이 있습니까?
SQL Server의 경우와 유사합니다. 존재하지 않는 경우(SELECT * FROM SYSINDES WHERE NAME = 'myIndex') // 그런 다음 myIndex를 만듭니다.
user_incount()에서 count()를 선택합니다. 여기서 index_name = 'myIndex'
그러나 sqlplus는...의 경우 지원하지 않으므로 익명 PL/SQL 블록을 사용해야 합니다. 즉, DDL을 수행하려면 즉시 실행해야 합니다.
DECLARE
i INTEGER;
BEGIN
SELECT COUNT(*) INTO i FROM user_indexes WHERE index_name = 'MYINDEX';
IF i = 0 THEN
EXECUTE IMMEDIATE 'CREATE INDEX myIndex ...';
END IF;
END;
/
편집: 지적된 대로 Oracle은 따옴표로 묶이지 않은 개체 이름을 모두 대문자로 저장합니다.
언급URL : https://stackoverflow.com/questions/640390/how-to-check-for-an-index-in-oracle
'programing' 카테고리의 다른 글
당신은 C 선언을 어떻게 읽습니까? (0) | 2023.06.29 |
---|---|
matplotlib에서 하위 그림 사이의 간격을 제거하는 방법 (0) | 2023.06.29 |
동일한 MongoDB 업데이트에서 $push 및 $set (0) | 2023.06.29 |
Firebase Cloud Messaging - 로그아웃 처리 (0) | 2023.06.29 |
예외 개체에서 추적 정보 추출 (0) | 2023.06.29 |