BASE_TABLE
BASE_TABLE 関数は、別名に対して検出されたオブジェクトのオブジェクト名とスキーマ名を戻します。
スキーマは SYSPROC です。
- object-schema
- 指定された object-name を修飾するために使用される SQL スキーマ名または システム・スキーマ名を示す文字ストリング式またはグラフィック・ストリング式。 object-schema の実際の長さは 129 文字未満でなければなりません。 特殊値 *LIBL を指定することができ、その場合は、 ライブラリー・リスト内で見つかった、object-name という名前の ファイルの最初のインスタンスが使用されます。この名前には大/小文字の区別があり、引用符で区切られていてはなりません。
- object-name
- 解決するオブジェクトの SQL 名またはシステム名を示す 文字ストリング式またはグラフィック・ストリング式。object-name の 実際の長さは 129 文字未満でなければなりません。この名前には大/小文字の区別があり、引用符で区切られていてはなりません。
指定されたオブジェクトが別名を参照しないか、 そのオブジェクトが見つからない場合、この関数の結果は入力のオブジェクト名とスキーマになります。
この関数の結果は、次の表に示された形式の、単一の行を含んでいる表
です。列はすべてNULL 可能です。
列名 | データ・タイプ | 内容 |
---|---|---|
BASESCHEMA | VARCHAR(128) | 別名が参照する表またはビューが含まれている SQL スキーマ の名前。別名が見つからなかった場合、これは object-schema です。この名前は引用符で区切られず、大/小文字の区別があります。 |
BASENAME | VARCHAR(128) | 別名が参照する表またはビューの 名前。別名が見つからなかった場合、これは object-name です。この名前は引用符で区切られず、大/小文字の区別があります。 |
SYSTEM_TABLE_SCHEMA | CHAR(10) | システムのスキーマ名。別名が見つからなかったか、 別名がリモート RDB を参照する場合、この列には NULL 値が入ります。この名前は引用符で区切られることがあり、大/小文字の区別があります。 |
SYSTEM_TABLE_NAME | CHAR(10) | システム表名。 別名が見つからなかったか、 別名リモート RDB を参照する場合、この列には NULL 値が入ります。この名前は引用符で区切られることがあり、大/小文字の区別があります。 |
MEMBER_NAME | CHAR(10) | メンバー別名に対して識別された メンバー名。別名が見つからなかったか、別名が特定のメンバーを参照しない場合、 この列には NULL 値が入ります。この名前は引用符で区切られることがあり、大/小文字の区別があります。 |
RDBNAME | VARCHAR(128) | オブジェクトがリモート・オブジェクトの 3 部構成の別名 の場合、RDB。別名が見つからなかったか、別名に関連付けられた RDB がない場合、 この列には NULL 値が入ります。 |
結果列の CCSID は、現行サーバーでのデフォルト CCSID です。
例
- 以下の照会は、SYSTABLES 内で識別された各別名の基本表情報
を戻します。
SELECT C.BASESCHEMA, C.BASENAME FROM QSYS2.SYSTABLES A, LATERAL ( SELECT * FROM TABLE(SYSPROC.BASE_TABLE(A.TABLE_SCHEMA,A.TABLE_NAME)) AS X) AS C WHERE A.TABLE_TYPE=’A’