sp_table_privileges_ex (Transact-SQL)
適用対象:SQL Server
指定したリンク サーバーから、指定したテーブルの特権情報を返します。
構文
sp_table_privileges_ex
[ @table_server = ] N'table_server'
[ , [ @table_name = ] N'table_name' ]
[ , [ @table_schema = ] N'table_schema' ]
[ , [ @table_catalog = ] N'table_catalog' ]
[ , [ @fUsePattern = ] fUsePattern ]
[ ; ]
引数
[ @table_server = ] N'table_server'
情報を返すリンク サーバーの名前。 @table_serverは sysname で、既定値はありません。
[ @table_name = ] N'table_name'
テーブル権限情報を提供するテーブルの名前。 @table_nameは sysname で、既定値は NULL
.
[ @table_schema = ] N'table_schema'
テーブル スキーマ。 これは、一部の DBMS 環境ではテーブル所有者です。 @table_schemaは sysname で、既定値は NULL
.
[ @table_catalog = ] N'table_catalog'
指定した @table_name が存在するデータベースの名前。 @table_catalogは sysname で、既定値は NULL
.
[ @fUsePattern = ] fUsePattern
文字 _
、、%
、[
]
およびワイルドカード文字として解釈されるかどうかを判断します。 有効な値は 0
(パターン マッチングがオフ)、( 1
パターン マッチングがオン) です。 @fUsePatternはビットで、既定値は 1
.
リターン コードの値
なし。
結果セット
列名 | データ型 | 説明 |
---|---|---|
TABLE_CAT |
sysname | テーブルの修飾子名です。 さまざまな DBMS 製品では、テーブルの 3 部構成の名前付け (<qualifier>.<owner>.<name> ) がサポートされています。 SQL Server では、この列はデータベース名を表します。 一部の製品では、テーブルのデータベース環境のサーバー名を表します。 このフィールドは NULL . |
TABLE_SCHEM |
sysname | テーブル所有者の名前。 SQL Server では、この列は、テーブルを作成したデータベース ユーザーの名前を表します。 このフィールドには常に値が返されます。 |
TABLE_NAME |
sysname | テーブル名。 このフィールドには常に値が返されます。 |
GRANTOR |
sysname | リストにGRANTEE 対するアクセス許可TABLE_NAME が付与されているデータベース ユーザー名。 SQL Server では、この列は常に TABLE_OWNER . このフィールドには常に値が返されます。 また、列にはGRANTOR 、データベース所有者 (TABLE_OWNER ) またはデータベース所有者がステートメント内GRANT の句を使用WITH GRANT OPTION してアクセス許可を付与したユーザーがあります。 |
GRANTEE |
sysname | 一覧に示GRANTOR されているデータベース ユーザー名に対するTABLE_NAME アクセス許可が付与されています。 このフィールドには常に値が返されます。 |
PRIVILEGE |
varchar(32) | 使用可能なテーブル権限の 1 つ。 テーブルのアクセス許可には、次の値のいずれか、または実装が定義されている場合にデータ ソースでサポートされるその他の値を指定できます。SELECT = GRANTEE では、1 つ以上の列のデータを取得できます。INSERT = GRANTEE では、1 つ以上の列の新しい行のデータを提供できます。UPDATE = GRANTEE では、1 つ以上の列の既存のデータを変更できます。DELETE = GRANTEE では、テーブルから行を削除できます。REFERENCES = GRANTEE では、主キー/外部キーリレーションシップの外部テーブル内の列を参照できます。 SQL Server では、主キーと外部キーのリレーションシップはテーブル制約を使用して定義されます。特定のテーブル権限によって与えられる GRANTEE アクションのスコープは、データ ソースに依存します。 たとえば、 UPDATE ある GRANTEE データ ソースのテーブル内のすべての列を更新し、別のデータ ソースに対する UPDATE 権限を持つ列 GRANTOR のみを更新できます。 |
IS_GRANTABLE |
varchar(3) | 他のユーザーにアクセス許可を GRANTEE 付与することを許可するかどうかを示します。 これは、"許可の許可" 権限と呼ばれることがあります。 YES 、NO 、または NULL を指定できます。 不明な値または NULL 、"grant を使用した許可" が適用されないデータ ソースを参照します。 |
解説
返される結果は 、 TABLE_QUALIFIER
、、 TABLE_OWNER
、 TABLE_NAME
、および PRIVILEGE
.
アクセス許可
スキーマに対する SELECT
アクセス許可が必要です。
例
次の例では、指定したリンク サーバーからデータベースで始まる Product
名前を AdventureWorks2022
持つテーブルに関する特権情報を返します Seattle1
。 SQL Server はリンク サーバーと見なされます。
EXEC sp_table_privileges_ex @table_server = 'Seattle1',
@table_name = 'Product%',
@table_schema = 'Production',
@table_catalog ='AdventureWorks2022';
関連するコンテンツ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示