DB21 ORA-01502 인덱스 XX인덱스명 또는 XX 분할영역은 사용할 수 없는 상태입니다. "ORA-01502 인덱스 XX인덱스명 또는 XX 분할영역은 사용할 수 없는 상태입니다." 1. Alter index {index_name} rebuild2. Alter index {index_names} rebuild partition {partition_names} 만약 파티션 되지 않은 인덱스면 1번, 아니라면 “ORA-14806 : 분활영역된 인덱스는 전체를 다시 만들 수 없습니다”가 발생합니다.그럴 경우 2번. 원인은 파티션은 파티션 별로 RowID를 다르게 갖게 됨으로 파티션의 변경이 발생하게 되면 RowID의 변경이 발생하게 됩니다. 그래서 실제 파티션 테이블의 RowID와 변경된 파티션 로컬 인덱스와 글로벌 인덱스의 RowID가 일치하지 않게 되어 인덱스 사용 중지 즉, IU 상태가 발생하.. 2015. 3. 18. Snapshot too old(ORA-01555) 원인) 1. 데이터를 읽어 내려가다가 쿼리 SCN 이후에 변경된 블록을 만나 과거 시점으로 Rollback 한 CR(Consistant Read)이미지를 얻으려고 하는데, Undo 블록이 다른 트랜젝션에 의해 이미 재사용되 필요한 Undo 정보를 얻을 수 없는 경우 2. 커밋된 트랜젝션 테이블 슬롯이 다른 트랜젝션에 의해 재사용되 커밋 정보를 확인할 수 없는 경우 Snapshot too old를 회피하는 방법 1. Undo 영역의 크기를 증가 2. 불필요하게 커밋을 자주 수행하지 않는다. 3. Fetch across commit 형태의 프로그램 작성을 피해 다른 방식으로 구현한다. ANSI 표준에 따르면 커밋 이전에 열려 있던 커서는 더는 Fetch하면 안된다. 4. 트랜잭션이 몰리는 시간대에 오래 걸리.. 2015. 3. 18. Oracle 11g PIVOT, UNPIVOT 아래 내용은 oracle 문서를 복사한 내용입니다.http://oracle-base.com/articles/11g/pivot-and-unpivot-operators-11gr1.phpThis article shows how to use the new PIVOT and UNPIVOT operators in 11g, as well as giving a pre-11g solution to the same problems. PIVOT UNPIVOT PIVOT The PIVOT operator takes data in separate rows, aggregates it and converts it into columns. To see the PIVOT operator in action we need to creat.. 2015. 3. 16. Oracle Sequence란 1. 시퀀스란 오라클에서는 행을 구분하기 위해서 기본 키를 두고 있습니다. 기본 키는 중복된 값을 가질 수 있으므로 항상 유일한 값을 가져야 합니다. 기본 키가 유일한 값을 갖도록 사용자가 직접 값을 생성해내려면 부담이 큽니다. 시퀀스는 테이블 내의 유일한 숫자를 자동으로 생성하는 자동 번호 발생기 이므로 시퀀스를 기본 키로 사용하게 되면 사용자의 부담을 줄일 수 있습니다. CREATE SEQUENCE sequence_name [ INCREMENT BY n ] [ START WITH ] [ {MAXVALUE n | NOMAXVALUE} ] [ {MINVALUE n | NOMINVALUE} ] [ {CYCLE| NOCYCLE} ] [ {CACHE n | NOCACHE} ]; 1) INCREMENT BY 옵.. 2015. 3. 16. 이전 1 2 3 4 5 6 다음