Hitachi

Hitachi Advanced Data Binder コマンドリファレンス


38.5.18 #TABLES(表情報の表示)

機能

表情報を表示します。

形式
#TABLES 〔スキーマ名〕 〔SHOW ALL〕;
スキーマ名

表情報を表示するスキーマ名を指定します。

スキーマ名を省略した場合,すべての表の表情報が表示されます。ただし,表示対象の表は,HADBユーザが持っている権限の有無によって異なります。留意事項を参照してください。

〔SHOW ALL〕

このオプションを指定した場合

ディクショナリ表のSQL_TABLES表のすべての列が表示されます。表示される内容については,マニュアルHADB システム構築・運用ガイドSQL_TABLESの内容を参照してください。

このオプションを省略した場合

次の表に示す内容が表示されます。

表38‒7 #TABLESで表示される内容(オプションを省略した場合)

項番

列名

内容

1

TABLE_SCHEMA

スキーマ名

2

TABLE_NAME

表識別子

3

STORAGE_FORMAT

表データの格納形式

  • 'COLUMN'

    カラムストア形式

  • 'ROW'

    ローストア形式

なお,ビュー表の場合は,ナル値が表示されます。

4

N_COLS

表の構成列数

5

N_INDEX

表に定義されているインデクス数(全インデクスの合計)

6

IS_CHUNK

チャンク指定のCHUNKの指定

  • 'Y':指定あり(マルチチャンク表)

  • 'N':指定なし(シングルチャンク表)

7

N_CHUNK

存在するチャンク数

列名IS_CHUNKで'N'が出力されている場合は,ナル値が表示されます。

8

N_CHUNK_RESERVED

作成されるチャンク数の最大値

9

CREATE_TIME

表定義時のタイムスタンプ

留意事項
  • #TABLESを実行して表示される表情報の範囲は,HADBユーザが持っている権限によって異なります。表示される表情報の範囲を次に示します。

    DBA権限または監査管理権限を持っているHADBユーザの認可識別子で接続している場合
    • すべてのHADBユーザが定義した表

    • スキーマ名がMASTERの表

    上記の権限を持っていないHADBユーザの認可識別子で接続している場合
    • 自分(HADBサーバに接続中の認可識別子のHADBユーザ)が定義した表

    • ほかのHADBユーザによって付与されたアクセス権限の対象となる表

    • PUBLIC指定で許可された表

    • スキーマ名がMASTERの表

    なお,#TABLESを実行して表示される表情報の範囲は,ディクショナリ表のSQL_TABLES表を参照できる範囲と同じです。詳細については,マニュアルHADB システム構築・運用ガイドディクショナリ表の概要HADBユーザが参照できるディクショナリ表の範囲を参照してください。

  • #TABLESを実行すると,ディクショナリ表の排他が取得されます。#TABLESを実行したあと,すぐにCOMMIT文を実行してください。COMMIT文を実行しないと,ディクショナリ表の排他が解放されません。ただし,#TABLESを実行したあとで,adbsqlコマンドを終了する場合は,ディクショナリ表の排他は解放されるため,COMMIT文の実行は不要です。

  • 存在しないスキーマ名を指定した場合,#TABLESの実行結果は0行になります(エラーにはなりません)。

  • #SET DISPLAYOFF(検索結果を出力しない)を指定していても,#TABLESの実行結果は出力されます。adbsqlサブコマンドの#SET DISPLAYについては,「38.5.12 #SET DISPLAY(検索結果の出力)」を参照してください。

  • #SET EXECTIME REPORTON(SQL文の実行時間を出力する)を指定していても,#TABLESの実行時間は出力されません。adbsqlサブコマンドの#SET EXECTIME REPORTについては,「38.5.14 #SET EXECTIME REPORT(SQL文の実行時間の出力)」を参照してください。

  • #SET OPT REPORTON(インデクス情報,作業表情報,およびアクセスパス情報を表示する)を指定していても,#TABLESの実行時に,インデクス情報,作業表情報,およびアクセスパス情報は出力されません。adbsqlサブコマンドの#SET OPT REPORTについては,「38.5.16 #SET OPT REPORT(インデクス情報,作業表情報,およびアクセスパス情報の表示)」を参照してください。

  • #SET OPT REPORTEXEC=PREPARE(SQL文を実行しない)を指定していても,#TABLESの実行結果は出力されます。