STORE |
[RECORD] [IN] [FILE] view-name |
|||||
[PASSWORD=operand1]
|
||||||
[CIPHER=operand2]
|
||||||
|
|
|
USING |
|
NUMBER operand3 |
|
|
GIVING |
||||||
STORE |
[RECORD] [IN] [FILE] view-name |
|||||
[PASSWORD=operand1]
|
||||||
[CIPHER=operand2]
|
||||||
|
|
|
USING |
|
NUMBERoperand3 |
|
|
GIVING |
||||||
|
|
[USING] SAME [RECORD] [AS] [STATEMENT [(r)]] |
|
||||
|
|
SET |
|
[operand4=operand5] |
|||
WITH |
||||||
このドキュメントでは、次のトピックについて説明します。
構文図で使用されている記号については、「構文記号」を参照してください。
関連ステートメント:ACCEPT/REJECT | AT BREAK | AT START OF DATA | AT END OF DATA | BACKOUT TRANSACTION | BEFORE BREAK PROCESSING | DELETE | END TRANSACTION | FIND | GET | GET SAME | GET TRANSACTION DATA | HISTOGRAM | LIMIT | PASSW | PERFORM BREAK PROCESSING | READ | RETRY | UPDATE |
関連機能グループ:データベースへのアクセスと更新
STORE ステートメントは、データベースにレコードを追加するために使用します。
| Adabas | Natural システム変数 *ISN には、STORE ステートメントの実行の結果として新しいレコードに割り当てられた Adabas ISN が含まれます。*ISN を後で参照するには、関連する STORE ステートメントのステートメント番号が含まれている必要があります。
|
|---|---|
| SQL |
このステートメントは、SQL テーブルに行を追加するために使用できます。 Natural システム変数 |
| XML |
このステートメントは、データベースに XML オブジェクトを追加するために使用できます。 Tamino の場合、Natural システム変数 |
オペランド定義テーブル:
| オペランド | 構文要素 | フォーマット | オペランド参照 | ダイナミック定義 | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
operand1 |
C | S | A | ○ | × | |||||||||||||||
operand2 |
C | S | N | ○ | × | |||||||||||||||
operand3 |
C | S | N | P | B * | × | ○ | |||||||||||||
operand4 |
S | A | A | U | N | P | I | F | B | D | T | L | × | × | ||||||
operand5 |
C | S | A | A | U | N | P | I | F | B | D | T | L | ○ | × | |||||
* operand3 のフォーマット B は、4 以下の長さでのみ使用できます。
構文要素の説明:
| 構文要素 | 説明 |
|---|---|
view-name |
ビュー名:
レポーティングモードでは、 |
PASSWORD=operand1 |
PASSWORD 節:
この節は、パスワード保護されたファイルのデータを更新するときのパスワード( |
CIPHER=operand2 |
CIPHER 節:
この節は、暗号化されたファイルのデータを更新するときのサイファキー( 詳細については、 |
USING NUMBER
operand3 |
USING NUMBER 節:
この節は、Adabas データベースでのみ使用できます。 |
GIVING NUMBER
operand3
|
GIVING NUMBER 節:
この節は、ユーザー指定の Adabas ISN を持つレコードを保存するために使用します。指定した ISN を持つレコードがすでに存在しているとエラーメッセージが返され、 |
SET/WITHoperand4=operand5 |
SET/HOLD 節:
この節は、 |
USING SAME
(r) |
USING SAME 節:
レポーティングモードでは、この節を使用して、 ステートメント参照表記 この節は、 |
** Example 'STOEX1S': STORE (structured mode)
**
** CAUTION: Executing this example will modify the database records!
************************************************************************
DEFINE DATA LOCAL
1 EMPL-VIEW VIEW OF EMPLOYEES
2 PERSONNEL-ID
2 NAME
2 FIRST-NAME
2 MAR-STAT
2 BIRTH
2 CITY
2 COUNTRY
*
1 #PERSONNEL-ID (A8)
1 #NAME (A20)
1 #FIRST-NAME (A15)
1 #BIRTH-D (D)
1 #MAR-STAT (A1)
1 #BIRTH (A8)
1 #CITY (A20)
1 #COUNTRY (A3)
1 #CONF (A1)
END-DEFINE
*
REPEAT
INPUT 'ENTER A PERSONNEL ID AND NAME (OR ''END'' TO END)' //
'PERSONNEL-ID : ' #PERSONNEL-ID //
'NAME : ' #NAME /
'FIRST-NAME : ' #FIRST-NAME
/*
/* VALIDATE ENTERED DATA
/*
IF #PERSONNEL-ID = 'END' OR #NAME = 'END'
STOP
END-IF
IF #NAME = ' '
REINPUT WITH TEXT 'ENTER A LAST-NAME' MARK 2 AND SOUND ALARM
END-IF
IF #FIRST-NAME = ' '
REINPUT WITH TEXT 'ENTER A FIRST-NAME' MARK 3 AND SOUND ALARM
END-IF
/*
/* ENSURE PERSON IS NOT ALREADY ON FILE
/*
FIND NUMBER EMPL-VIEW WITH PERSONNEL-ID = #PERSONNEL-ID
IF *NUMBER > 0
REINPUT 'PERSON WITH SAME PERSONNEL-ID ALREADY EXISTS'
MARK 1 AND SOUND ALARM
END-IF
MOVE 'N' TO #CONF
/*
/* GET FURTHER INFORMATION
/*
INPUT
'ADDITIONAL PERSONNEL DATA' ////
'PERSONNEL-ID :' #PERSONNEL-ID (AD=IO) /
'NAME :' #NAME (AD=IO) /
'FIRST-NAME :' #FIRST-NAME (AD=IO) ///
'MARITAL STATUS :' #MAR-STAT /
'DATE OF BIRTH (YYYYMMDD) :' #BIRTH /
'CITY :' #CITY /
'COUNTRY (3 CHARACTERS) :' #COUNTRY //
'ADD THIS RECORD (Y/N) :' #CONF (AD=M)
/*
/* ENSURE REQUIRED FIELDS CONTAIN VALID DATA
/*
IF NOT (#MAR-STAT = 'S' OR = 'M' OR = 'D' OR = 'W')
REINPUT TEXT 'ENTER VALID MARITAL STATUS S=SINGLE ' -
'M=MARRIED D=DIVORCED W=WIDOWED' MARK 1
END-IF
IF NOT (#BIRTH = MASK(YYYYMMDD) AND #BIRTH = MASK(1582-2699))
REINPUT TEXT 'ENTER CORRECT DATE' MARK 2
END-IF
IF #CITY = ' '
REINPUT TEXT 'ENTER A CITY NAME' MARK 3
END-IF
IF #COUNTRY = ' '
REINPUT TEXT 'ENTER A COUNTRY CODE' MARK 4
END-IF
IF NOT (#CONF = 'N' OR= 'Y')
REINPUT TEXT 'ENTER Y (YES) OR N (NO)' MARK 5
END-IF
IF #CONF = 'N'
ESCAPE TOP
END-IF
/*
/* ADD THE RECORD
/*
MOVE EDITED #BIRTH TO #BIRTH-D (EM=YYYYMMDD)
/*
EMPL-VIEW.PERSONNEL-ID := #PERSONNEL-ID
EMPL-VIEW.NAME := #NAME
EMPL-VIEW.FIRST-NAME := #FIRST-NAME
EMPL-VIEW.MAR-STAT := #MAR-STAT
EMPL-VIEW.BIRTH := #BIRTH-D
EMPL-VIEW.CITY := #CITY
EMPL-VIEW.COUNTRY := #COUNTRY
/*
STORE RECORD IN EMPL-VIEW
/*
END OF TRANSACTION
/*
WRITE NOTITLE 'RECORD HAS BEEN ADDED'
/*
END-REPEAT
END
ENTER A PERSONNEL ID AND NAME (OR 'END' TO END)
PERSONNEL-ID : 90001100
NAME : JONES
FIRST-NAME : EDWARD
ADDITIONAL PERSONNEL DATA
PERSONNEL-ID : 90001100
NAME : JONES
FIRST-NAME : EDWARD
MARITAL STATUS :
DATE OF BIRTH (YYYYMMDD) :
CITY :
COUNTRY (3 CHARACTERS) :
ADD THIS RECORD (Y/N) : N
レポーティングモードの例については、次のプログラムを参照してください:STOEX1R