DESCRIBE CLPPlus コマンド
DESCRIBE CLPPlus コマンドは、列とそのデータ・タイプおよび表ビューの長さのリスト、プロシージャーまたは関数のパラメーターのリスト、あるいはパッケージのプロシージャーと関数およびそれらのパラメーターのリストを表示します。
DESCRIBE CLPPlus コマンドでは、記述するデータベース・オブジェクトのタイプを指定できます。 表示するオブジェクトのタイプを指定しないと、指定の名前とスキーマを持つすべてのオブジェクトが表示されます。 デフォルト・スキーマは CURRENT SCHEMA です。
DESCRIBE CLPPlus コマンドは、テンポラル表をサポートしています。
呼び出し
このコマンドは CLPPlus インターフェースから実行することができます。
許可
なし
必要な接続
データベースに接続している必要があります。
コマンド構文
コマンド・パラメーター
- TABLE
- 表示するデータベース・オブジェクトのタイプを表に指定します。
- VIEW
- 表示するデータベース・オブジェクトのタイプをビューに指定します。
- ALIAS
- 表示するデータベース・オブジェクトのタイプを別名に指定します。
- PROCEDURE
- 表示するデータベース・オブジェクトのタイプをプロシージャーに指定します。
- FUNCTION
- 表示するデータベース・オブジェクトのタイプを関数に指定します。
- SYNONYM
- 表示するデータベース・オブジェクトのタイプをシノニムに指定します。
- PACKAGE
- 表示するデータベース・オブジェクトのタイプをパッケージに指定します。
- MODULE
- 表示するデータベース・オブジェクトのタイプをモジュールに指定します。
- schema
- 表示するオブジェクトが属するスキーマの名前を指定します。 デフォルト・スキーマは CURRENT SCHEMA です。
- object
- 表示する表、ビュー、プロシージャー、関数、またはパッケージの名前を指定します。
例
以下の例では、DESCRIBE コマンドを実行して、ABCD という名前の表の詳細情報を取得します。
SQL> DESCRIBE TABLE ABCD ;
TABLE - ABCD
Name Data Type Type schema Length Scale Nulls Hidden
-------------------- --------------- --------------- -------- -------- ----- --------
ROLL INTEGER SYSIBM 4 0 Y N
NAME CHARACTER SYSIBM 10 0 Y P
以下の例では、DESCRIBE コマンドを実行して、バイテンポラル表の詳細を取得します。
SQL > create table policy
(
policy_id int NOT NULL,
coverage int NOT NULL IMPLICITLY HIDDEN,
bus_start date NOT NULL,
bus_end date NOT NULL,
system_start TIMESTAMP(12) generated always as row begin NOT NULL,
system_end TIMESTAMP(12) generated always as row end NOT NULL,
trans_start generated always as transaction start ID,
period BUSINESS_TIME(bus_start, bus_end),
period SYSTEM_TIME (system_start, system_end)
);
Db250000I: The command completed successfully.
SQL> create table policy_hist LIKE policy;
Db250000I: The command completed successfully.
SQL> ALTER TABLE policy ADD VERSIONING USE HISTORY TABLE policy_hist;
Db250000I: The command completed successfully.
SQL> describe policy
TABLE - POLICY
********************************************************************************
Name Data Type Type schema Length Scale Nulls Hidden
------------------- ------------- ------------- -------- ------- ----- --------
POLICY_ID INTEGER SYSIBM 4 0 N Not
COVERAGE INTEGER SYSIBM 4 0 N Implicit
BUS_START TIMESTAMP SYSIBM 7 0 N Not
BUS_END TIMESTAMP SYSIBM 7 0 N Not
SYSTEM_START TIMESTAMP SYSIBM 13 12 N Not
SYSTEM_END TIMESTAMP SYSIBM 13 12 N Not
TRANS_START TIMESTAMP SYSIBM 13 12 Y Not
Temporal Type : Bitemporal
Table is versioned and has the following periods
---------------------------------------------------------
Name Type Begin Column End Column
-------------------- ---- --------------- ---------------
SYSTEM_TIME S SYSTEM_START SYSTEM_END
BUSINESS_TIME A BUS_START BUS_END
********************************************************************************以下の例では、DESCRIBE コマンドを実行して、システム期間があるもののバージョン管理されていない表の詳細を取得します。
SQL> create table demo_nontemp
(
policy_id int NOT NULL,
coverage int NOT NULL IMPLICITLY HIDDEN,
system_start TIMESTAMP(12) generated always as row begin NOT NULL,
system_end TIMESTAMP(12) generated always as row end NOT NULL,
trans_start generated always as transaction start ID,
period SYSTEM_TIME (system_start, system_end)
);
Db250000I: The command completed successfully.
SQL> describe demo_nontemp
TABLE - TEMPTAB
********************************************************************************
Name Data Type Type schema Length Scale Nulls Hidden
------------------- ------------- ------------- -------- ------- ----- --------
POLICY_ID INTEGER SYSIBM 4 0 N Not
COVERAGE INTEGER SYSIBM 4 0 N Implicit
SYSTEM_START TIMESTAMP SYSIBM 13 12 N Not
SYSTEM_END TIMESTAMP SYSIBM 13 12 N Not
TRANS_START TIMESTAMP SYSIBM 13 12 Y Not
Table has the following periods
---------------------------------------------------------
Name Type Begin Column End Column
-------------------- ---- --------------- ---------------
SYSTEM_TIME S SYSTEM_START SYSTEM_END
********************************************************************************以下の例では、DESCRIBE コマンドを実行して、アプリケーション期間テンポラル表の詳細を取得します。
SQL> create table demo_app
(
policy_id int NOT NULL,
coverage int NOT NULL IMPLICITLY HIDDEN,
bus_start date NOT NULL,
bus_end date NOT NULL,
period BUSINESS_TIME(bus_start, bus_end));
Db250000I: The command completed successfully.
SQL> describe demo_app
TABLE - DEMO_APP
********************************************************************************
Name Data Type Type schema Length Scale Nulls Hidden
------------------- ------------- ------------- -------- ------- ----- --------
POLICY_ID INTEGER SYSIBM 4 0 N Not
COVERAGE INTEGER SYSIBM 4 0 N Implicit
BUS_START TIMESTAMP SYSIBM 7 0 N Not
BUS_END TIMESTAMP SYSIBM 7 0 N Not
Temporal Type : Application period temporal
Table has the following periods
---------------------------------------------------------
Name Type Begin Column End Column
-------------------- ---- --------------- ---------------
BUSINESS_TIME A BUS_START BUS_END
********************************************************************************以下の例では、DESCRIBE コマンドを実行して、システム期間テンポラル表の詳細を取得します。
SQL> create table demo_sys
(
policy_id int NOT NULL,
coverage int NOT NULL IMPLICITLY HIDDEN,
system_start TIMESTAMP(12) generated always as row begin NOT NULL,
system_end TIMESTAMP(12) generated always as row end NOT NULL,
trans_start generated always as transaction start ID,
period SYSTEM_TIME (system_start, system_end)
);
Db250000I: The command completed successfully.
SQL> create table demo_sys_history like demo_sys ;
Db250000I: The command completed successfully.
SQL> ALTER TABLE DEMO_SYS ADD VERSIONING USE HISTORY TABLE DEMO_SYS_HISTORY;
Db250000I: The command completed successfully.
SQL> desc demo_sys
TABLE - DEMO_SYS
********************************************************************************
Name Data Type Type schema Length Scale Nulls Hidden
------------------- ------------- ------------- -------- ------- ----- --------
POLICY_ID INTEGER SYSIBM 4 0 N Not
COVERAGE INTEGER SYSIBM 4 0 N Implicit
SYSTEM_START TIMESTAMP SYSIBM 13 12 N Not
SYSTEM_END TIMESTAMP SYSIBM 13 12 N Not
TRANS_START TIMESTAMP SYSIBM 13 12 Y Not
Temporal Type : System period temporal
Table is versioned and has the following periods
---------------------------------------------------------
Name Type Begin Column End Column
-------------------- ---- --------------- ---------------
SYSTEM_TIME S SYSTEM_START SYSTEM_END
********************************************************************************
