RUNSQLでレコードの追加、変更ができることを示したので
当然、レコードを削除することもできる。
例えば次のようなSQL文でレコードを削除することができる。
DELETE FREOM QTRFIL/SHOHIN WHERE SHCODE=’NV-CF1′
DCL VAR(&SQL) TYPE(*CHAR) LEN(256) DCL VAR(") TYPE(*CHAR) LEN(1) VALUE(X'7D') : : CHGVAR VAR(&SQL) VALUE('DELETE FROM QTRFIL/SHOHIN WHERE SHCODE=' *CAT + &SHCODE *CAT ") RUNSQL SQL(&SQL) COMMIT(*NONE) DSPLY(*NO) :
削除の場合はすべてのフィールドを指定する必要はない。
キー部分を指定すれば十分である。
このように実質的にはわずか2行だけでレコードを削除することができる。
ちょっとしたデータ・ベースの管理プログラムをいちいちRPGやCOBOLを書いて
作っていたのでは面倒だしスマートではない。
このようなRUNSQLを使えばアッと言う間にレコードを削除するプログラムを
CLPだけで手軽に作ることができるのである。
見てきたようにRUNSQLを使えばスマートにCLPだけでレコードを保守することができる。
対話式SQLが導入されていないIBM iであってもRUNSQLおよびSQLは使うことができる。
対話式SQLというのはSQLの練習用のツールであって実際のSQL文の実行とは無関係である。
SQLを適用業務に大いに活用して頂きたい。