7.76.3 INSERT の使用例

例1:キーが指定されているCUSTMSTというファイルにフィールド#CUSTNO、#NAME、#ADDL1、および#POSTCDを挿入します。

INSERT  FIELDS(#CUSTNO #NAME #ADDL1 #POSTCD) TO_FILE(CUSMST)
 

または、以下のように指定しても同じ結果になります。

GROUP_BY  NAME(#CUSTOMER) FIELDS(#CUSTNO #NAME #ADDL1 #POSTCD)
INSERT    FIELDS(#CUSTOMER) TO_FILE(CUSMST)
 

例2:顧客の詳細を入力するようユーザーに要求します。入力された顧客がすでに存在する場合はフィールドを更新し、それ以外の場合は新しい顧客レコードを作成します。

GROUP_BY  NAME(#CUSTOMER) FIELDS(#CUSTNO #NAME #ADDL1 #POSTCD)
 
REQUEST   FIELDS(#CUSTOMER)
CHECK_FOR IN_FILE(CUSMST) WITH_KEY(#CUSTNO)
 
IF_STATUS IS(*EQUALKEY)
UPDATE    FIELDS(#CUSTOMER) IN_FILE(CUSMST) WITH_KEY(#CUSTNO)
ELSE
INSERT    FIELDS(#CUSTOMER) TO_FILE(CUSMST)
ENDIF
 

例3:現在アクティブなバージョンのすべての実フィールドをファイルCUSMSTに挿入します。

INSERT  FIELDS(*ALL_REAL) TO_FILE(CUSMST)
 

例4:ファイルCUSMSTに新しいレコードを挿入する際に住所フィールドを除外します。

GROUP_BY  NAME(#XG_ADDR) FIELDS(#ADDL1 #POSTCD)
INSERT    FIELDS(*ALL *EXCLUDING #XG_ADDR) TO_FILE(CUSMST)