XML 인덱스 삭제
적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance
DROP INDEX(Transact-SQL)Transact-SQL 문을 사용하여 기존 기본 또는 보조 XML 및 비 XML 인덱스를 삭제할 수 있습니다. 그러나 DROP INDEX의 옵션은 XML 인덱스에 적용되지 않습니다. 기본 XML 인덱스를 삭제하면 존재하는 보조 인덱스도 삭제됩니다.
TableName.IndexName을 사용한 DROP 구문은 단계적으로 중단되고 있으며 XML 인덱스에 대해서는 지원되지 않습니다.
예: 기본 XML 인덱스 만들기 및 삭제
다음 예에서는 XML 인덱스가 xml 유형 열에 생성됩니다.
DROP TABLE T;
GO
CREATE TABLE T (Col1 INT PRIMARY KEY, XmlCol XML);
GO
-- Create Primary XML index
CREATE PRIMARY XML INDEX PIdx_T_XmlCol
ON T(XmlCol);
GO
-- Verify the index creation.
-- Note index type is 3 for xml indexes.
-- Note the type 3 is index on XML type.
SELECT *
FROM sys.xml_indexes
WHERE object_id = object_id('T')
AND name='PIdx_T_XmlCol';
-- Drop the index.
DROP INDEX PIdx_T_XmlCol ON T;
GO
테이블이 삭제되면 테이블의 모든 XML 인덱스도 자동으로 삭제됩니다. 그러나 XML 인덱스가 열에 있는 경우 테이블에서 XML 열을 삭제할 수 없습니다.
다음 예에서는 XML 인덱스가 xml 유형 열에 생성됩니다. 자세한 내용은 형식화된 XML과 형식화되지 않은 XML 비교를 참조하세요.
CREATE TABLE TestTable(
Col1 int primary key,
Col2 xml (Production.ProductDescriptionSchemaCollection));
GO
이제 .에서 기본 XML 인덱 Co12
스 만들기를 수행할 수 있습니다.
CREATE PRIMARY XML INDEX PIdx_TestTable_Col2
ON TestTable(Col2)
GO
예: DROP_EXISTING 인덱스 옵션을 사용하여 XML 인덱스 만들기
다음 예제에서는 열 XmlColx
에 XML 인덱스가 만들어집니다. 그런 다음 이름이 같은 다른 XML 인덱스가 다른 열 XmlColy
에 만들어집니다. DROP_EXISTING
옵션이 지정되었으므로 기존 XML 인덱 XmlColx
스가 삭제되고 새 XML 인덱스가 XmlColy
만들어집니다.
DROP TABLE T
GO
CREATE TABLE T(Col1 int primary key, XmlColx xml, XmlColy xml)
GO
-- Create XML index on XmlColx.
CREATE PRIMARY XML INDEX PIdx_T_XmlCol
ON T(XmlColx);
GO
-- Create same name XML index on XmlColy.
CREATE PRIMARY XML INDEX PIdx_T_XmlCol
ON T(XmlColy)
WITH (DROP_EXISTING = ON);
-- Verify the index is created on XmlColy.d.
SELECT sc.name
FROM sys.xml_indexes si inner join sys.index_columns sic
ON sic.object_id=si.object_id and sic.index_id=si.index_id
INNER join sys.columns sc on sc.object_id=sic.object_id
AND sc.column_id=sic.column_id
WHERE si.name='PIdx_T_XmlCol'
AND si.object_id=object_id('T');
이 쿼리에서는 지정된 XML 인덱스가 생성된 열 이름을 반환합니다.
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기