다음을 통해 공유


sys.sysindexes(Transact-SQL)

적용 대상: SQL Server

현재 데이터베이스 내의 각 인덱스 및 테이블마다 한 행을 포함합니다. 이 보기에서는 XML 인덱스가 지원되지 않습니다. 분할된 테이블 및 인덱스는 이 보기에서 완전히 지원되지 않습니다. 대신 sys.indexes 카탈로그 뷰를 사용합니다.

Important

이 SQL Server 2000 시스템 테이블은 이전 버전과의 호환성을 위한 보기로 포함되어 있습니다. 대신 현재 SQL Server 시스템 뷰를 사용하는 것이 좋습니다. 동등한 시스템 뷰 또는 뷰를 찾으려면 시스템 테이블을 시스템 뷰에 매핑(Transact-SQL)을 참조하세요. Microsoft SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 애플리케이션은 수정하세요.

열 이름 데이터 형식 Description
id int 인덱스가 속한 테이블의 ID입니다.
status int 시스템 상태 정보입니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
first binary(6) 첫 페이지 또는 루트 페이지에 대한 포인터입니다.

indid = 0일 때 사용되지 않습니다.

NULL = indid> 1이면 인덱스가 분할됩니다.

NULL = indid가 0 또는 1이면 테이블이 분할됩니다.
indid smallint 인덱스의 ID:

0 = 힙

1 = 클러스터형 인덱스

>1 = 비클러스터형 인덱스
root binary(6) indid>= 1의 경우 루트는 루트 페이지에 대한 포인터입니다.

indid = 0일 때 사용되지 않습니다.

NULL = indid> 1이면 인덱스가 분할됩니다.

NULL = indid가 0 또는 1이면 테이블이 분할됩니다.
minlen smallint 행의 최소 크기입니다.
keycnt smallint 키 수입니다.
groupid smallint 개체가 만들어진 파일 그룹 ID입니다.

NULL = indid> 1이면 인덱스가 분할됩니다.

NULL = indid가 0 또는 1이면 테이블이 분할됩니다.
dpages int indid = 0 또는 indid = 1의 경우 dpages는 사용된 데이터 페이지의 수입니다.

indid> 1의 경우 dpages는 사용된 인덱스 페이지 수입니다.

0 = indid> 1이면 인덱스가 분할됩니다.

0 = indid가 0 또는 1이면 테이블이 분할됩니다.

행 오버플로가 발생하는 경우 정확한 결과를 생성하지 않습니다.
reserved int indid = 0 또는 indid = 1의 경우 예약은 모든 인덱스 및 테이블 데이터에 할당된 페이지 수입니다.

indid> 1의 경우 예약된 페이지 수는 인덱스용으로 할당된 페이지 수입니다.

0 = indid> 1이면 인덱스가 분할됩니다.

0 = indid가 0 또는 1이면 테이블이 분할됩니다.

행 오버플로가 발생하는 경우 정확한 결과를 생성하지 않습니다.
used int indid = 0 또는 indid = 1의 경우 모든 인덱스 및 테이블 데이터에 사용되는 총 페이지의 수입니다.

indid> 1의 경우 덱스용으로 사용되는 페이지 수입니다.

0 = indid> 1이면 인덱스가 분할됩니다.

0 = indid가 0 또는 1이면 테이블이 분할됩니다.

행 오버플로가 발생하는 경우 정확한 결과를 생성하지 않습니다.
rowcnt bigint indid = 0 및 indid = 1을 기반으로 하는 데이터 수준 행 수입니다.

0 = indid> 1이면 인덱스가 분할됩니다.

0 = indid가 0 또는 1이면 테이블이 분할됩니다.
rowmodctr int 테이블에 대해 통계를 마지막으로 업데이트한 이후에 삽입, 삭제 또는 업데이트된 행의 총 수를 셉니다.

0 = indid> 1이면 인덱스가 분할됩니다.

0 = indid가 0 또는 1이면 테이블이 분할됩니다.

