Java APIからINSERT/UPDATE/DELETE文を発行する方法を教えてください。

製品ブランド:

Dr.Sum

Dr.Sum Cloud

製品名: Dr.Sum , Dr.Sum Cloud
バージョン: 4.x 5.x

公開日時:

2015/09/07 19:28

更新日時:

2021/09/22 09:00

記事番号:

000003957

Java APIを使用してINSERT文、UPDATE文、DELETE文を発行するサンプルプログラムは次のとおりです。

■Java API (ExampleDbi_update.java)

/*
 * @(#)ExampleDbi_update.java
 * 
 * 本プログラムコードはサンプルとして提供されるものです。
 * あくまでサンプルとしての理解しやすさを主眼としているため、
 * エラーハンドリング、動作に関する効率、メンテナンス性、セキュリティ、
 * 同時実行性、負荷への耐久性等について、考慮されていません。
 * また、このコードをお客様が使用されたことにより損害が発生した場合にも、
 * 弊社は当該損害に関する一切の責任を負いかねます。
 * お客様の責任において、上記内容をご確認のうえご使用ください。 
 * 
 * (c) 2015 WingArc1st Inc. all rights reserved.
 */


import java.util.Vector;

import jp.co.dw_sapporo.drsum_ea.*;
import jp.co.dw_sapporo.drsum_ea.dbi.*;

/**
 * for Example.
 * 
 * @author WingArc1st Inc.
 * @version 2.50, 2006/05/31
 * @since 1.00
 */
public class ExampleDbi_update
{
  /**
   * for Example.
   * 
   * @param argv Parameters of Command-Line.
   * @return None.
   */
  public static void main(String argv[])
  {
    // 変数
    int            iLpCnt;      // ループカウンタ
    int            iLpCnt1;    // ループカウンタ
    int            iLpCnt2;    // ループカウンタ
    int            iLpCnt3;    // ループカウンタ
    
    DWDbiConnection      oCon;      // コネクション
    DWDbiCursor        oCur;      // カーソル
    
    String          sSQL;      // SQL文
    
    DWDatabaseInfo[]    oDBList;    // データベースリスト
    DWTableInfo[]      oTableList;    // テーブルリスト
    DWColumnInfo[]      oSchema;    // スキーマ情報
    DWViewInfo        oViewInfo;    // ビュー情報
    
    Vector          vRecordset;    // レコードセット

    int            iExecuteCount;  // 処理件数
    
    // 変数設定
    oCon = null;
    oCur = null;
    
    // 例外判定
    try
    {  // 処理
      // コネクション生成
      oCon = new DWDbiConnection("localhost", 6001, "Administrator", "");
      
      // データベース接続
      oCon.openDatabase("SALES");
      
      // カーソル/オブジェクト生成
      oCur = oCon.cursor();
      
      // SQL実行/レコードセット表示
      sSQL = new String("SELECT 年, SUM(価格) FROM 受注ビュー GROUP BY 年;");
      System.out.println(sSQL);
      oCur.execute(sSQL);
      if (oCur.m_oDescription != null)
        for (iLpCnt = 0; iLpCnt < oCur.m_oDescription.length; iLpCnt++)
        {
          System.out.print(oCur.m_oDescription[iLpCnt].m_iID + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_iType + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_iNull + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_iUnique + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_iPrecision + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_iScale + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_sName + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_sTable + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_sDisplay + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_iDisplaySize + ",");
          System.out.print(oCur.m_oDescription[iLpCnt].m_iInternalSize + ",");
          System.out.println();
        }
      vRecordset = oCur.fetchmany(10);
      for (iLpCnt1 = 0; iLpCnt1 < vRecordset.size(); iLpCnt1++)
      {
        for (iLpCnt2 = 0; iLpCnt2 < ((Vector)vRecordset.get(iLpCnt1)).size(); iLpCnt2++)
          System.out.print((String)((Vector)vRecordset.get(iLpCnt1)).get(iLpCnt2) + ",");
        System.out.println("");
      }
      // カーソル閉じる
      oCur.close();
      oCur = null;
      System.out.println("");
      
      // SQL実行/レコードを追加
      sSQL = new String("INSERT INTO 社員マスタ VALUES ('E支店','第1営業部','00015','松本');");
      System.out.println(sSQL);
      iExecuteCount = oCon.execute(sSQL);
      System.out.println(iExecuteCount + "件追加しました。");
      // SQL実行/レコードを更新
      sSQL = new String("UPDATE 社員マスタ SET 氏名='井上' WHERE 社員コード='00015';");
      System.out.println(sSQL);
      iExecuteCount = oCon.execute(sSQL);
      System.out.println(iExecuteCount + "件更新しました。");
      // SQL実行/レコードを削除
      sSQL = new String("DELETE FROM 社員マスタ WHERE 社員コード='00015';");
      System.out.println(sSQL);
      iExecuteCount = oCon.execute(sSQL);
      System.out.println(iExecuteCount + "件削除しました。");
      // トランザクションを終了
      oCon.commit();
    }
    catch (Exception  exception)
    {  // 例外
      // メッセージ出力
      System.err.println(exception.toString());
    }
    finally
    {  // 後処理
      // カーソル閉じる
      if (oCur != null)
      {
        try
        {
          oCur.close();
        }
        catch(Exception e)
        {
          System.err.println(e.toString());
        }
      }
      // コネクション閉じる
      if (oCon != null)
      {
        try
        {
          oCon.close();
        }
        catch(Exception e)
        {
          System.err.println(e.toString());
        }
      }
    }
  }
}

回答

この記事は役に立ちましたか?

コメントしない

「送信」をクリックすると、次の内容に同意したことになります:カスタマーサクセス利用規約