공간 인덱스 만들기, 수정 및 삭제

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

공간 인덱스는 geometry 또는 geography 데이터 형식의 열( 공간 열)에서 특정 작업을 좀 더 효율적으로 수행할 수 있습니다. 공간 열에 둘 이상의 공간 인덱스를 지정할 수 있습니다. 예를 들어 단일 열에서 서로 다른 테셀레이션 매개 변수를 인덱싱하는 데 유용합니다.

공간 인덱스를 만드는 작업에 대한 제한 사항이 많이 있습니다. 자세한 내용은 이 항목의 공간 인덱스에 대한 제한을 참조하세요.

참고 항목

공간 인덱스와 파티션 및 파일 그룹과의 관계에 대한 자세한 내용은 CREATE SPATIAL INDEX(Transact-SQL)의 "설명" 섹션을 참조하세요.

공간 인덱스 만들기, 수정 및 삭제

공간 인덱스를 만들려면

Transact-SQL을 사용하여 공간 인덱스를 만들려면
CREATE SPATIAL INDEX(Transact-SQL)

Management Studio에서 새 인덱스 대화 상자를 사용하여 공간 인덱스를 만들려면

Management Studio에서 공간 인덱스를 만들려면
  1. 개체 탐색기에서 SQL Server 데이터베이스 엔진의 인스턴스에 연결한 다음 해당 인스턴스를 확장합니다.

  2. 데이터베이스를 확장하고 지정한 인덱스가 있는 테이블이 포함된 데이터베이스를 확장한 다음 테이블을 확장합니다.

  3. 인덱스 만들기를 원하는 테이블을 확장합니다.

  4. 인덱스를 마우스 오른쪽 단추로 클릭하고 새 인덱스를 선택합니다.

  5. 인덱스 이름 필드에 인덱스 이름을 입력합니다.

  6. 인덱스 유형 드롭다운 목록에서 Spatial을 선택합니다.

  7. 인덱싱할 공간 열을 지정하려면 추가를 클릭합니다.

  8. 테이블 이름>에서 열 선택 대화 상자에서<해당 확인란을 선택하여 기하 도형 또는 지리 형식의 열을 선택합니다. 그러면 다른 공간 열은 처리할 수 없게 됩니다. 다른 공간 열을 선택하려면 먼저 현재 선택한 열을 선택 취소해야 합니다. 완료되었으면 확인을 클릭합니다.

  9. 인덱스 키 열 표에서 열 선택을 확인합니다 .

  10. 인덱스 속성 대화 상자의 페이지 선택 창에서 공간(Spatial)을 클릭합니다.

  11. 공간 페이지에서 인덱스의 공간 속성에 사용할 값을 지정합니다.

    geometry 형식 열에서 인덱스를 만들 경우 경계 상자의 (X-min,Y-min)(X-max,Y-max) 좌표를 지정해야 합니다. 지리 그리드 테셀레이션은 경계 상자를 사용하지 않으므로 지리 형식 열의 인덱스의 경우 Geography 그리드 테셀레이션 구성표를 지정한 후 경계 상자 필드가 읽기 전용이 됩니다.

    필요에 따라 공간 분할(tessellation) 구성표의 모든 수준에서 표 밀도 및 개체당 셀 수 필드에 대해 기본값이 아닌 값을 지정할 수 있습니다. 개체당 기본 셀 수는 SQL Server 2008(10.0.x)의 경우 16, SQL Server 2012(11.x) 이상에서는 8이고 기본 그리드 밀도는 SQL Server 2008의 경우 보통(10.0.x)입니다.

    SQL Server에서 테셀레이션 구성표에 대한 GEOMETRY_AUTO_GRID 또는 GEOGRAPHY_AUTO_GRID 선택할 수 있습니다. GEOMETRY_AUTO_GRID 또는 GEOGRAPHY_AUTO_GRID 선택하면 수준 1, 수준 2, 수준 3 및 수준 4 그리드 밀도 옵션이 비활성화됩니다.

    이러한 속성에 대한 자세한 내용은 인덱스 속성 F1 도움말을 참조 하세요.

  12. 확인을 클릭합니다.

