sp_tables_ex (Transact-SQL)

適用対象:SQL Server

指定したリンク サーバーのテーブルに関するテーブル情報を返します。

Transact-SQL 構文表記規則

構文

sp_tables_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @table_type = ] N'table_type' ]
    [ , [ @fUsePattern = ] fUsePattern ]
[ ; ]

引数

[ @table_server = ] N'table_server'

テーブル情報を返すリンク サーバーの名前。 @table_serverは sysname で、既定値はありません。

[ @table_name = ] N'table_name'

データ型情報を返すテーブルの名前。 @table_nameは sysname で、既定値は NULL.

[ @table_schema = ] N'table_schema'

テーブル スキーマ。 @table_schemaは sysname で、既定値は NULL.

[ @table_catalog = ] N'table_catalog'

指定した table_name が存在するデータベースの名前。 @table_catalogは sysname で、既定値は NULL.

[ @table_type = ] N'table_type'

返すテーブルの型。 @table_typeは sysname であり、次のいずれかの値を持つことができます。

Value 説明
ALIAS エイリアスの名前。
GLOBAL TEMPORARY システム全体で使用可能な一時テーブルの名前。
LOCAL TEMPORARY 現在のジョブでのみ使用できる一時テーブルの名前。
SYNONYM シノニムの名前。
SYSTEM TABLE システム テーブルの名前です。
SYSTEM VIEW システム ビューの名前。
TABLE ユーザー テーブルの名前。
VIEW ビューの名前。

[ @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 テーブル名。 このフィールドには常に値が返されます。
TABLE_TYPE varchar(32) テーブル、システム テーブル、またはビュー。
REMARKS varchar(254) SQL Server は、この列の値を返しません。

解説

sp_tables_ex は、table_serverに対応する OLE DB プロバイダーのインターフェイスの TABLES 行セット IDBSchemaRowset に対してクエリを 実行することによって実行されますtable_nametable_schematable_catalog、列の各パラメーターがこのインターフェイスに渡され、返される行が制限されます。

sp_tables_ex は、指定されたリンク サーバーの OLE DB プロバイダーがインターフェイスの行セットをサポートしていない場合、 TABLES 空の結果セットを IDBSchemaRowset 返します。

アクセス許可

スキーマに対する SELECT アクセス許可が必要です。

次の例では、リンク サーバー上のデータベースのスキーマに HumanResources 含まれているテーブルに関する AdventureWorks2022 情報を LONDON2 返します。

EXEC sp_tables_ex @table_server = 'LONDON2',
@table_catalog = 'AdventureWorks2022',
@table_schema = 'HumanResources',
@table_type = 'TABLE';