カテゴリ: COBOL 更新日: 2025/11/21

COBOLのINSERT文の使い方完全ガイド!初心者でもわかるデータベースへのデータ登録

INSERT文の埋め込み方法と注意点
INSERT文の埋め込み方法と注意点

先生と生徒の会話形式で理解しよう

生徒

「先生、COBOLでデータベースに新しいデータを追加するにはどうすればいいですか?」

先生

「それにはINSERT文を使います。INSERT文は、テーブルに新しい行を追加するためのSQL文です。」

生徒

「具体的にはどう書けばいいんですか?」

先生

「COBOLではEXEC SQLを使ってSQL文を埋め込みます。値を直接書く場合もありますが、通常はホスト変数を使って安全に値を渡します。」

1. INSERT文とは?

1. INSERT文とは?
1. INSERT文とは?

INSERT文は、データベースのテーブルに新しい行を追加するためのSQL文です。テーブルとは、エクセルの表のように行と列で構成されたデータの集まりです。INSERT文を使うことで、社員情報や顧客情報など、新しいデータを簡単に登録できます。

2. COBOLでのINSERT文の埋め込み方法

2. COBOLでのINSERT文の埋め込み方法
2. COBOLでのINSERT文の埋め込み方法

COBOLでは、SQL文をEXEC SQLEND-EXECの間に記述します。値を直接書くこともできますが、ホスト変数を使うことで、プログラム内の変数の値を安全にSQL文に渡すことができます。


WORKING-STORAGE SECTION.
01  EMP-ID    PIC 9(4) VALUE 1004.
01  EMP-NAME  PIC X(30) VALUE "田中太郎".
01  DEPT      PIC X(10) VALUE "営業部".

PROCEDURE DIVISION.
    EXEC SQL
        INSERT INTO EMPLOYEE (EMPLOYEE_ID, EMPLOYEE_NAME, DEPARTMENT)
        VALUES (:EMP-ID, :EMP-NAME, :DEPT)
    END-EXEC.

この例では、ホスト変数:EMP-ID:EMP-NAME:DEPTの値をEMPLOYEEテーブルに追加しています。

3. ホスト変数を使うメリット

3. ホスト変数を使うメリット
3. ホスト変数を使うメリット

ホスト変数を使うと、値を直接SQL文に埋め込むより安全です。直接文字列や数字を埋め込むと、SQLインジェクションなどのセキュリティリスクが高まります。ホスト変数を使うことで、プログラム内の変数を安全にSQL文に渡せます。また、複数回INSERTを行う場合も、変数の値を変えるだけで簡単に処理できます。

4. INSERT文を使う際の注意点

4. INSERT文を使う際の注意点
4. INSERT文を使う際の注意点
  • テーブルに必須項目がある場合、必ず値を指定する。
  • 重複する主キーをINSERTするとエラーになるので、IDの管理には注意。
  • ホスト変数の型とテーブルの列の型を合わせる。
  • SQLCODEを確認してINSERTが成功したかを判断する。

5. 実践例:社員情報の登録

5. 実践例:社員情報の登録
5. 実践例:社員情報の登録

WORKING-STORAGE SECTION.
01  EMP-ID    PIC 9(4) VALUE 1005.
01  EMP-NAME  PIC X(30) VALUE "佐藤花子".
01  DEPT      PIC X(10) VALUE "開発部".

PROCEDURE DIVISION.
    EXEC SQL
        INSERT INTO EMPLOYEE (EMPLOYEE_ID, EMPLOYEE_NAME, DEPARTMENT)
        VALUES (:EMP-ID, :EMP-NAME, :DEPT)
    END-EXEC.

    IF SQLCODE = 0
        DISPLAY "登録成功:" EMP-NAME
    ELSE
        DISPLAY "登録失敗:" SQLCODE
    END-IF.

登録成功:佐藤花子

この例では、開発部に新しい社員を登録し、SQLCODEを確認して成功かどうかを表示しています。INSERT文の基本を理解すれば、COBOLでのデータベース登録処理が安全かつ簡単に行えます。

6. 初心者向けのポイント

6. 初心者向けのポイント
6. 初心者向けのポイント

COBOLでINSERT文を使うときは、ホスト変数を活用すること、必須項目を必ず埋めること、SQLCODEで結果を確認することを意識してください。最初は小さいテーブルで試しながら理解を深めると、データベースへの登録処理をスムーズに覚えられます。

カテゴリの一覧へ
新着記事
New1
C#
C#のメモリ管理とガーベジコレクションの基礎を理解しよう
New2
C#
C#の参照型と値型の違いを初心者向けにやさしく解説!
New3
C#
C#のクエリ式とメソッド式の書き換え方を完全ガイド!LINQの2つの書き方をマスター
New4
C#
C#の戻り値にタプルを使う方法!複数の値を返すテクニック
人気記事
No.1
Java&Spring記事人気No1
C#
C#で文字列が数値か判定する方法を解説!char.IsDigitやTryParseの基本
No.2
Java&Spring記事人気No2
C#
C#のLINQでOrderByを使った並び替えを完全ガイド!初心者でもわかるソート方法
No.3
Java&Spring記事人気No3
C#
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.4
Java&Spring記事人気No4
C#
C#のrefとoutキーワードとは?引数の参照渡しを理解しよう
No.5
Java&Spring記事人気No5
COBOL
COBOLの数値データ型「PIC 9」の使い方と注意点をやさしく解説!
No.6
Java&Spring記事人気No6
C#
C#の引数と戻り値の基本!値を受け渡し・返す仕組みを理解しよう
No.7
Java&Spring記事人気No7
C#
C#のラムダ式の書き方と構文を初心者向けに完全解説
No.8
Java&Spring記事人気No8
C#
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方