DEPOSITコマンドは、RdbALTERコマンド・レベルのデフォルトです。プロンプトの後に他のコマンドを指定しないと、RdbALTERによって自動的にそのコマンドラインがDEPOSITコマンドとして解析されます。変更するフィールドの指定の後には、等号(=)と変更対象フィールドの新しい値を指定する文字列を付ける必要があります。
ROLLBACKコマンドのすぐ後でDEPOSITコマンドを使用しないでください。ROLLBACKコマンドによって現在のページ・コンテキストが削除されます。DEPOSITコマンドをROLLBACKコマンドの直後に発行すると、現在のページがないことを知らせる警告メッセージが返されます。このため、ROLLBACKコマンドの直後、DEPOSITコマンドの前に、DISPLAYまたはAREA...PAGEコマンドのいずれかを使用して場所を指定する必要があります。
STORAGE_AREA
2バイトの記憶領域IDの値を格納します。CHECKSUM
4バイトのページ・チェックサム・フィールドの値を格納します。COUNT
行索引エントリの数を示す2バイトのフィールドの値を格納します。この数が1の場合、ページにはSYSTEMレコードしか含まれません。DATA offset
指定されたバイト数を格納します。HEXADECIMALまたはDECIMAL修飾子を指定しない場合、デフォルトの基数とみなされます。RADIXコマンドでデフォルトの基数を設定する方法は、第2.18節を参照してください。BYTE、LONGWORDおよびWORD修飾子を、ASCII修飾子と一緒に使用することはできません。
ENTRY
データベース・ページの領域インベントリ・ページ(AIP)エントリを参照します。nには、0とAIPエントリ数の間の数を指定する必要があります。ABM
指定したAIPエントリに対する、最初の領域ビットマップ(ABM)ページ上の新しい値を格納します。ABM値はlongwordで格納されます。LOGICAL_AREA
AIPエントリに対する論理領域の数の新しい値を格納します。LOGICAL_AREA値はwordで格納されます。PHYSICAL_AREA
AIPエントリに対する物理領域の数の新しい値を格納します。PHYSICAL_AREA値はwordで格納されます。ALENGTH
AIPエントリに対する論理領域名の長さの新しい値を格納します。ALENGTH値は1バイトで格納されます。論理領域名の長さは1〜31バイトです。ANAME
AIPエントリに対する論理領域名の新しい値を格納します。ANAME値は、31文字のテキスト・フィールドに格納されます。TSN
AIPエントリの論理領域のスナップショット(.snp)ファイルを有効にするための、最後のトランザクション順序番号(TSN)の値を格納します。
注意
Oracle Rdbリリース7.0以降では、Oracle Rdbによって、longwordよりも大きいすべてのトランザクション順序番号がページのTSNフィールドとページTSNベースの両方を使用して格納されます。Oracle Rdbは、これら2つの値に計算式を適用して実際のTSNを計算します。longwordよりも大きいTSN値は変更しないことをお薦めします。TSNがlongwordよりも大きいとき、0以外の数がページTSNベース(ページ・テール)に格納されます。次の例に、ページTSNとページTSNベースの場所を示します。
000A 00000003 0000 page 3, physical area 10 9D091204 0006 checksum = 9D091204 009A2C0F ED786D2E 000A time stamp = 23-MAY-1996 09:08:53.36 0000 03C4 0012 964 free bytes, 0 locked 0001 0016 1 line 0005 03E4 0018 line 0: offset 03E4, 5 bytes page TSN -----> 00000000 001C line 0: TSN 0 . . . 2001 03E4 line 0 (10:3:0) SYSTEM record 00 0001 03E6 1 byte in 0 sets/dynamic items 0000000000 03E9 padding '.....' FFFFFFFF 03EE snap page pointer -1 00000000 03F2 snap pointer TSN 0 0000 03F6 MBZ '..' 00000000 03F8 page sequence number 0 page TSN base -------> 0000 03FC page TSN base 0 0000 03FE MBZ '..'
RECORD_LENGTH
AIPエントリに対するレコード・サイズの長さ(バイト)の値を格納します。RECORD_LENGTH値はwordで格納されます。INUSE
AIPエントリの使用中フラグの新しい値を格納します。INUSE値は1バイトで格納されます。FREE_SPACE
ページに残っている空き領域の容量を示す2バイトのフィールドの値を格納します。
注意
次の2つのパラメータでは、INDEXおよびLINEを表す整数は0ベースです。たとえば、INDEX 0が最初の索引、LINE 3が4行目を指します。現在のページが領域管理(SPAM)ページ、AIPページまたはABMページの場合、INDEXおよびLINEへの参照は無効です。
INDEX n
nで示される、行索引のオフセット・フィールドまたは長さフィールドの値を格納します。たとえば、DEPOSIT INDEX 3 OFFSETと入力すると、第4行の索引のオフセット・アドレス・フィールドが格納されます。LINE n
個々の記憶セグメントの情報を格納します。RECORD_TYPEフィールドの値を格納できます。LOCKED_SPACE
リカバリ・ユニットによる排他的使用のために割り当てられている空き領域の容量を示す2バイトのフィールドの値を格納します。NUMBER
4バイトのページ番号フィールドの値を格納します。SPACE range
指定した範囲のSPAMエントリの値を格納します。現在のぺージがSPAMページの場合のみ有効です。(SPACEおよびDATAパラメータのみが、SPAMページにアクセスするDISPLAYおよびDEPOSITコマンドで使用できるパラメータです。)rangeの値には、すべてのエントリを参照するアスタリスク(*)か、次のように連続する一連のエントリを指定することができます。
lower-data-page-number[:higher-data-page-number]
SPAMページの各エントリは2ビットで構成され、使用率のしきい値を表す値0〜3を含みます。たとえば、n番目のSPAMエントリに2が含まれる場合、該当範囲のn番目のデータ・ページで、領域が使用率の2番目のしきい値を超えたが、3番目のしきい値以下であることを意味します。
TIME_STAMP
8バイトの時刻と日付のスタンプ・フィールドの値を格納します。NEXT_AIP
次の領域インベントリ・ページ(AIP)のページ番号の値を格納します。AIP_ENTRIES
現在の領域インベントリ・ページにおける領域インベントリ・ページ(AIP)エントリ数の値を格納します。value
変更対象のフィールドの新しい値を指定します。次のいずれかの方法で基数を指定しないかぎり、この値がデフォルトの基数に格納されます。
- 事前のRADIXコマンド
- DEPOSIT DATAコマンドでのHEXADECIMALまたはDECIMALの指定
- 二重引用符(" ")でASCIIデータを囲んで指定。タイムスタンプは区切り記号を含むため、必ず二重引用符で囲む必要があります。
例1次の例は、現在の記憶領域のページ2と3のSPAMエントリの値1を格納します。
RdbALTER> AREA 6 PAGE 1 RdbALTER> DISPLAY SPACE 2:3 0000000000000000000000000000000B 0016 page 2: threshold 3 page 3: threshold 2 pages 4-65: threshold 0 RdbALTER> DEPOSIT SPACE 2:3=1 RdbALTER> DISPLAY SPACE 2:3 00000000000000000000000000000005 0016 pages 2-3: threshold 1 pages 4-65: threshold 0
例2
次の例は、長さが2バイトのデータ032Cをオフセット・ロケーション0012(10進数の18)に格納します。
RdbALTER> DEPOSIT DATA/HEXADECIMAL/WORD 0012=032C
例3
次の例は、記憶領域識別フィールドに新しい値0002を格納します。
RdbALTER> AREA 1 PAGE 1 RdbALTER> DISPLAY STORAGE_AREA 0001 0000 area 1 RdbALTER> DEPOSIT STORAGE_AREA=0002 RdbALTER> DISPLAY STORAGE_AREA 0002 0000 area 2
その他のDEPOSITコマンドの使用例は、『Oracle Rdb Guide to Database Maintenance』を参照してください。