Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class Main {
    public static Connection getConnection() throws Exception {
        String driver = "org.gjt.mm.mysql.Driver";
        String url = "jdbc:mysql://localhost/databaseName";
        String username = "root";
        String password = "root";
        Class.forName(driver);
        Connection conn = DriverManager.getConnection(url, username, password);
        return conn;
    }

    public static void main(String[] args) throws Exception {
        String deptName = "oldName";
        String newDeptName = "newName";

        ResultSet rs = null;
        Connection conn = null;
        PreparedStatement pstmt = null;
        PreparedStatement pstmt2 = null;
        try {
            conn = getConnection();
            // prepare query for getting a REF object and PrepareStatement object
            String refQuery = "select manager from dept_table where dept_name=?";
            pstmt = conn.prepareStatement(refQuery);
            pstmt.setString(1, deptName);
            rs = pstmt.executeQuery();
            java.sql.Ref ref = null;
            if (rs.next()) {
                ref = rs.getRef(1);
            }
            if (ref == null) {
                System.out.println("error: could not get a reference for manager.");
                System.exit(1);
            }
            String query = "INSERT INTO dept_table(dept_name, manager)values(?, ?)";
            pstmt2 = conn.prepareStatement(query);
            pstmt2.setString(1, newDeptName);
            pstmt2.setRef(2, ref);
            // execute query, and return number of rows created
            int rowCount = pstmt2.executeUpdate();
            System.out.println("rowCount=" + rowCount);
        } finally {
            pstmt.close();
            pstmt2.close();
            conn.close();
        }
    }
}