USING 인덱스 절
db 패치에서 다음 문장을 보았습니다.
ALTER TABLE tablename ADD PRIMARY KEY (somepk_columnname) USING INDEX;
USING INDEX가 여기서 무엇을 하는지 찾아보고 싶었지만, 몇 가지 스토리지 특정한 것을 지정할 수 있도록 구글에서만 받았습니다.
제 질문은, 여기서 정확히 무슨 일이 벌어지는지 입니다.db는 여기에 일부 기본값을 사용합니까?기본 테이블스페이스에서 PK에 대한 인덱스를 생성하시겠습니까?기본값당 pk마다 인덱스가 생성된다고 생각했는데...
http://docs.oracle.com/cd/B28359_01/server.111/b28286/clauses002.htm#SQLRF52209
인덱스를 사용하여 제약 조건 적용
고유 또는 기본 키 제약 조건의 상태를 정의할 때 Oracle이 제약 조건을 적용하는 데 사용할 인덱스를 지정하거나 Oracle이 제약 조건을 적용하는 데 사용할 인덱스를 생성하도록 지시할 수 있습니다.
using_index_clause 고유한 키 제약 조건 또는 기본 키 제약 조건을 활성화하는 경우에만 using_index_clause를 지정할 수 있습니다.using_index_clause의 절은 순서에 상관없이 지정할 수 있지만 각 절은 한 번만 지정할 수 있습니다.
schema.index를 지정하면 Oracle은 지정된 인덱스를 사용하여 제약 조건을 적용하려고 합니다.Oracle이 인덱스를 찾을 수 없거나 인덱스를 사용하여 제약 조건을 적용할 수 없는 경우 Oracle은 오류를 반환합니다.
create_index_statement를 지정하면 Oracle은 인덱스를 생성하고 이를 사용하여 제약 조건을 적용하려고 합니다.Oracle이 인덱스를 생성할 수 없거나 인덱스를 사용하여 제약 조건을 적용할 수 없는 경우 Oracle은 오류를 반환합니다.
기존 인덱스를 지정하지 않거나 새 인덱스를 만들지 않으면 오라클이 인덱스를 만듭니다.이 경우:
인덱스는 제약 조건과 동일한 이름을 받습니다.
테이블이 분할된 경우 고유 키 또는 기본 키 제약 조건에 대해 로컬 또는 글로벌 분할 인덱스를 지정할 수 있습니다.
위의 답변이 큰 도움이 되었지만, 저의 고유한 키에 대해서도 특정 테이블 공간을 사용하고 싶었습니다.효과가 있었습니다.
alter table tablename add constraint uk_name unique (col1, col2) using index tablespace tablespace_name;
언급URL : https://stackoverflow.com/questions/23243479/using-index-clause
'programing' 카테고리의 다른 글
오라클 데이터베이스의 SID, 서비스 이름 및 포트를 가져오는 방법은 무엇입니까? (0) | 2023.09.25 |
---|---|
setWebViewClient와 setWebChrom Client의 차이점은 무엇입니까? (0) | 2023.09.25 |
부트스트랩 카드를 카드 기둥에서 높이를 동일하게 만드는 방법은? (0) | 2023.09.25 |
wp-cli를 통해 워드프레스 번역을 업데이트하는 방법 (0) | 2023.09.25 |
array.prototype.에는 vs.배열.원형.indexOf (0) | 2023.09.25 |