 |
SQL Engine Reference (v11) |
 |
|
Pervasive PSQL システム カタログ関数
システム カタログ関数を使用すると、データ辞書ファイル(「カタログ」とも呼ばれます)からデータベース メタデータを取得することができます。システム カタログ関数は FROM 句でのみ使用できます。
Pervasive PSQL では、ODBC のカタログ API を呼び出したり、システム ストアド プロシージャ(システム ストアド プロシージャを参照)を使用したりすることによって、メタデータ情報を返すこともできます。しかし、これら 2 つの方法はメタデータをビューに格納しません。ビューでは、ほかのテーブルとの JOIN や UNION が行えます。ほかのテーブルとの JOIN および UNION 機能を提供するには、システム カタログ関数が必要です。
ADO.NET など一部のアクセス方法では、JOIN および UNION の機能を利用できるように、エンティティ サポートのためのシステム カタログ関数を必要とします。
各システム カタログ関数のテンポラリ ビュー スキーマは、SQLPrepare で作成されます。SQLExecute で対応する ODBC カタログ API を呼び出すことにより、そのビューにデータが格納されます。
次の表は、利用可能なシステム カタログ関数を示しています。
表 108 システム カタログ関数
Pervasive PSQL 関数
|
戻り値
|
ODBC 関数比較1
|
|
現在のデータベースまたは指定されたデータベースの、特定テーブルの列の一覧とそれに関連する情報。
|
SQLColumns
|
|
現在のデータベース内の特定テーブルの外部キー情報。
|
SQLForeignKeys
|
|
現在のデータベースまたは指定されたデータベースの、特定テーブルの主キー情報。
|
SQLPrimaryKeys
|
|
現在のデータベースまたは指定されたデータベースの、ストアド プロシージャの名前。
|
SQLProcedures
|
|
入力パラメーターおよび出力パラメーターのリストと、指定されたプロシージャの結果セットを構成する列。
|
SQLProcedureColumns
|
|
指定されたテーブル内の行を一意に識別する最適な列セットに関する情報、または、トランザクションによって行内の任意の値が更新されたときに自動的に更新される列に関する情報。
|
SQLSpecialColumns
|
|
現在のデータベースまたは指定されたデータベースの、ある単一テーブルに関する統計情報と、そのテーブルに関連付けられているインデックスの一覧。
|
SQLStatistics
|
|
現在のデータベースまたは指定されたデータベースの、テーブルの一覧とそれに関連する情報。
|
SQLTables
|
1 Pervasive PSQL のカタログ関数は ODBC のカタログ関数に基づいているので、追加情報については、必要に応じて ODBC のドキュメントを参照してください。この章では、Pervasive PSQL カタログ関数を理解し使用するのに十分な情報を提供していますが、完全な技術的詳細を提供していません。
|
リターン ステータス
各システム カタログ関数は、実行結果に応じて以下のステータスのいずれかを返します。
- SQL_SUCCESS
- SQL_SUCCESS_WITH_INFO
- SQL_STILL_EXECUTING
- SQL_ERROR
- SQL_INVALID_HANDLE
まとめ
システム カタログ関数には、次のような特徴が適用されます。
- メタデータ情報を返す。
- ビューと同じように動作する。
- SELECT ステートメントの FROM 句でのみ参照できる。
- パラメーターは、定数または動的パラメーター(?)の形式でのみ指定できる。
 システム カタログ関数 |
 dbo.fSQLColumns |
|