sp_column_privileges_ex (Transact-SQL)

適用於:SQL Server

傳回指定之連結伺服器上的指定資料表的資料行許可權。

Transact-SQL 語法慣例

語法

  
sp_column_privileges_ex [ @table_server = ] 'table_server'   
     [ , [ @table_name = ] 'table_name' ]   
     [ , [ @table_schema = ] 'table_schema' ]   
     [ , [ @table_catalog = ] 'table_catalog' ]   
     [ , [ @column_name = ] 'column_name' ]  

引數

[ @table_server = ] 'table_server' 這是要傳回信息的連結伺服器名稱。 table_server為 sysname ,沒有預設值。

[ @table_name = ] 'table_name' 這是包含指定資料行的資料表名稱。 table_name sysname ,預設值為 Null。

[ @table_schema = ] 'table_schema' 這是資料表架構。 table_schema sysname ,預設值為 Null。

[ @table_catalog = ] 'table_catalog' 這是指定 之table_name 所在的資料庫名稱。 table_catalog sysname ,預設值為 Null。

[ @column_name = ] 'column_name' 這是要提供許可權資訊的資料行名稱。 column_name為 sysname ,預設值為 Null(所有通用)。

結果集

下表顯示結果集資料行。 傳回的結果會依 TABLE_QUALIFIER TABLE_OWNER、TABLE_NAME COLUMN_NAME PRIVILEGE 排序。

資料行名稱 資料類型 描述
TABLE_CAT sysname 資料表限定詞名稱。 各種 DBMS 產品支援資料表的三部分命名( 限定詞。 擁有者 name )。 在 SQL Server 中,此資料行代表資料庫名稱。 在某些產品中,它代表資料表資料庫環境的伺服器名稱。 此欄位可以是 Null。
TABLE_SCHEM sysname 資料表擁有者名稱。 在 SQL Server 中,此資料行代表建立資料表的資料庫使用者名稱。 此欄位一律會傳回值。
TABLE_NAME sysname 資料表名稱。 此欄位一律會傳回值。
COLUMN_NAME sysname 傳回TABLE_NAME 之每個資料行的資料 行名稱。 此欄位一律會傳回值。
GRANTOR sysname 已授與此 COLUMN_NAME 授與許可權的資料庫使用者名稱給列出的 GRANTEE 。 在 SQL Server 中,此資料行一律與 TABLE_OWNER 相同。 此欄位一律會傳回值。

GRANTOR 資料 行可以是資料庫擁有者( TABLE_OWNER ),或是資料庫擁有者在 GRANT 語句中使用 WITH GRANT OPTION 子句授與許可權的人員。
GRANTEE sysname 已由列出的 GRANTOR 授與此COLUMN_NAME 許可權 的資料庫使用者名稱。 此欄位一律會傳回值。
特權 Varchar( 32 其中一個可用的資料行許可權。 資料行許可權可以是下列其中一個值(或定義實作時資料來源所支援的其他值):

SELECT = GRANTEE 可以擷取資料行的資料。

INSERT = GRANTEE 可以在資料表中插入新資料列時, 提供此資料行的資料。

UPDATE = GRANTEE 可以修改資料行中的現有資料。

REFERENCES = GRANTEE 可以在主鍵/外鍵關聯性中參考外表中的資料行。 主鍵/外鍵關聯性是使用資料表條件約束來定義。
IS_GRANTABLE Varchar( 3 指出 GRANTEE 是否 允許將許可權授與其他使用者(通常稱為「授與授與」許可權)。 可以是 YES、NO 或 Null。 未知或 Null 值是指「授與授與」不適用的資料來源。

權限

需要架構的 SELECT 許可權。

範例

下列範例會傳 HumanResources.Department 回連結伺服器上資料庫中 Seattle1 資料表 AdventureWorks2022 的資料行許可權資訊。

EXEC sp_column_privileges_ex @table_server = 'Seattle1',   
   @table_name = 'Department',   
   @table_schema = 'HumanResources',  
   @table_catalog ='AdventureWorks2022';  

另請參閱

sp_table_privileges_ex (Transact-SQL)
系統預存程序 (Transact-SQL)