COBOL2002 言語 拡張仕様編

[目次][索引][前へ][次へ]

9.2 埋め込みSQL文(データベースアクセス機能)

形式
[図データ]

機能
COBOLプログラム中にSQL文を記述する。

構文規則
  1. COPY文によって展開する原文中,COPY文中およびREPLACE文中にEXEC,SQLおよびEND-EXECを指定してはならない。
  2. 埋め込みSQL文は,REPLACE文の対象とはならない。
  3. 埋め込みSQL文でCOBOLプログラムに埋め込むことができるSQLの文を次に示す。

    表9-1 埋め込みSQL文でCOBOLプログラムに埋め込むことができるSQLの文

    種類 分類 SQL文 概要
    宣言系 埋め込みSQL宣言節 BEGIN DECLARE SECTION 埋め込みSQL開始宣言。
    END DECLARE SECTION 埋め込みSQL終了宣言。
    埋め込み例外宣言 WHENEVER 埋め込み例外宣言。
    カーソル DECLARE CURSOR カーソル宣言。
    制御系 コネクション CONNECT コネクションを確立する。
    DISCONNECT コネクションを解除する。
    SET CONNECTION 現行コネクションを変更する。
    トランザクション COMMIT コミットでトランザクションを終了させる。
    ROLLBACK ロールバックでトランザクションを終了させる。
    操作系 静的 SELECT 表の指定された行から値を取り出す。
    INSERT 表中に新しい行を作成する。
    DELETE 表から行を削除する。
    UPDATE 表の行を更新する。
    カーソル OPEN カーソルを開く。
    FETCH カーソルを表の次の行に位置づけ,その行を取り出す。
    CLOSE カーソルを閉じる。
    ストアドプロシージャ CALL ストアドプロシージャを呼び出す。
    動的 EXECUTE IMMEDIATE 動的SQLを準備し,実行する。
    PREPARE 動的SQLを準備する。
    DEALLOCATE PREPARE 準備した動的SQLを解放する。
    EXECUTE 動的SQLを実行する。
  4. 埋め込みSQL開始宣言は,埋め込みSQL宣言節の始まりを表し,埋め込みSQL終了宣言は,埋め込みSQL宣言節の終わりを表す。埋め込みSQL宣言節については「9.4 データ部(埋め込みSQL宣言節)(データベースアクセス機能)」を参照のこと。
  5. 埋め込みSQL開始宣言および埋め込みSQL終了宣言以外の埋め込みSQL文は,手続き部の文が書けるところにならばどこにでも書ける。手続き部に書けるSQL文については,「9.6 手続き部(宣言系)(データベースアクセス機能)」,「9.7 手続き部(制御系)(データベースアクセス機能)」および「9.8 手続き部(操作系)(データベースアクセス機能)」を参照のこと。
  6. 語 EXEC,SQLおよびEND-EXECの前後は空白で区切られていなければならない。ただし,END-EXECとそれに接続する分離符の終止符との間には空白はなくてもよい。