共用方式為


sys.dm_db_persisted_sku_features (Transact-SQL)

SQL Server Database Engine 的某些功能會變更 Database Engine 將資訊儲存在資料庫檔案中的方式, 這些功能受限為特定版本的 SQL Server。 包含這些功能的資料庫無法移到不支援這些功能的 SQL Server 版本。請使用 sys.dm_db_persisted_sku_features 動態管理檢視列出目前資料庫中啟用之所有版本特有功能。

適用於:SQL Server (SQL Server 2008 至目前版本)。

資料行名稱

資料類型

描述

feature_name

sysname

資料庫中已啟用,但是所有 SQL Server 版本上不支援之功能的外部名稱。 此功能必須先移除,資料庫才可以移轉到所有可用的 SQL Server 版本。

feature_id

Int

與此功能相關聯的功能識別碼。 僅供參考之用。不支援。我們無法保證未來的相容性。.

權限

需要資料庫的 VIEW DATABASE STATE 權限。

備註

如果資料庫未使用受到版本限制的任何功能,此檢視表不會傳回任何資料列。

sys.dm_db_persisted_sku_features 可能會列出以下僅限於 SQL Server Enterprise 或 Developer 版本的資料庫變更功能:

  • **ChangeCapture。**指出資料庫已經啟用異動資料擷取。 若要移除異動資料擷取,請使用 sys.sp_cdc_disable_db 預存程序。

  • **資料行存放區索引。**指示至少一個資料表具有 xVelocity 記憶體最佳化的資料行存放區索引。 若要讓資料庫移到 Enterprise 或 Developer 以外的 SQL Server 版本,請使用 DROP INDEXALTER INDEX 陳述式移除資料行存放區索引。

    適用於:SQL Server (SQL Server 2012 至目前版本)。

  • **壓縮。**指出至少有一個資料表或索引使用資料壓縮或 Vardecimal 儲存格式。 若要讓資料庫移到 Enterprise 或 Developer 以外的 SQL Server 版本,請使用 ALTER TABLEALTER INDEX 陳述式移除資料壓縮。 若要移除 Vardecimal 儲存格式,請使用 sp_tableoption 陳述式。

  • **InMemoryOLTP。**指出資料庫使用 In-Memory OLTP。 資料庫具有 MEMORY_OPTIMIZED_DATA 檔案群組。

    適用於:SQL Server (SQL Server 2014 至目前版本)。

  • **分割區。**指出資料庫包含分割區資料表、分割區索引、分割區配置或分割區函數。 若要讓資料庫移到 SQL Server 的版本,而不是 Enterprise 或 Developer,修改位於單一分割區上的資料表是不夠的, 您必須移除分割區資料表。 如果此資料表包含資料,請使用 SWITCH PARTITION 將每一個分割區轉換成非分割區資料表, 然後刪除分割區資料表、分割區配置和分割區函數。

  • **TransparentDataEncryption。**指出資料庫的加密方式為透明資料加密。 若要移除透明資料加密,請使用 ALTER DATABASE 陳述式。 如需詳細資訊,請參閱<透明資料加密 (TDE)>。

若要判斷資料庫是否使用任何受限於特定版本的功能,請在資料庫中執行下列陳述式:

SELECT feature_name FROM sys.dm_db_persisted_sku_features ;
GO

請參閱

參考

動態管理檢視和函數 (Transact-SQL)

資料庫相關的動態管理檢視 (Transact-SQL)