Javaちょこっとリファレンス
HOME > UPDATE文サンプル

UPDATE文サンプル

JDBCを使用してデータベースからデータを更新(UPDATE)するサンプルです。
以下のサンプルでは、Oracleデータベースを対象としています。

サンプルコード

接続するデータベース情報は以下の通りとします。

<DB情報>
 ・データベース:オラクル
 ・IP:127.0.0.1(localhost)
 ・ポート番号:1521
 ・SID:testdb
 ・ログインID:user01
 ・ログインパスワード:password

<対象テーブル>
 ユーザマスタ

「USER_MASTER」テーブルを更新(UPDATE)するサンプル
 java.sql.DriverManager;
 java.sql.Connection;
 java.sql.PreparedStatement;

public class DBUpdateSample {

    public static void main(String[] args) throws Exception{

        //変数定義
        Connection conn = null;
        PreparedStatement ps = null;

        //DB接続情報を設定する
        String path = "jdbc:oracle:thin:@127.0.0.1:1521:testdb";  //接続パス
        String id = "user01";    //ログインID
        String pw = "password";  //ログインパスワード

        //SQL文を定義する
        String sql = "UPDATE user_master SET address = ?, tel = ? WHERE no = ?";

        try{
            //JDBCドライバをロードする
            Class.forName("oracle.jdbc.driver.OracleDriver");

            //DBへのコネクションを作成する
            conn = DriverManager.getConnection(path, id, pw);
            conn.setAutoCommit(false);  //オートコミットはオフ

            //実行するSQL文とパラメータを指定する
            ps = conn.prepareStatement(sql);
            ps.setString(1, "兵庫県神戸市");
            ps.setString(2, "078-999-9999");
            ps.setInt(3, 2);

            //UPDATE文を実行する
            int i = ps.executeUpdate();

            //処理件数を表示する
            System.out.println("結果:" + i);

            //コミット
            conn.commit();

        } catch (Exception ex) {
            //例外発生時の処理
            conn.rollback();       //ロールバックする
            ex.printStackTrace();  //エラー内容をコンソールに出力する

        } finally {
            //クローズ処理
            if (ps != null) ps.close();
            if (conn != null) conn.close();
        }

    }

}
実行結果
C:\>java -cp ./;ojdbc14.jar DBUpdateSample 結果:1

事前にオラクルのJDBCドライバを用意しておく必要があります。
(ここの例では「ojdbc14.jar」)

<更新後結果>

ユーザマスタ → ユーザマスタ(更新後)

主要メソッド

【java.sql.PreparedStatementクラスの主要メソッド】
戻値型メソッド説明
voidsetString(int a, String b)a番目の「?」にbをString型でセットする
voidsetInt(int a, int b)a番目の「?」にbをint型でセットする
voidsetLong(int a, long b)a番目の「?」にbをlong型でセットする
voidsetFloat(int a, float b)a番目の「?」にbをfloat型でセットする
voidsetDouble(int a, double b)a番目の「?」にbをdouble型でセットする
voidsetDate(int a, Date b)a番目の「?」にbをjava.sql.Date型でセットする
voidsetBoolean(int a, boolean b)a番目の「?」にbをboolean型でセットする
voidclearParameters()全てのパラメータをクリアする
ResultSetexecuteQuery()SELECT文を実行する
intexecuteUpdate()UPDATE, INSERT, DELETE,ストアドを実行する

データベースカテゴリ

HOMEへ戻る TOPへ戻る