Mega Code Archive

 
Categories / Java Tutorial / Database
 

Get the Details of a SQLException

import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class Main {   public static void main(String[] args) throws Exception {     try {       Connection conn = getConnection();       Statement st = conn.createStatement();       st.executeUpdate("create table survey (id int,myDate DATE );");       String INSERT_RECORD = "insert into survey(id, myDate) values(?, ?)";       PreparedStatement pstmt = conn.prepareStatement(INSERT_RECORD);       pstmt.setString(1, "1");       java.sql.Date sqlDate = new java.sql.Date(new java.util.Date().getTime());       pstmt.setDate(2, sqlDate);       pstmt.executeUpdate();       ResultSet rs = st.executeQuery("SELECT * FROM survey");       rs.close();       st.close();       conn.close();     } catch (SQLException e) {       while (e != null) {         String errorMessage = e.getMessage();         System.err.println("sql error message:" + errorMessage);         // This vendor-independent string contains a code.         String sqlState = e.getSQLState();         System.err.println("sql state:" + sqlState);         int errorCode = e.getErrorCode();         System.err.println("error code:" + errorCode);         // String driverName = conn.getMetaData().getDriverName();         // System.err.println("driver name:"+driverName);         // processDetailError(drivername, errorCode);         e = e.getNextException();       }     }   }   private static Connection getConnection() throws Exception {     Class.forName("org.hsqldb.jdbcDriver");     String url = "jdbc:hsqldb:mem:data/tutorial";     return DriverManager.getConnection(url, "sa", "");   } }