TABLE_NAME

TABLE_NAME 関数は、オブジェクトを検索して、別名チェーンが解決された後で、 そのオブジェクトの非修飾名を戻します。

構文図を読むビジュアルシンタックスダイアグラムをスキップするTABLE_NAME(オブジェクト名, オブジェクトスキーマ, location-name)

スキーマは DSN8 です。

解決の開始点は、object-name および (指定されていれば) object-schema およ び location name で指定されたオブジェクトです。 開始点が別名を参照していない場合は、開始点の非修飾名が戻されます。 結果として得られる名前としては、表、ビュー、あるいは未定義オブジェクトがあります。

object-name
解決する非修飾名を指定する文字式。 非修飾名は、通常既存の別名です。 object-name は、データ・タイプが VARCHAR で、実際の長さが 18 バイト以下でなければなりません。
オブジェクトスキーマ
解決の前に、object-name で指定された値を修飾するために用いられる スキーマを表す文字式。 object-schema は、データ・タイプが VARCHAR で、実際の長さが 8 バイト以下でなければなりません。

object-schema が指定されていないか、あるいは NULL である場合は、 修飾子の代わりにデフォルトのスキーマが使用されます。

location-name
解決の前に、object-name で指定された値を修飾するために用いられる ロケーションを表す文字式。 location-name は、データ・タイプが VARCHAR で、実際の長さが 16 バイト以下でなければなりません。

location-name が指定されていないかヌルの場合、ロケーション名は any と同等です。

関数の結果は VARCHAR(128) です。 object-name が NULL になる可能性がある場合は、結果も NULL になる可能性があります。object-name が NULL であれば、結果も NULL 値になります。

次の表に、TABLE_NAME の外部名と特定名を示します。 特定名は、関数への入力引数の数によって異なります。
表 1. TABLE_NAME の外部プログラム名および特定名
入力引数 外部名 特定名
オブジェクト名 (VARCHAR)
DSN8DUTI DSN8.DSN8DUTINV
object-name (VARCHAR)
object-schema (VARCHAR)
DSN8DUTI DSN8.DSN8DUTINVV
object-name (VARCHAR)
object-schema (VARCHAR)
location-name (VARCHAR)
DSN8DUTI DSN8.DSN8DUTINVVV

:仮定:

  • DSN8.VIEW_OF_SYSTABLES は SYSIBM.SYSTABLES のビューです。
  • DSN8.ALIAS_OF_VIEW は DSN8.VIEW_OF_SYSTABLES の別名です。
  • CURRENT SQLID は DSN8 です。
TABLE_NAME を使用して、ALIAS_OF_VIEW の基本オブジェクトの名前を検出します。
   VALUES DSN8.TABLE_NAME( 'ALIAS_OF_VIEW' );
関数の結果は 'VIEW_OF_SYSTABLES' です。