Delen via


sys.dm_db_persisted_sku_features (Transact-SQL)

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Sommige functies van de database-engine wijzigen de manier waarop gegevens worden opgeslagen in de databasebestanden. Deze functies zijn beperkt tot specifieke edities van SQL Server. Een database die deze functies bevat, kan niet worden verplaatst naar een editie van SQL Server die deze niet ondersteunt. Gebruik de sys.dm_db_persisted_sku_features dynamische beheerweergave om editiespecifieke functies weer te geven die zijn ingeschakeld in de huidige database.

Kolomnaam Gegevenstype Beschrijving
feature_name sysname- Externe naam van de functie die is ingeschakeld in de database, maar niet wordt ondersteund op alle edities van SQL Server. Deze functie moet worden verwijderd voordat de database kan worden gemigreerd naar alle beschikbare edities van SQL Server.
feature_id Functie-id die is gekoppeld aan de functie. Alleen ter informatie geïdentificeerd. Niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd..

Machtigingen

Voor SQL Server 2019 (15.x) en eerdere versies is de machtiging VIEW DATABASE STATE vereist voor de database.

Voor SQL Server 2022 (16.x) en latere versies is de machtiging VIEW DATABASE PERFORMANCE STATE vereist voor de database.

Opmerkingen

Als er geen functies zijn die mogelijk worden beperkt door een specifieke editie in de database, retourneert de weergave geen rijen.

sys.dm_db_persisted_sku_features kan de volgende functies voor het wijzigen van databases weergeven, zoals beperkt tot specifieke SQL Server-edities:

  • ChangeCapture-: Geeft aan dat een database wijzigingsgegevensregistratie heeft ingeschakeld. Als u het vastleggen van wijzigingen wilt verwijderen, gebruikt u de sys.sp_cdc_disable_db opgeslagen procedure. Zie Over Change Data Capture (SQL Server)voor meer informatie.

  • ColumnStoreIndex: geeft aan dat ten minste één tabel een columnstore-index heeft. Als u wilt dat een database wordt verplaatst naar een editie van SQL Server die deze functie niet ondersteunt, gebruikt u de instructie DROP INDEX of ALTER INDEX instructie om de columnstore-index te verwijderen. Zie Columnstore-indexenvoor meer informatie.

  • Compression: geeft aan dat ten minste één tabel of index gebruikmaakt van gegevenscompressie of de vardecimale opslagindeling. Als u wilt dat een database wordt verplaatst naar een editie van SQL Server die deze functie niet ondersteunt, gebruikt u de instructie ALTER TABLE of ALTER INDEX instructie om gegevenscompressie te verwijderen. Als u de vardecimale opslagindeling wilt verwijderen, gebruikt u de instructie sp_tableoption. Zie Gegevenscompressievoor meer informatie.

  • MultipleFSContainers: geeft aan dat de database meerdere FILESTREAM-containers gebruikt. De database heeft een FILESTREAM-bestandsgroep met meerdere containers (bestanden). Zie FILESTREAM (SQL Server)voor meer informatie.

  • InMemoryOLTP: geeft aan dat de database gebruikmaakt van In-Memory OLTP. De database heeft een MEMORY_OPTIMIZED_DATA bestandsgroep. Zie In-Memory OLTP (In-Memory Optimization)voor meer informatie.

  • Partitioneren. Geeft aan dat de database gepartitioneerde tabellen, gepartitioneerde indexen, partitieschema's of partitiefuncties bevat. Als u wilt dat een database kan worden verplaatst naar een andere editie van SQL Server dan Enterprise of Developer, is het onvoldoende om de tabel te wijzigen zodat deze zich in één partitie bevindt. U moet de gepartitioneerde tabel verwijderen. Als de tabel gegevens bevat, gebruikt u SWITCH PARTITION om elke partitie te converteren naar een niet-gepartitioneerde tabel. Verwijder vervolgens de gepartitioneerde tabel, het partitieschema en de partitiefunctie.

  • TransparentDataEncryption. Geeft aan dat een database is versleuteld met behulp van transparante gegevensversleuteling. Als u transparante gegevensversleuteling wilt verwijderen, gebruikt u de instructie ALTER DATABASE. Zie TDE -(Transparent Data Encryption) voor meer informatie.

Notitie

Vanaf SQL Server 2016 (13.x) Service Pack 1 zijn deze functies, met uitzondering van TransparentDataEncryption- beschikbaar in meerdere SQL Server-edities en niet alleen voor Enterprise- of Developer-edities.

Als u wilt bepalen of een database gebruikmaakt van functies die beperkt zijn tot specifieke edities, voert u de volgende instructie uit in de database:

SELECT feature_name
FROM sys.dm_db_persisted_sku_features;
GO

Zie voor een lijst met functies die worden ondersteund door de edities van SQL Server in Windows:

Zie voor een lijst met functies die worden ondersteund door de edities van SQL Server in Linux: