Hitachi

ノンストップデータベース HiRDB Version 10 構造型データベース機能


14.4.2 ERASE(レコードの削除)

〈この項の構成〉

(1) 機能

指定したレコード実現値を削除します。

(2) 指定形式

 ERASE レコード名
 
       TARGET {SEGMENT|OCCURRENCE};
注意事項
  • 最後にセミコロン( ; )の指定が必要です。

  • オペランドの指定順序は変更できません。

(3) オペランドの説明

●レコード名

〜<識別子>((1〜30バイト))

レコード実現値を削除するレコード名を指定します。4V AFMのSDBデータベースの場合は,子レコード名を指定します。

レコード名に英小文字を使用している場合は,レコード名を引用符( " )で囲んでください。引用符で囲まないと,英小文字は英大文字と見なされます。

TARGET {SEGMENT|OCCURRENCE}

レコード実現値の削除範囲を指定します。

SEGMENT

最下位レベルのレコードに位置づけしている場合は,位置づけしているレコードのレコード実現値だけを削除します。

最下位レベル以外のレコードに位置づけしている場合は,位置づけしているレコードのレコード実現値と,その下位レベルのレコードのレコード実現値を削除します。

OCCURRENCE

最下位レベルのレコード型の全レコード実現値を削除します。

4V FMBのSDBデータベースの最下位レベルのレコード型に対してだけOCCURRENCEを指定できます。

なお,4V FMBのSDBデータベースで,かつルートレコードの場合は,最下位のレコードであってもOCCURRENCEを指定できません。

(4) 使用例

ERASEコマンドを実行してレコード実現値を削除する手順を次に示します。

手順

  1. ERASEコマンドを実行する

     ERASE "FMB101" TARGET SEGMENT;
  2. 削除対象のレコードが正しいかを確認する

     ERASE RECORD INFORMATION
       RECORD KIND                     : CHILD RECORD
       DBKEY                           : 1
     AGREE TO ERASE DBKEY AND FOLLOWERS ? [ENTER YES OR NO]
     YES     ←上記の情報を確認後,YESを指定します。

    ERASEコマンドを実行してよいかどうかの確認メッセージが表示されます。

    削除対象のレコード種別(RECORD KIND),および削除対象レコードのDBKEYを確認してから,YESを指定してください。

    参考

    削除対象のレコード種別などに誤りがある場合は,NOを指定してERASEコマンドの実行を中止してください。

  3. ERASEコマンドの実行結果を確認する

     ERASE INFORMATION
       USER POINTER                    : OPERATED
     KFPB64050-I ERASE command processing completed

    ERASEコマンドの実行結果が表示されます。

(5) ERASEコマンドの実行時に表示される情報

ERASEコマンドの実行時に表示される情報について説明します。

(a) ERASEコマンドの実行確認メッセージ

ERASEコマンドを実行した際,次に示す確認メッセージが表示されます。

(例)

 ERASE RECORD INFORMATION
   RECORD KIND                     : CHILD RECORD         ...1
   DBKEY                           : 1                    ...2
 AGREE TO ERASE DBKEY AND FOLLOWERS ? [ENTER YES OR NO]   ...3
[説明]
  1. 削除対象のレコード種別が表示されます。

    ROOT RECORD:削除対象レコードがルートレコードであることを意味しています。

    CHILD RECORD:削除対象レコードが子レコードであることを意味しています。

  2. 削除対象レコードのDBKEY(位置づけているDBKEY)が表示されます。

    削除対象レコードがルートレコードの場合は,ルートレコードのDBKEYが表示されます。

    削除対象レコードがルートレコード以外の場合は,指定したレコードの一連番号が表示されます。

  3. ERASEコマンドを実行するかどうかの確認メッセージが表示されます。

    レコード種別およびDBKEYを確認(1.および2.の情報を確認)し,問題がない場合はYESまたはyesを指定してください。

    ERASEコマンドの実行を中止する場合は,NOまたはnoを指定してください。

    参考
    • YESまたはyes以外を指定した場合,NOが指定されたと見なされます。

    • TARGETの指定値がSEGMENTの場合は,次の確認メッセージが表示されます。

      AGREE TO ERASE DBKEY AND FOLLOWERS ? [ENTER YES OR NO]

      TARGETの指定値がOCCURRENCEの場合は,次の確認メッセージが表示されます。

      AGREE TO ERASE DBKEY AND ALL ? [ENTER YES OR NO]

(b) ERASEコマンドの実行結果

ERASEコマンドの実行が終了した際,次に示す実行結果が表示されます。

 ERASE INFORMATION
   USER POINTER : OPERATED    ...1
[説明]
  1. USERポインタを操作したかどうかが表示されます。

    USERポインタを操作した場合は,OPERATEDが表示されます。USERポインタを操作していない場合は,この項目は表示されません。

(6) 留意事項

  1. ERASEコマンドは,個別開始している状態で実行してください。

  2. 削除対象のレコードへの位置づけをしておいてください。位置づけをしていない場合は,エラーになります。

  3. ERASEコマンドが正常終了したあとに#EXITコマンドを実行する場合は,次のようにpdsdbexe操作コマンドを実行してください。

    • レコードの削除を実行したトランザクションを正常終了させたい場合は,COMMITコマンドを実行してください。

    • レコードの削除を実行したトランザクションを取り消したい場合は,ROLLBACKコマンドを実行してください。