|  import java.sql.Connection;
 import java.sql.DataTruncation;
 import java.sql.DriverManager;
 import java.sql.SQLException;
 import java.sql.SQLWarning;
 import java.sql.Statement;
 
 public class DemoDataTruncation {
 
 public static void displayError(DataTruncation dataTruncation) {
 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();
 }
 }
 
 public static Connection getMySQLConnection() throws Exception {
 String driver = "org.gjt.mm.mysql.Driver";
 String url = "jdbc:mysql://localhost/databaseName";
 String username = "root";
 String password = "root";
 Class.forName(driver);
 return DriverManager.getConnection(url, username, password);
 }
 
 public static void main(String[] args) throws Exception {
 Connection conn = getMySQLConnection();
 Statement stmt = null;
 try {
 stmt = conn.createStatement();
 stmt.executeUpdate("DELETE FROM animals_table");
 displayError(stmt.getWarnings());
 stmt.executeUpdate("INSERT INTO animals_table(id, name)"
 + "VALUES(1, 'NameLongerThanColumnLengthInDatabase')");
 displayError(stmt.getWarnings());
 } catch (DataTruncation dt) {
 displayError(dt);
 dt.printStackTrace();
 } catch (SQLException se) {
 System.out.println("Database error message: " + se.getMessage());
 } catch (Exception e) {
 e.printStackTrace();
 } finally {
 stmt.close();
 conn.close();
 }
 }
 }
 
 
 
 
 |