참고 항목

동일하거나 다른 공간 열에 다른 공간 인덱스를 만들려면 이전 단계를 반복합니다.

Management Studio에서 테이블 디자이너를 사용하여 공간 인덱스를 만들려면

테이블 디자이너에서 공간 인덱스를 만들려면
  1. 개체 탐색기에서 공간 인덱스를 만들 테이블을 마우스 오른쪽 단추로 클릭한 다음 디자인을 클릭합니다.

    테이블 디자이너에서 테이블이 열립니다.

  2. 인덱스기하 도형 또는 지리 열을 선택합니다.

  3. 테이블 디자이너 메뉴에서 공간 인덱스를 클릭합니다.

  4. 공간 인덱스 대화 상자에서 추가를 클릭합니다.

  5. 선택한 공간 인덱스 목록에서 새 인덱스를 선택하고 오른쪽에 있는 표에서 공간 인덱스의 속성을 설정합니다. 속성에 대한 자세한 내용은 공간 인덱스 대화 상자(Visual Database Tools)를 참조하세요.

공간 인덱스를 변경하려면

공간 인덱스를 삭제하려면

Transact-SQL을 사용하여 공간 인덱스를 삭제하려면
DROP INDEX(Transact-SQL)

Management Studio를 사용하여 인덱스 삭제
인덱스 삭제

Management Studio에서 테이블 디자이너를 사용하여 공간 인덱스를 삭제하려면

테이블 디자이너에서 공간 인덱스를 삭제하려면
  1. 개체 탐색기에서 삭제할 공간 인덱스가 있는 테이블을 마우스 오른쪽 단추로 클릭하고 디자인을 클릭합니다.

    테이블 디자이너에서 테이블이 열립니다.

  2. 테이블 디자이너 메뉴에서 공간 인덱스를 클릭합니다.

    공간 인덱스 대화 상자가 열립니다.

  3. 선택한 공간 인덱스 열에서 삭제할 인덱 스를 클릭합니다.

  4. 삭제를 클릭합니다.

공간 인덱스에 대한 제한 사항

공간 인덱스는 기하학 또는 지리유형의 열에서만 만들 수 있습니다.

테이블 및 뷰 제한 사항

공간 인덱스는 기본 키가 있는 테이블에만 정의할 수 있습니다. 테이블의 기본 키 열의 최대 수는 15개입니다.

인덱스 키 레코드의 최대 크기는 895바이트입니다. 크기가 클수록 오류가 발생합니다.

참고 항목

테이블에 공간 인덱스가 정의되어 있는 동안에는 기본 키 메타데이터를 변경할 수 없습니다.

공간 인덱스는 인덱싱된 뷰에 지정할 수 없습니다.

여러 공간 인덱스 제한

지원되는 테이블의 공간 열에 최대 249개의 공간 인덱스를 만들 수 있습니다. 예를 들면 동일한 공간 열에 공간 인덱스를 한 개 이상 만드는 것이 하나의 열에 있는 서로 다른 공간 분할 매개 변수를 인덱싱하는 데 유용할 수 있습니다.

한 번에 하나의 공간 인덱스만 만들 수 있습니다.

공간 인덱스 및 프로세스 병렬 처리

인덱스 작성 작업은 사용 가능한 프로세스 병렬 처리를 사용할 수 있습니다.

버전 제한

SQL Server 2012(11.x)에서 도입된 공간 공간 분할은 SQL Server 2008 R2(10.50.x) 또는 SQL Server 2008(10.0.x)에 복제할 수 없습니다. SQL Server 2008 R2(10.50.x) 또는 SQL Server 2008(10.0.x) 데이터베이스와의 이전 버전과의 호환성이 요구 사항인 경우 공간 인덱스에 SQL Server 2008 R2(10.50.x) 또는 SQL Server 2008(10.0.x) 공간 분할을 사용해야 합니다.

참고 항목

공간 인덱스 개요