Dela via


sys.dm_db_persisted_sku_features (Transact-SQL)

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Vissa funktioner i databasmotorn ändrar hur informationen lagras i databasfilerna. Dessa funktioner är begränsade till specifika utgåvor av SQL Server. En databas som innehåller dessa funktioner kan inte flyttas till en utgåva av SQL Server som inte stöder dem. Använd vyn sys.dm_db_persisted_sku_features dynamisk hantering för att visa utgåvasspecifika funktioner som är aktiverade i den aktuella databasen.

Kolumnnamn Datatyp Beskrivning
feature_name sysname Externt namn på den funktion som är aktiverad i databasen men som inte stöds på alla versioner av SQL Server. Den här funktionen måste tas bort innan databasen kan migreras till alla tillgängliga utgåvor av SQL Server.
feature_id int Funktions-ID som är associerat med funktionen. Identifieras endast i informationssyfte. Stöds inte. Framtida kompatibilitet är inte garanterad..

Behörigheter

För SQL Server 2019 (15.x) och tidigare versioner kräver view DATABASE STATE-behörighet för databasen.

För SQL Server 2022 (16.x) och senare versioner krävs behörigheten VIEW DATABASE PERFORMANCE STATE på databasen.

Anmärkningar

Om det inte finns några funktioner som kan begränsas av en specifik utgåva i databasen returnerar vyn inga rader.

sys.dm_db_persisted_sku_features kan visa följande databasförändrande funktioner som begränsade till specifika SQL Server-utgåvor:

  • ChangeCapture: Anger att en databas har aktiverat ändringsdatainsamling. Om du vill ta bort insamling av ändringsdata använder du den sys.sp_cdc_disable_db lagrade proceduren. Mer information finns i Om SQL Server(Change Data Capture).

  • ColumnStoreIndex: Anger att minst en tabell har ett kolumnlagringsindex. Om du vill att en databas ska flyttas till en utgåva av SQL Server som inte stöder den här funktionen använder du instruktionen DROP INDEX eller ALTER INDEX för att ta bort kolumnlagringsindexet. Mer information finns i Columnstore-index.

  • Compression: Anger att minst en tabell eller ett index använder datakomprimering eller vardecimalt lagringsformat. Om du vill att en databas ska flyttas till en utgåva av SQL Server som inte stöder den här funktionen använder du instruktionen ALTER TABLE eller ALTER INDEX för att ta bort datakomprimering. Om du vill ta bort vardecimalt lagringsformat använder du instruktionen sp_tableoption. Mer information finns i datakomprimering.

  • MultipleFSContainers: Anger att databasen använder flera FILESTREAM-containrar. Databasen har en FILESTREAM-filgrupp med flera containrar (filer). Mer information finns i FILESTREAM (SQL Server).

  • InMemoryOLTP: Anger att databasen använder In-Memory OLTP. Databasen har en MEMORY_OPTIMIZED_DATA filgrupp. Mer information finns i In-Memory OLTP (In-Memory Optimization).

  • Partitionering. Anger att databasen innehåller partitionerade tabeller, partitionerade index, partitionsscheman eller partitionsfunktioner. För att göra det möjligt att flytta en databas till en annan version av SQL Server än Enterprise eller Developer är det inte tillräckligt att ändra tabellen så att den finns på en enda partition. Du måste ta bort den partitionerade tabellen. Om tabellen innehåller data använder du SWITCH PARTITION för att konvertera varje partition till en icke-partitionerad tabell. Ta sedan bort den partitionerade tabellen, partitionsschemat och partitionsfunktionen.

  • TransparentDataEncryption. Anger att en databas krypteras med hjälp av transparent datakryptering. Om du vill ta bort transparent datakryptering använder du ALTER DATABASE-instruktionen. Mer information finns i transparent datakryptering (TDE).

Not

Från och med SQL Server 2016 (13.x) Service Pack 1 är dessa funktioner, förutom TransparentDataEncryption tillgängliga i flera SQL Server-utgåvor och inte begränsat till endast Enterprise- eller Developer-utgåvor.

Kör följande instruktion i databasen för att avgöra om en databas använder några funktioner som är begränsade till specifika utgåvor:

SELECT feature_name
FROM sys.dm_db_persisted_sku_features;
GO

En lista över funktioner som stöds av versionerna av SQL Server i Windows finns i:

En lista över funktioner som stöds av utgåvorna av SQL Server i Linux finns i: