9.2.4 格納領域設定
定義した表を格納する領域を指定できます。さらに,HiRDBに表を定義する場合は,表の任意の列をキーに表を分割して異なるRDエリアに格納できます。表を格納する領域及びRDエリアへの表の格納条件は[格納領域設定]ダイアログボックスから定義します。
- 〈この項の構成〉
(1) [格納領域設定]ダイアログボックス
[格納領域設定]ダイアログボックスを次に示します。
- タイトルバー
-
「格納領域設定」と表示されます。
- [格納領域名・条件(R)]
-
HiRDBに表を定義する場合は,表を格納するRDエリア名を指定します。
ORACLEに表を定義する場合は,表を格納するテーブルスペース名を指定します。
HiRDBに表を定義する場合,任意の列をキーにして表を分割し,異なるRDエリアへ格納できます。このとき,表を分割するための条件式(格納条件)もこの領域に指定します。格納条件の指定方法については,「9.2.4(3) 規則と注意」を参照してください。
- [列名(C)]
-
HiRDBの場合,LONG VARBINARY属性の列名が表示されます。
- [LOB列格納領域(O)]
-
HiRDBの場合,列名に対するLOB列格納領域名を指定します。
- [設定(S)]ボタン
-
指定された表の格納領域及び格納条件を確定し,[表定義]ダイアログボックスに戻ります。表を削除する場合,ボタン名は[OK]と表示されます。
- [列(L)...]ボタン
-
[列定義]ダイアログボックスを表示します。
- [列詳細(P)...]ボタン
-
[列詳細定義]ダイアログボックスを表示します。
- [インデクス(I)...]ボタン
-
[インデクス定義]ダイアログボックスを表示します。
- ガイダンス領域
-
ダイアログボックスの一番下に,[格納領域設定]ダイアログボックスの領域やボタンの簡単な操作方法や定義内容などを表示します。操作方法を知りたいときは,マウスポインタを目的の領域やボタンなどに合わせてクリックしてください。
(2) 操作
表を格納する領域の指定と,RDエリアへの表の格納条件の指定方法について,例題に沿って説明します。
(例題)定義した表「SHIIRE」をRDエリア「RDAREA1」に格納します。
-
列を定義した後,[列定義]ダイアログボックスの[領域(R)...]ボタンをクリックします。
[格納領域設定]ダイアログボックスが表示されます。
- 補足
-
[格納領域設定]ダイアログボックスは列が定義されていれば,[表定義]ダイアログボックス,[列詳細定義]ダイアログボックス及び[インデクス定義]ダイアログボックスから表示できます。
[領域(R)...]ボタンをクリックしてください。
-
[格納領域(R)]に表を格納するRDエリア名を指定します。
ここでは,例題に従って次のように指定します。
(例)(RDAREA1)
ORACLEの場合は,テーブルスペース名を指定します。
- 補足
-
HiRDBに定義した表を,異なるRDエリアに分割して格納する場合は,RDエリア名の後ろに格納条件を指定します。格納条件の指定方法については,「9.2.4(3) 規則と注意」を参照してください。
(例)
SPRICE(定価)に300以上の値を持つ行データをRDAREA1
に格納します。300未満の値を持つ行データをRDAREA2に格納します。
指定例
(RDAREA1)SPRICE△>=△300,(RDAREA2)SPRICE△<△300
-
定義が終了したら,[設定(S)]ボタンをクリックします。
定義情報が確定されて,[表定義]ダイアログボックスに戻ります。
(3) 規則と注意
(a) 格納領域を指定するときの注意(HiRDBの場合)
表を格納するRDエリアは,HiRDBの初期設定ユティリティであらかじめ定義しておきます。RDエリアの定義については,マニュアル「HiRDB コマンドリファレンス」を参照してください。
HiRDBの場合,LONG VARBINARY属性の列名は[LOB列格納領域]の[列名]に表示されます。列名を選択して[LOB列格納領域]で列名の格納領域を指定してください。
(b) 格納条件の指定方法
HiRDBへ表を定義する場合,任意の列をキーにして表を分割し,異なるRDエリアへ格納できます。格納条件は,表格納用RDエリア名の後ろに次の形式で指定します。
-
格納条件::=列名△※1比較演算子△{ 定数 | ( 定数 [ ,定数 ]・・・)※2 }
- 注※1
-
△は半角の空白を示します。
- 注※2
-
定数を複数個指定する場合,比較演算子には「=」を使います。また,指定する定数の値は重複しないように指定してください。
比較演算子の指定方法は次のとおりです。
-
比較演算子::= { = | <> | < | <= | > | >= }
- 注
-
比較演算できる列は次に示すデータ型を持つ列です。
DECIMAL,INTEGER,SMALLINT,FLOAT,SMALLFLT,CHAR,DATE,TIME
ただし,CHARはデータ長が32バイト以下の列に対して指定できます。
(c) 格納条件を指定するときの注意
-
一つの表を格納するときは,格納条件を512個まで指定できます。ただし,一つの格納条件は,一つのRDエリア名と対応している必要があります。したがって,RDエリア名は重複しないように指定してください。
-
格納条件には,同じ列名を指定してください。ただし,格納条件を省略すると,それ以前に指定した格納条件に当てはまらないデータが,指定したRDエリアに格納されます。例えば,格納領域と格納条件を次のように指定します。
(例)(RDAREA1)SPRICE△>=△300,
(RDAREA2)
このとき,SPRICEが300以上の値を持つ行データはRDエリア「RDAREA1」に格納されます。しかし,この条件に当てはまらない行データは,すべてRDエリア「RDAREA2」に格納されます。
また,格納条件に間違いがある場合は,表の定義ができなくなります。
-
すべての格納条件で指定されている定数の総数が512個以下となるようにしてください。格納条件を省略した場合も,定数を一つ指定したことになります。