GetTablesメソッド

機能

テーブル一覧を取得するために,classListTablesオブジェクトへのポインタを取得します。

形式

classListTables *GetTables(LPCTSTR lpctOwner=NULL,
                          UINT16 swType = TBL_TYPE_TABLE
                                          | TBL_TYPE_VIEW
                                          | TBL_TYPE_SYNONYM
                                          | TBL_TYPE_SYSTEM ,
                          UINT32 dwMaxSize=0,
                          LPCTSTR lpctCondition = NULL,
                          LPCTSTR lpctEscChar = NULL)
                                               throw DBSQLCA

引数

lpctOwner

テーブルの所有者名,又はNULLを指定します。

NULLを指定した場合は,参照できるすべてのテーブルを検索します。

XDM/SDの場合,指定できる所有者名は常に8バイトです。8バイト未満の所有者名を指定すると,後ろに空白が付加されます。

swType

検索するテーブルの種別を指定します。

dwMaxSize

取得するテーブル数の最大値を指定します。

0を指定した場合は,対象になるすべてのテーブルを検索します。

lpctCondition

一覧に含むテーブルのテーブル名をワイルドカードを使って指定します。この指定には,SQLのLIKE演算子に指定する文字列の形式を使ってください。

lpctEscChar

ワイルドカード文字列中に含むエスケープ文字を1文字指定します。2文字以上を指定した場合は先頭の文字を使用します。

次のデータベースの場合,この引数は指定できません。

戻り値

データ型:classListTables*

classListTablesオブジェクトへのポインタ。

機能詳細

テーブル一覧を取得するために,classListTablesオブジェクトへのポインタを取得します。

所有者名,テーブル名の順で,それぞれを昇順にソートして取得します。ただし,次のデータベースの場合,順序はDBMSに依存するため,ソートされません。

Adaptive Server Anywhereの場合は,順序はDBMSに依存するため,ソートされません。

このメソッドは,非同期実行可能なメソッドです。

発生する例外

DBSQLCA(RetCode)

DB_ERROR_NOT_ENOUGH_MEMORY
メモリ容量が不足しています。
DB_ERROR_ARGUMENT_OUT_OF_RANGE
最大件数の指定が範囲内ではありません。
DB_DRV_ERROR_INVALID_TABLELIST_TYPE
実テーブル(システム所有のテーブルを除く)以外の一覧取得はサポートしていません(XDM/SDの場合)。
DB_DRV_ERROR_NOT_SUPPORT_TABLE_LIST
シノニムの一覧表示はサポートしていません(HiRDB,XDM/RD,SQL/K,XDM/SDの場合)。
DB_ERROR_DRIVER_ERROR
DBMSでエラーが発生しました。
DB_ERROR_DAB_ACCESS_ERROR
DABrokerでエラーが発生しました。
DBSQLCAクラスで詳細コードを確認してください。
DB_ERROR_DAB_SYSTEMCALL_ERROR
システムコールでエラーが発生しました。
DBSQLCAクラスで詳細コードを確認してください。
DB_ERROR_DAB_ILLEGAL_VALUE
指定した引数が不正です。
DBSQLCAクラスで詳細コードを確認してください。
DB_ERROR_TIMEOUT
タイムアウトが発生したため制御を戻します。