14.3.2 4V FMBのSDBデータベースのレコードを削除する
4V FMBのSDBデータベースのレコードを削除します。
-
SDBデータベース名:FMB1
-
削除対象のレコード名:FMB1_RECC
4V FMBのSDBデータベースの階層構造,および格納されているレコード実現値については,「14.3.1 4V FMBのSDBデータベースのレコードを更新する」と同じです。
手順
-
pdsdbexeコマンドを実行する
pdsdbexe -u '"User01"/"Pswd01"'
-
STARTコマンドを実行して個別開始する
START "FMB1" NEXT ? +----2----+----3----+----4----+----5----+----6----+----7----+----8 ACSMODE UPDATE NEXT ? +----2----+----3----+----4----+----5----+----6----+----7----+----8 ENQOPT EXCLUSIVE;
STARTコマンドの実行結果:
DIRECTORY CHECK DATE INFORMATION PDSDBDEF EXEC DATE : 2015-12-14 16:20:46.67 SDB DIRECTORY UPDATE DATE : 2015-01-15 14:58:41.91 ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8 HiRDB SERVER VERSION INFORMATION SERVER VERSION : 09-60 KFPB64050-I DINF(GET DATE) command processing completed ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8 START INFORMATION SDB DATABASE NAME "FMB1" HANDLE NUMBER : 1 ACSMODE : UPDATE ENQOPT : EXCLUSIVE AUTODEQ : NO RDAREAVAL : NO KFPB64050-I DINF(GET SDB SUMMARY) command processing completed KFPB64050-I DINF(GET SDB DETAIL) command processing completed KFPB64050-I START command processing completed
-
FETCHコマンドを実行して,ルートレコードの検索を行う
FETCH "FMB1_RECA" FIRST WHERE (DBKEY='AA00');
FETCHコマンドの実行結果:
FETCH INFORMATION FETCH DATA 1 "DBKEY_L1" 'AA00' 2 "RECA_UD1" 123. 3 "RECA_UD2" -9.8 ROWID : X'070000001900000000000100' PAGE NUM : 100 KFPB64050-I FETCH command processing completed
-
FETCHコマンドを実行して,子レコードを検索する
FETCH "FMB1_RECB" FIRST WHERE (DBKEY=1);
FETCHコマンドの実行結果:
FETCH INFORMATION FETCH DATA 1 "DBKEY" 1 2 "RECB_UK" 'B1' 3 "RECB_UD" X'3131' FETCH SERIAL NUM : 1 ROWID : X'070000001900000000000200' USER POINTER SERIAL NUM : 0 SECOND INDEX KIND : NOUSE RECORD POINTER STATUS : FIRST KFPB64050-I FETCH command processing completed
-
FETCHコマンドを実行して,削除対象レコードへの位置づけを行う
FETCH "FMB1_RECC" FIRST;
FETCHコマンドの実行結果:
FETCH INFORMATION FETCH DATA 1 "DBKEY" 1 2 "RECC_UK" 'E111' FETCH SERIAL NUM : 1 ROWID : X'070000001900000000000300' SECOND INDEX KIND : NOUSE RECORD POINTER STATUS : FIRST KFPB64050-I FETCH command processing completed
-
ERASEコマンドを実行して,レコードを削除する
ERASE "FMB1_RECC" TARGET OCCURRENCE;
-
削除対象のレコードが正しいかを確認する
ERASE RECORD INFORMATION RECORD KIND : CHILD RECORD DBKEY : 1 AGREE TO ERASE DBKEY AND ALL ? [ENTER YES OR NO] YES ←上記の情報を確認後,YESを指定します。
ERASEコマンドの実行結果:
ERASE INFORMATION KFPB64050-I ERASE command processing completed
-
FETCHコマンドを実行して,レコードが削除されたことを確認する
FETCH "FMB1_RECC" FIRST;
FETCHコマンドの実行結果:
FETCH INFORMATION SECOND INDEX KIND : NOUSE FETCH TERMINATED : NOUSE KFPA12100-I No rows satisfying search condition KFPB64050-I FETCH command processing completed
-
COMMITコマンドを実行して,レコードの削除を確定する
COMMIT;
COMMITコマンドの実行結果:
KFPB64050-I COMMIT command processing completed
-
#EXITコマンドを実行して,pdsdbexeコマンドを終了する
#EXIT;
#EXITコマンドの実行結果:
KFPB64050-I DISCONNECT command processing completed KFPB64050-I #EXIT command processing completed KFPB64000-I The pdsdbexe terminated, return code = 0
- 参考
-
コマンド入力画面に表示されるプロンプトについては,「表14-3 入力画面で表示されるプロンプト」を参照してください。