Condividi tramite


sys.dm_db_persisted_sku_features (Transact-SQL)

Alcune caratteristiche del Motore di database di SQL Server comportano una modifica del metodo di archiviazione delle informazioni nei file di database da parte del Motore di database. Queste funzionalità sono disponibili solo in edizioni specifiche di SQL Server. Un database che contiene queste funzionalità non può essere spostato in un'edizione di SQL Server in cui tali funzionalità non sono supportate. Utilizzare la vista a gestione dinamica sys.dm_db_persisted_sku_features per elencare tutte le funzionalità specifiche dell'edizione abilitate nel database corrente.

Nome colonna

Tipo di dati

Descrizione

feature_name

sysname

Nome esterno della funzionalità abilitata nel database ma non supportata in tutte le edizioni di SQL Server. Questa funzionalità deve essere rimossa prima di poter eseguire la migrazione del database in tutte le edizioni disponibili di SQL Server.

feature_id

int

ID funzionalità associato alla funzionalità. Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future..

Autorizzazioni

È richiesta l'autorizzazione VIEW DATABASE STATE per il database.

Osservazioni

Se nel database non è in uso alcuna funzionalità il cui utilizzo è limitato a un'edizione specifica, la vista non restituisce righe.

sys.dm_db_persisted_sku_features può elencare le funzionalità di modifica del database seguenti come limitate a SQL Server Enterprise Edition o Developer Edition:

  • ColumnStoreIndex. Indica che almeno una tabella ha un indice columnstore con ottimizzazione per la memoria xVelocity. Per consentire lo spostamento di un database in un'edizione di SQL Server diversa da Enterprise o Developer, utilizzare l'istruzione DROP INDEX o ALTER INDEX per rimuovere l'indice columnstore.

    Si applica a: SQL Server (da SQL Server 2012 a versione corrente).

  • Compressione. Indica che la compressione dei dati o il formato di archiviazione vardecimal viene utilizzato almeno in una tabella o in un indice. Per consentire lo spostamento di un database in un'edizione di SQL Server diversa da Enterprise o Developer, utilizzare l'istruzione ALTER TABLE o ALTER INDEX per rimuovere la compressione dei dati. Per rimuovere il formato di archiviazione vardecimal, utilizzare l'istruzione sp_tableoption.

  • Partizionamento. Indica che il database contiene tabelle partizionate, indici partizionati, schemi di partizione o funzioni di partizione. Per consentire di spostare un database in un'edizione di SQL Server diversa da Enterprise o Developer, non è sufficiente modificare la tabella affinché sia inclusa in una singola partizione, ma è necessario rimuovere la tabella partizionata. Se la tabella contiene dati, utilizzare SWITCH PARTITION per convertire ogni partizione in una tabella non partizionata. Eliminare quindi la tabella partizionata, lo schema di partizione e la funzione di partizione.

  • TransparentDataEncryption. Indica che un database viene crittografato utilizzando Transparent Data Encryption. Per rimuovere Transparent Data Encryption, utilizzare l'istruzione ALTER DATABASE. Per ulteriori informazioni, vedere Transparent Data Encryption (TDE).

  • ChangeCapture. Indica che Change Data Capture è abilitato in un database. Per rimuovere l'acquisizione dati delle modifiche, utilizzare la stored procedure sys.sp_cdc_disable_db.

Per determinare se in un database sono in uso funzionalità disponibili solo in edizioni specifiche, eseguire l'istruzione seguente nel database:

SELECT feature_name FROM sys.dm_db_persisted_sku_features ;
GO

Vedere anche

Riferimento

Funzioni e viste a gestione dinamica (Transact-SQL)

Viste a gestione dinamica relative ai database (Transact-SQL)