sys.dm_db_persisted_sku_features(Transact-SQL)

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System(PDW)

데이터베이스 엔진 일부 기능은 정보가 데이터베이스 파일에 저장되는 방식을 변경합니다. 이러한 기능은 특정 버전의 SQL Server로 제한됩니다. 이러한 기능이 포함된 데이터베이스는 지원하지 않는 SQL Server 버전으로 이동할 수 없습니다. 동적 관리 뷰를 sys.dm_db_persisted_sku_features 사용하여 현재 데이터베이스에서 사용하도록 설정된 버전별 기능을 나열합니다.

열 이름 데이터 형식 설명
feature_name sysname 데이터베이스에서 사용하도록 설정되었지만 모든 SQL Server 버전에서 지원되지 않는 기능의 외부 이름입니다. 데이터베이스를 사용 가능한 모든 SQL Server 버전으로 마이그레이션하려면 먼저 이 기능을 제거해야 합니다.
feature_id int 기능과 연결된 기능 ID입니다. 정보를 제공하기 위해서만 확인됩니다. 지원 안 됨 향후 호환성은 보장되지 않습니다.

사용 권한

SQL Server 2019(15.x) 및 이전 버전의 경우 데이터베이스에 대한 VIEW DATABASE STATE 권한이 필요합니다.

SQL Server 2022(16.x) 이상 버전의 경우 데이터베이스에 대한 VIEW DATABASE PERFORMANCE STATE 권한이 필요합니다.

설명

데이터베이스의 특정 버전에 의해 제한될 수 있는 기능이 없으면 뷰는 행을 반환하지 않습니다.

sys.dm_db_persisted_sku_features 는 특정 SQL Server 버전으로 제한되는 다음과 같은 데이터베이스 변경 기능을 나열할 수 있습니다.

  • ChangeCapture: 데이터베이스에 변경 데이터 캡처가 사용하도록 설정되어 있음을 나타냅니다. 변경 데이터 캡처를 제거하려면 sys.sp_cdc_disable_db 저장 프로시저를 사용합니다. 자세한 내용은 변경 데이터 캡처 정보(SQL Server)를 참조하세요.

  • ColumnStoreIndex: 하나 이상의 테이블에 columnstore 인덱스가 있음을 나타냅니다. 데이터베이스를 이 기능을 지원하지 않는 SQL Server 버전으로 이동할 수 있도록 하려면 DROP INDEX 또는 ALTER INDEX 문을 사용하여 columnstore 인덱스 제거합니다. 자세한 내용은 Columnstore 인덱스를 참조 하세요.

  • 압축: 하나 이상의 테이블 또는 인덱스가 데이터 압축 또는 vardecimal 스토리지 형식을 사용한다는 것을 나타냅니다. 데이터베이스를 이 기능을 지원하지 않는 SQL Server 버전으로 이동할 수 있도록 하려면 ALTER TABLE 또는 ALTER INDEX 문을 사용하여 데이터 압축을 제거합니다. vardecimal 스토리지 형식을 제거하려면 문을 사용합니다 sp_tableoption . 자세한 내용은 Data Compression을 참조하세요.

  • MultipleFSContainers: 데이터베이스가 여러 FILESTREAM 컨테이너를 사용한다는 것을 나타냅니다. 데이터베이스에는 여러 컨테이너(파일)가 있는 FILESTREAM 파일 그룹이 있습니다. 자세한 내용은 FILESTREAM(SQL Server)을 참조하세요.

  • InMemoryOLTP: 데이터베이스가 메모리 내 OLTP를 사용한다는 것을 나타냅니다. 데이터베이스에는 MEMORY_OPTIMIZED_DATA 파일 그룹이 있습니다. 자세한 내용은 메모리 내 OLTP(메모리 내 최적화)를 참조하세요.

  • 분할. 데이터베이스에 분할된 테이블, 분할된 인덱스, 파티션 구성표 또는 파티션 함수가 포함되어 있음을 나타냅니다. 데이터베이스를 Enterprise 또는 Developer가 아닌 SQL Server 버전으로 이동할 수 있도록 하려면 테이블을 단일 파티션에 있도록 수정할 수 없습니다. 분할된 테이블을 제거해야 합니다. 테이블에 데이터가 포함된 경우 SWITCH PARTITION을 사용하여 각 파티션을 분할되지 않은 테이블로 변환합니다. 그런 다음 분할된 테이블, 파티션 구성표 및 파티션 함수를 삭제합니다.

  • TransparentDataEncryption. 데이터베이스가 투명한 데이터 암호화를 사용하여 암호화됨을 나타냅니다. 투명한 데이터 암호화를 제거하려면 ALTER DATABASE 문을 사용합니다. 자세한 내용은 투명한 데이터 암호화(TDE)를 참조하세요.

참고 항목

SQL Server 2016(13.x) 서비스 팩 1부터 TransparentDataEncryption을 제외한 이러한 기능은 여러 SQL Server 버전에서 사용할 수 있으며 엔터프라이즈 또는 개발자 버전으로만 제한되지 않습니다.

데이터베이스에서 특정 버전으로 제한된 기능을 사용하는지 여부를 확인하려면 데이터베이스에서 다음 문을 실행합니다.

SELECT feature_name
FROM sys.dm_db_persisted_sku_features;
GO

Windows의 SQL Server 버전에서 지원하는 기능 목록은 다음을 참조하세요.

SQL Server on Linux 버전에서 지원하는 기능 목록은 다음을 참조하세요.