Java tutorial
import java.sql.Connection; import java.sql.DataTruncation; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLWarning; import java.sql.Statement; public class Main { public static void main(String[] args) throws Exception { Connection conn = getConnection(); conn.setAutoCommit(false); Statement stmt = conn.createStatement(); stmt.executeUpdate("create table survey (id int, name CHAR(5) );"); stmt.executeUpdate("INSERT INTO survey(id, name)VALUES(111, '123456789')"); displayError(stmt.getWarnings()); // try to write more data for the name column. displayError(stmt.getWarnings()); // since there were no errors, commit conn.commit(); ResultSet rs = stmt.executeQuery("SELECT * FROM survey"); outputResultSet(rs); rs.close(); stmt.close(); conn.close(); } public static void displayError(DataTruncation dataTruncation) { if (dataTruncation != null) { System.out.println("Data truncation error: "); System.out.println(dataTruncation.getDataSize() + " bytes should have been "); if (dataTruncation.getRead()) { System.out.println("Read (Error:) "); } else { System.out.println("Written (Error:) "); } System.out.println(dataTruncation.getTransferSize() + " number of bytes of data actually transferred."); } } public static void displayError(SQLWarning warning) { while (warning != null) { if (warning instanceof DataTruncation) { displayError((DataTruncation) warning); } else { System.out.println(" Warning: " + warning.getMessage()); } warning = warning.getNextWarning(); } } private static void outputResultSet(ResultSet rs) throws Exception { ResultSetMetaData rsMetaData = rs.getMetaData(); int numberOfColumns = rsMetaData.getColumnCount(); for (int i = 1; i < numberOfColumns + 1; i++) { String columnName = rsMetaData.getColumnName(i); System.out.print(columnName + " "); } System.out.println(); System.out.println("----------------------"); while (rs.next()) { for (int i = 1; i < numberOfColumns + 1; i++) { System.out.print(rs.getString(i) + " "); } System.out.println(); } } private static Connection getConnection() throws Exception { Class.forName("org.hsqldb.jdbcDriver"); String url = "jdbc:hsqldb:mem:data/tutorial"; return DriverManager.getConnection(url, "sa", ""); } }