共用方式為


sys.masked_columns (Transact-SQL)

適用於:Microsoft Fabric 中的 SQL Server 2016 (13.x) 和更新版本 Azure SQL 資料庫 Azure SQL 受控執行個體 SQL Database

使用sys.masked_columns檢視來查詢已套用動態數據遮罩函式的數據表數據行。 此檢視繼承自 sys.columns 檢視。 它會傳回 sys.columns 檢視中的所有數據行,加上is_maskedmasking_function數據行,指出數據行是否已遮罩,如果是,則會定義遮罩函式。 此檢視只會顯示套用遮罩函式的數據行。

資料行名稱 資料類型 描述
object_id int 這個數據行所屬之對象的標識碼。
NAME sysname 資料行的名稱。 在物件中是唯一的。
column_id int 數據行的識別碼。 在物件中是唯一的。

數據行標識碼可能不是循序的。
sys.masked_columns傳回繼承自 sys.columns 的更多數據行。 various 如需更多數據行定義,請參閱 sys.columns (Transact-SQL)。
is_masked bit 指出數據行是否已遮罩。 1 表示遮罩。
masking_function nvarchar(4000) 數據行的遮罩函式。
generated_always_type tinyint 適用於:SQL Server 2016 (13.x) 和更新版本,以及 SQL Database。 7、8、9、10 僅適用於 SQL 資料庫。

識別何時產生資料行值(系統數據表中的數據行一律為 0):

0 = NOT_APPLICABLE
1 = AS_ROW_START
2 = AS_ROW_END
7 = AS_TRANSACTION_ID_START
8 = AS_TRANSACTION_ID_END
9 = AS_SEQUENCE_NUMBER_START
10 = AS_SEQUENCE_NUMBER_END

如需詳細資訊,請參閱時態表(關係資料庫)。

權限

此檢視會傳回使用者擁有數據表某種許可權的數據表資訊,或者如果使用者具有 VIEW ANY DEFINITION 許可權,則傳回該數據表的相關信息。

範例

下列查詢會將 sys.masked_columns 聯結至 sys.tables ,以傳回所有遮罩數據行的相關信息。

SELECT tbl.name as table_name, c.name AS column_name, c.is_masked, c.masking_function  
FROM sys.masked_columns AS c  
JOIN sys.tables AS tbl   
    ON c.object_id = tbl.object_id  
WHERE is_masked = 1;  

另請參閱

動態資料遮罩
sys.columns (Transact-SQL)