SQL Server 2005(9.x) 이상에서는 rowmodctr 이 이전 버전과 완전히 호환되지 않습니다. 자세한 내용은 설명 부분을 참조하세요.
reserved3 int 0을 반환합니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
reserved4 int 0을 반환합니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
xmaxlen smallint 행의 최대 크기
maxirow smallint 리프가 아닌 인덱스 행의 최대 크기입니다.

SQL Server 2005(9.x) 이상에서는 maxirow 가 이전 버전과 완전히 호환되지 않습니다.
OrigFillFactor tinyint 인덱스가 생성되었을 때 사용된 원래 채우기 비율 값입니다. 이 값은 유지 관리되지 않지만 인덱스를 다시 만들어야 하거나 사용한 채우기 비율 값을 기억할 수 없는 경우에 유용합니다.
StatVersion tinyint 0을 반환합니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
reserved2 int 0을 반환합니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
FirstIAM binary(6) NULL = 인덱스가 분할됩니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
impid smallint 인덱스 구현 플래그입니다.

0을 반환합니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
lockflags smallint 인덱스에 대해 고려된 잠금 세분성을 제약하는 데 사용합니다. 예를 들어 잠금 비용을 최소화하기 위해 기본적으로 읽기 전용인 조회 테이블을 테이블 수준 잠금만 수행하도록 설정할 수 있습니다.
pgmodctr int 0을 반환합니다.

정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
keys varbinary(816) 인덱스 키를 구성하는 열의 열 ID 목록입니다.

NULL을 반환합니다.

인덱스 키 열을 표시하려면 sys.sysindexkeys를 사용합니다.
이름 sysname 인덱스 또는 통계의 이름입니다. indid = 0이면 NULL을 반환합니다. NULL 힙 이름을 찾으도록 애플리케이션을 수정합니다.
statblob image 통계 BLOB(Binary Large Object)입니다.

NULL을 반환합니다.
maxlen int 정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.
rows int indid = 0 및 indid = 1을 기반으로 하는 데이터 수준 행 수이며 indid>1에 대해 값이 반복됩니다.

설명

예약된 것으로 정의된 열은 사용할 수 없습니다.

테이블 또는 인덱스에 ROW_OVERFLOW 할당 단위에 데이터가 포함된 경우 dpages, 예약사용된 열은 정확한 결과를 반환하지 않습니다. 또한 각 인덱스의 페이지 수는 별도로 추적되며 기본 테이블에 대해 집계되지 않습니다. 페이지 수를 보려면 sys.allocation_units 또는 sys.partitions 카탈로그 뷰 또는 sys.dm_db_partition_stats 동적 관리 뷰를 사용합니다.

SQL Server 2000 이전 버전에서는 데이터베이스 엔진 행 수준 수정 카운터를 유지 관리했습니다. 이러한 카운터는 이제 열 수준에서 유지 관리됩니다. 따라서 rowmodctr 열은 계산되고 이전 버전의 결과와 비슷하지만 정확한 결과가 아닌 결과를 생성합니다.

rowmodctr값을 사용하여 통계를 업데이트할 시기를 결정하는 경우 다음 솔루션을 고려합니다.

  • 아무 작업도 수행하지 않습니다. 동작이 이전 버전의 결과와 상당히 가깝기 때문에 새 rowmodctr 값은 통계를 업데이트할 시기를 결정하는 데 도움이 되는 경우가 많습니다.

  • AUTO_UPDATE_STATISTICS 사용합니다. 자세한 내용은 통계를 참조하세요.

  • 시간 제한을 사용하여 통계를 업데이트할 시기를 결정합니다. 예를 들어 매시간, 매일 또는 매주.

  • 애플리케이션 수준 정보를 사용하여 통계의 업데이트 시기를 결정합니다. 예를 들어 ID 열의 최대값이 10,000개 이상 변경되거나 대량 삽입 작업이 수행될 때마다 변경됩니다.

참고 항목

카탈로그 뷰(Transact-SQL)
시스템 테이블을 시스템 뷰에 매핑(Transact-SQL)
sys.indexes(Transact-SQL)