This is an example of catching an SQLException and dumping all the information that it provides.
import java.sql.*; public class ExceptionExample { public static Connection connection = null; public static void main(java.lang.String[] args) { try { Class.forName("com.ibm.db2.jdbc.app.DB2Driver"); connection = DriverManager.getConnection("jdbc:db2:*local"); Statement s = connection.createStatement(); int count = s.executeUpdate("insert into cujofake.cujofake values(1, 2,3)"); System.out.println("Did not expect that table to exist."); } catch (SQLException e) { System.out.println("SQLException exception: "); System.out.println("Message:....." + e.getMessage()); System.out.println("SQLState:...." + e.getSQLState()); System.out.println("Vendor Code:." + e.getErrorCode()); System.out.println("-----------------------------------------------------"); e.printStackTrace(); } catch (Exception ex) { System.out.println("An exception other than an SQLException was thrown: "); ex.printStackTrace(); } finally { try { if (connection != null) { connection.close(); } } catch (SQLException e) { System.out.println("Exception caught attempting to shutdown..."); } } } }