DELETE [RECORD ] [IN ] [STATEMENT ] [(r )]
|
このドキュメントでは、次のトピックについて説明します。
構文図で使用されている記号については、「構文記号」を参照してください。
関連ステートメント:ACCEPT/REJECT
| AT BREAK
| AT START OF DATA
| AT END OF DATA
| BACKOUT TRANSACTION
| BEFORE BREAK PROCESSING
| END TRANSACTION
| FIND
| GET
| GET SAME
| GET TRANSACTION DATA
| HISTOGRAM
| LIMIT
| PASSW
| PERFORM BREAK PROCESSING
| READ
| RETRY
| STORE
| UPDATE
関連機能グループ:データベースへのアクセスと更新
DELETE
ステートメントは、データベースからレコードを削除するために使用します。
DELETE
ステートメントを使用すると、対応する FIND
や READ
ステートメントで選択した各レコードは排他的ホールド状態になります。
レコードのホールドロジックの詳細については、『プログラミングガイド』の「データベース更新 - トランザクション処理」セクションを参照してください。
DELETE
ステートメントは、FIND
、READ
、または GET
ステートメントと同じ行に指定することはできません。
構文要素 | 説明 |
---|---|
(r) |
ステートメント参照:
表記 ステートメント参照の指定がない場合、 |
SQL データベース |
ほとんどの SQL データベースでは、 |
---|---|
XML データベース | DELETE ステートメントは、データベースから XML オブジェクトを削除するために使用します。XML データベースでは、最後に読み取られたレコードのみを削除できます。
|
この例では、ALDEN
を含むレコードがすべて削除されます。
** Example 'DELEX1': DELETE ** ** CAUTION: Executing this example will modify the database records! ************************************************************************ DEFINE DATA LOCAL 1 EMPLOY-VIEW VIEW OF EMPLOYEES 2 NAME END-DEFINE * FIND EMPLOY-VIEW WITH NAME = 'ALDEN' /* DELETE END TRANSACTION /* AT END OF DATA WRITE NOTITLE *NUMBER 'RECORDS DELETED' END-ENDDATA END-FIND END
VEHICLES
ファイルで ALDEN という名前の人物が見つからない場合は、ALDEN の EMPLOYEE
レコードが削除されます。
** Example 'DELEX2': DELETE ** ** CAUTION: Executing this example will modify the database records! ************************************************************************ DEFINE DATA LOCAL 1 EMPLOY-VIEW VIEW OF EMPLOYEES 2 PERSONNEL-ID 2 NAME 1 VEHIC-VIEW VIEW OF VEHICLES 2 PERSONNEL-ID END-DEFINE * EMPL. FIND EMPLOY-VIEW WITH NAME = 'ALDEN' /* VEHC. FIND VEHIC-VIEW WITH PERSONNEL-ID = PERSONNEL-ID (EMPL.) IF NO RECORDS FOUND /* DELETE (EMPL.) /* END TRANSACTION END-NOREC END-FIND /* END-FIND END