17.4.5 STORE文
- 〈この項の構成〉
(1) 機能
レコード実現値を格納します。
(2) 形式
(a) UAPに記述するSTORE文
STORE レコード名 FROM :埋込み変数
(b) DMLコマンドで記述するSTORE文
STORE レコード名 SET 構成要素名=格納値〔,構成要素名=格納値〕…
(3) オペランドの説明
- ●レコード名
-
〜<識別子>((1〜30バイト))
レコード実現値を格納するレコード名を指定します。
- 注意事項
-
-
レコード名に英小文字を使用している場合は,レコード名を引用符(")で囲んでください。引用符で囲まないと,英小文字は英大文字と見なされます。
-
レコード名に空白またはハイフン(-)を使用している場合は,レコード名を引用符(")で囲んでください。
-
- ●FROM :埋込み変数
-
格納対象のレコードの格納値を指定します。
埋込み変数の宣言方法については,マニュアル「HiRDB 構造型データベース機能(UAP開発編)」の「UAPの作成」の「埋込み変数の宣言」を参照してください。
- ●SET 構成要素名=格納値〔,構成要素名=格納値〕…
-
構成要素名:〜<識別子>((1〜30バイト))
格納するレコードの値を指定します。
指定規則を次に示します。
-
最下位レベルの構成要素(基本項目)に対する格納値を指定してください。
-
構成要素名は,レコードの定義で指定した順に指定してください。
-
指定が必要な構成要素をすべて指定してください。
・ルートレコードの場合は基本項目をすべて指定してください。
・子レコードの場合はデータ種別1がUの基本項目をすべて指定してください。
-
指定が必要な構成要素については,#USAGEコマンドの実行結果で確認できます。#USAGEコマンドの実行結果に表示されたひな形のSETオペランドに出力されている構成要素を,出力されている順にすべて指定してください。#USAGEコマンドについては,「14.8.3 #USAGE(DMLコマンドのひな形の出力)」を参照してください。
-
構成要素名に英小文字を使用している場合は,構成要素名を引用符(")で囲んでください。引用符で囲まないと,英小文字は英大文字と見なされます。
-
OCCURS句を指定して生成された構成要素名を使用する場合は引用符(")で囲んでください。OCCURS句については,「11.7.1(4)(g) OCCURS」を参照してください。
-
格納値の指定形式については,「17.2.2 DMLのデータ型」を参照してください。
-
(4) 共通規則
-
子レコードにレコードを格納する場合,次のどれかのDMLで,格納レコードの親レコードまでの位置づけをしておく必要があります。
-
格納レコードの親レコードに対するFIND文
-
格納レコードの親レコードに対するFETCH文
-
格納レコードの親レコードに対するSTORE文
-
-
埋込み変数を指定して,子レコードにレコードを格納する場合,埋込み変数に設定した値のうち,親レコードから引き継いだ構成要素に対応する値は無視されます。この場合,位置づいている親レコードと同じ値が格納されます。
-
埋込み変数を指定して,子レコードにレコードを格納する場合,埋込み変数に設定した値に対応する親レコードの子レコードとして格納されるのではなく,位置づいている親レコードの子レコードとして格納されます。
(5) 使用例
- 例1
-
ルートレコードRECAにレコードを格納します。
STORE "RECA" FROM :WRECA
- 例2
-
DMLコマンドでルートレコードRECAにレコードを格納します。
STORE "RECA" SET "KEYDATA1"=X'01020304',"USERDA0"=200,"USERDB0"=100.2