SQLTables

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

SQLTable は、静的サーバー カーソルで実行できます。 更新可能 (動的またはキーセット) カーソルで SQLTables を実行しようとすると、カーソルの種類が変更されたことを示すSQL_SUCCESS_WITH_INFOが返されます。

SQLTables では、 CatalogName パラメーターがSQL_ALL_CATALOGSされ、他のすべてのパラメーターに既定値 (NULL ポインター) が含まれている場合、すべてのデータベースのテーブルがレポートされます。

使用可能なカタログ、スキーマ、およびテーブル型を報告するために、SQLTables は空の文字列 (長さ 0 のバイト ポインター) を特別に使用します。 空文字列は、既定値 (NULL ポインター) ではありません。

SQL Server Native Client ODBC ドライバーは、CatalogName パラメーターの 2 部構成の名前を受け入れることで、リンク サーバー上のテーブルのレポート情報をサポートしています: Linked_Server_Name.Catalog_Name

SQLTables は、名前が TableName と一致し、現在のユーザーが所有しているテーブルに関する情報を返します。

SQLTables とテーブル値パラメーター

ステートメント属性SQL_SOPT_SS_NAME_SCOPE SQL_SS_NAME_SCOPE_TABLEの既定値ではなく、値がSQL_SS_NAME_SCOPE_TABLE_TYPE場合、SQLTables はテーブルの型に関する情報を返します。 SQLTables によって返される結果セットの列 4 のテーブル型に対して返されるTABLE_TYPE値は TABLE TYPE です。 SQL_SOPT_SS_NAME_SCOPEの詳細については、「 SQLSetStmtAttr」を参照してください。

テーブル、ビュー、およびシノニムは、テーブル型によって使用される名前空間とは異なる、共通の名前空間を共有します。 テーブルとビューを同じ名前にすることはできませんが、同じ名前のテーブルとテーブル型を同じカタログおよびスキーマ内に配置することはできます。

テーブル値パラメーターの詳細については、「テーブル値パラメーター (ODBC)」を参照してください。

// 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);  

参照

SQLTables 関数
ODBC API 実装の詳細