SQLTablesSQLTables

適用対象: yesSQL Server yesAzure SQL Database yesAzure Synapse Analytics (SQL DW) yesParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure Synapse Analytics (SQL DW) yesParallel Data Warehouse

SQLTables は、静的サーバーカーソルで実行できます。SQLTables can be executed on a static server cursor. 更新可能なカーソル (動的カーソルまたはキーセットカーソル) で SQLTables を実行しようとすると、カーソルの種類が変更されたことを示す SQL_SUCCESS_WITH_INFO が返されます。An attempt to execute SQLTables on an updatable (dynamic or keyset) cursor will return SQL_SUCCESS_WITH_INFO indicating that the cursor type has been changed.

CatalogNameパラメーターが SQL_ALL_CATALOGS、他のすべてのパラメーターに既定値 (NULL ポインター) が含まれている場合、sqltables はすべてのデータベースのテーブルを報告します。SQLTables reports tables from all databases when the CatalogName parameter is SQL_ALL_CATALOGS and all other parameters contain default values (NULL pointers).

使用可能なカタログ、スキーマ、およびテーブルの種類をレポートするために、SQLTables は空の文字列 (長さゼロのバイトポインター) を特別に使用します。To report available catalogs, schemas, and table types, SQLTables makes special use of empty strings (zero-length byte pointers). 空文字列は、既定値 (NULL ポインター) ではありません。Empty strings are not default values (NULL pointers).

SQL ServerSQL Server Native Client ODBC ドライバーでは、 CatalogNameパラメーターの2部構成の名前を使用して、リンクサーバー上のテーブルの情報をレポートすることができます。 Linked_Server_Name Catalog_Nameです。The SQL ServerSQL Server Native Client ODBC driver supports reporting information for tables on linked servers by accepting a two-part name for the CatalogName parameter: Linked_Server_Name.Catalog_Name.

SQLTables は、名前がTableNameに一致し、現在のユーザーが所有しているテーブルに関する情報を返します。SQLTables returns information about any tables whose names match TableName and are owned by the current user.

SQLTables とテーブル値パラメーターSQLTables and Table-Valued Parameters

ステートメント属性 SQL_SOPT_SS_NAME_SCOPE の値が既定値の SQL_SS_NAME_SCOPE_TABLE ではなく SQL_SS_NAME_SCOPE_TABLE_TYPE の場合、SQLTables はテーブル型に関する情報を返します。When the statement attribute SQL_SOPT_SS_NAME_SCOPE has the value SQL_SS_NAME_SCOPE_TABLE_TYPE, rather than its default value of SQL_SS_NAME_SCOPE_TABLE, SQLTables returns information about table types. SQLTables によって返される結果セットの列4のテーブル型に対して返される TABLE_TYPE 値はテーブル型です。The TABLE_TYPE value returned for a table type in column 4 of the result set returned by SQLTables is TABLE TYPE. SQL_SOPT_SS_NAME_SCOPE の詳細については、「 SQLSetStmtAttr」を参照してください。For more information on SQL_SOPT_SS_NAME_SCOPE, see SQLSetStmtAttr.

テーブル、ビュー、およびシノニムは、テーブル型によって使用される名前空間とは異なる、共通の名前空間を共有します。Tables, views, and synonyms share a common namespace that is distinct from the namespace used by table types. テーブルとビューを同じ名前にすることはできませんが、同じ名前のテーブルとテーブル型を同じカタログおよびスキーマ内に配置することはできます。Although it is not possible to have a table and a view with the same name, it is possible to have a table and a table type with the same in the same catalog and schema.

テーブル値パラメーターの詳細については、「テーブル値パラメーター (の)ODBC」を参照してください。For more information about table-valued parameters, see Table-Valued Parameters (ODBC).

Example

// Get a list of all tables in the current database.  
SQLTables(hstmt, NULL, 0, NULL, 0, NULL, 0, NULL,0);  
  
// Get a list of all tables in all databases.  
SQLTables(hstmt, (SQLCHAR*) "%", SQL_NTS, NULL, 0, NULL, 0, NULL,0);  
  
// Get a list of databases on the current connection's server.  
SQLTables(hstmt, (SQLCHAR*) "%", SQL_NTS, (SQLCHAR*)"", 0, (SQLCHAR*)"",  
    0, NULL, 0);  

参照See Also

Sqltables 関数 SQLTables Function
ODBC API 実装の詳細ODBC API Implementation Details