"UPDATE" Statements

This section describes how to update existing data rows with UPDATE statements.

UPDATE statements are also commonly used by database applications when users making changes to field values on the UI. An UPDATE statement should have a SET clause to provide a list of columns with new values and a WHERE clause to identify the rows to be updated.

UPDATE statements should be executed with the executeUpdate() method. The Java tutorial program below shows you how to update rows.

/* DerbyUpdateRows.java
 * Copyright (c) HerongYang.com. All Rights Reserved.
 */
import java.sql.*;
public class DerbyUpdateRows {
  public static void main(String [] args) {
    Connection con = null;
    try {
      con = DriverManager.getConnection("jdbc:derby://localhost/TestDB");
      Statement sta = con.createStatement();

// updating multiple rows
      int count = sta.executeUpdate(
        "UPDATE Profile SET ModTime = '2017-04-01 23:59:59.999'"
        + " WHERE ID > 6");
      System.out.println("Number of rows updated: "+count);

// Checking updated rows
      ResultSet res = sta.executeQuery(
        "SELECT * FROM Profile");
      System.out.println("List of Profiles: ");
      while (res.next()) {
         System.out.println(
           "  "+res.getInt("ID")
           + ", "+res.getString("FirstName")
           + ", "+res.getString("LastName")
           + ", "+res.getFloat("Point")
           + ", "+res.getDate("BirthDate")
           + ", "+res.getTimestamp("ModTime"));
      }
      res.close();

      sta.close();
      con.close();
    } catch (Exception e) {
      System.err.println("Exception: "+e.getMessage());
    }
  }
}

The output confirms that 7 rows were updated with a new timestamp in the ModTime column:

Number of rows updated: 7
List of Profiles:
1, Herong, null, 0.0, 1999-12-31, 2016-12-31 23:59:59.999
2, Janet, Gates, 999.99, 2004-10-13, 2016-12-31 23:59:59.999
3, 1403, 896f7, 62.594772, 1999-12-31, 2016-12-31 23:59:59.999
4, 256d, aa3f5, 203.51392, 1999-12-31, 2016-12-31 23:59:59.999
5, d7a, 3a06f, 604.9995, 1999-12-31, 2016-12-31 23:59:59.999
6, 8ef, 466ca, 31.71128, 1999-12-31, 2016-12-31 23:59:59.999
7, 1a34, 59e87, 674.8019, 1999-12-31, 2017-04-01 23:59:59.999
8, 10cc, ab361, 325.30505, 1999-12-31, 2017-04-01 23:59:59.999
9, 11bd, 99552, 315.1111, 1999-12-31, 2017-04-01 23:59:59.999
10, 8c4, 68909, 23.095905, 1999-12-31, 2017-04-01 23:59:59.999
11, 17e1, 99a5d, 186.09494, 1999-12-31, 2017-04-01 23:59:59.999
12, 1ea2, 480c7, 131.6408, 1999-12-31, 2017-04-01 23:59:59.999
13, Keith, Harris, 0.0, 2010-03-01, 2017-04-01 23:59:59.999

Table of Contents

 About This Book

 JDBC (Java Database Connectivity) Introduction

 JDK (Java SE) Installation

 Installing and Running Derby (Java DB)

 Derby (Java DB) JDBC Driver

 Derby (Java DB) JDBC DataSource Objects

Derby (Java DB) - DML Statements

 Tables with Primary Key Column "GENERATED ... AS IDENTITY"

 "INSERT INTO" Statements

 "INSERT INTO" Statements with INDENTITY Columns

 Handling Date and Timestamp Values

"UPDATE" Statements

 "DELETE FROM" Statements

 Derby (Java DB) - ResultSet Objects of Queries

 Derby (Java DB) - PreparedStatement

 Summary of JDBC Drivers and Database Servers

 Using Connection Pool with JDBC

 Archived Tutorials

 References

 Full Version in PDF/EPUB