14.5.2 FETCH(レコードの検索)
(1) 機能
1つのレコード実現値を取得します。また,操作対象レコードの位置づけを行います。
(2) 指定形式
指定形式については,「17.4.2 FETCH文」の「(2) 形式」の「DMLコマンドで記述するFETCH文」を参照してください。
- 注意事項
-
-
最後にセミコロン( ; )の指定が必要です。
-
オペランドの指定順序は変更できません。
-
(3) オペランドの説明
オペランドの説明については,「17.4.2 FETCH文」の「(3) オペランドの説明」を参照してください。
(4) 使用例
- ■SD FMBのSDBデータベースのルートレコードの検索例
FETCH FIRST "FMB1000";
次の実行結果が表示されます。
FETCH INFORMATION FETCH DATA 1 "KEYDATA1" 'AAAA' 2 "KEYDATA2" 'BBBB' 3 "USERDA0" 123.45 ROWID : X'070000001900000000000100' KFPB64050-I FETCH command processing completed
- ■SD FMBのSDBデータベースの子レコードの検索例
FETCH FIRST "FMB101" WITHIN OWNER;
次の実行結果が表示されます。
FETCH INFORMATION FETCH DATA 1 "DBKEY" 1 2 "USERDB0" 'bbbb' FETCH SERIAL NUM : 1 ROWID : X'070000001900000000000200' RECORD POINTER STATUS : FIRST_LAST KFPB64050-I FETCH command processing completed
(5) FETCHコマンドの実行時に表示される情報
FETCHコマンドの実行が終了した際,次に示す実行結果が表示されます。
FETCH INFORMATION FETCH DATA 1 "OCNUM" 1 ...1 2 "USERDATA" '00000001' ...1 FETCH SERIAL NUM : 1 ...2 ROWID : X'280000001900000000008000' ...3 RECORD POINTER STATUS : FIRST ...4
- [説明]
-
上記のすべての情報が常に表示されるわけではありません。検索対象のレコードや,検索結果によって表示される項目が異なります。
-
構成要素の通番,構成要素名,検索データが表示されます。
検索データは次の形式で表示されます。
項番
構成要素のデータ型
検索データの表示形式
表示例
1
CHARACTER
文字列定数の形式で表示されます。
'aaabbb'
2
XCHARACTER
16進文字列定数の形式で表示されます。
X'01020304'
3
PACKED DECIMAL FIXED
10進数定数の形式で表示されます。
123.456
4
INTEGER
SMALLINT
整数定数の形式で表示されます。
100
各定数の形式については,マニュアル「HiRDB SQLリファレンス」の「定数」を参照してください。
-
検索したレコードの一連番号が表示されます。
-
検索したレコードのROWIDが表示されます。
-
レコード格納時のレコードポインタ情報が表示されます。
FIRST:検索したレコードは,FIRSTポインタで示されています。
LAST:検索したレコードは,LASTポインタで示されています。
FIRST_LAST:検索したレコードは,FIRSTポインタおよびLASTポインタで示されています。
NONE:検索したレコードは,FIRSTポインタおよびLASTポインタのどちらにも示されていません。
-
(6) 留意事項
-
FETCHコマンドにFOR UPDATEを指定する場合,SDB用UAP環境定義のsubschemaオペランドの-aオプションにupdateを指定してください。SDB用UAP環境定義については,「9.3 SDB用UAP環境定義【SD FMB】」を参照してください。
-
FETCHコマンドは,個別開始している状態で実行してください。
そのほかの留意事項については,「17.4.2 FETCH文」の「(4) 共通規則」を参照してください。