[참조 : https://gent.tistory.com/ https://m.blog.naver.com/ ]
Primary Key & Index 조회 SQL
SELECT A.TABLE_NAME,
A.CONSTRAINT_NAME,
B.COLUMN_NAME,
B.POSITION
FROM ALL_CONSTRAINTS A,
ALL_CONS_COLUMNS B
WHERE A.TABLE_NAME = {Table_Name}
AND A.CONSTRAINT_TYPE = 'P'
AND A.OWNER = B.OWNER
AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME
ORDER BY B.POSITION
A.CONSTRAINT_NAME,
B.COLUMN_NAME,
B.POSITION
FROM ALL_CONSTRAINTS A,
ALL_CONS_COLUMNS B
WHERE A.TABLE_NAME = {Table_Name}
AND A.CONSTRAINT_TYPE = 'P'
AND A.OWNER = B.OWNER
AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME
ORDER BY B.POSITION
- View별 조회 내용
ALL_CONSTRAINTS : 현재 사용자가 엑세스할 수 있는 테이블에 대한 제약 조건 정의
USER_CONSTRAINTS : 현재 사용자의 스키마에 있는 테이블에 대한 제약 조건 정의
DBA_CONSTRAINTS : 데이터베이스의 모든 제약 조건 정의
USER_CONSTRAINTS : 현재 사용자의 스키마에 있는 테이블에 대한 제약 조건 정의
DBA_CONSTRAINTS : 데이터베이스의 모든 제약 조건 정의
Index 조회(또다른 방법-조회결과 약간 다름)
SELECT * FROM USER_INDEXES WHERE TABLE_NAME = {Table_Name}
ALTER INDEX 변경전이름 RENAME TO 변경후이름;
# 인덱스 REBUILD
alter index [인덱스명] rebuild tablespace [테이블스페이스명]
storage(initial 이니셜값 next 넥스트값 pctincrease 0) ;
# PRIMARY KEY 재생성
1.먼저 PRIMARY KEY 를 drop하세요.
-> ALTER TABLE [테이블명] DROP PRIMARY KEY;
-> ALTER TABLE [테이블명] DROP CONSTRAINT [PK명];
2.다시 PRIMARY KEY 를 만드세요.
-> ALTER TABLE 테이블명 ADD CONSTRAINT PK명 PRIMARY KEY(컬럼1,컬럼2)
USING INDEX TABLESPACE 테이블스페이스명 STORAGE (INITIAL 5K NEXT 2K PCTINCREASE 0)