| Bug #82235 | Latest Workbench latest JDBC driver WHERE is convertToNull in Workbench options? | ||
|---|---|---|---|
| Submitted: | 14 Jul 2016 21:23 | Modified: | 15 Aug 2016 11:09 |
| Reporter: | ROBERT G PARIS | Email Updates: | |
| Status: | No Feedback | Impact on me: | |
| Category: | Connector / J | Severity: | S5 (Performance) |
| Version: | 5.1.35 | OS: | Windows (Microsoft Windows 10 Pro) |
| Assigned to: | Assigned Account | CPU Architecture: | Any |
| Tags: | WBBugReporter | ||
[14 Jul 2016 21:24]
ROBERT G PARIS
WorkBench Log file
Attachment: wb.log (application/octet-stream, text), 11.85 KiB.
[14 Jul 2016 21:27]
ROBERT G PARIS
mysql-connector-java-5.1.35-bin is being used
[15 Jul 2016 11:09]
Chiranjeevi Battula
Hello Bob Paris, Thank you for the bug report. I tried to reproduce the issue at my end using MySQL Connector / J 5.1.39 but not seeing any issues in convertToNull. As in your test case you are not using connection sting properties (zeroDateTimeBehavior=convertToNull) to convert null values and you are trying to convert int value to time. Thanks, Chiranjeevi.
[16 Aug 2016 1:00]
Bugs System
No feedback was provided for this bug for over a month, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open".

Description: ----[For better reports, please attach the log file after submitting. You can find it in C:\Users\rgpar\AppData\Roaming\MySQL\Workbench\log\wb.log] WHERE is convertToNull in Workbench options? Get ERROR SQLException: Cannot convert value '0000-00-00 00:00:00' from column 5 to TIMESTAMP. SQLState: S1009 VendorError: 0 and online I find: matthias42 2012-03-03 20:28:42 UTC Please see "zeroDateTimeBehavior" option of the mysql-jdbc driver. Setting it to "convertToNull" should fix the symptoms of your problem - reporting dates of this type as null. How to repeat: Use Sakila database "fresh out of box", WorkBench "fresh out of box". From Matthews book MySQL and Java Developers Guide" use the following java code: import java.sql.*; class Hello { Connection connection; public Hello() throws ClassNotFoundException, IllegalAccessException, InstantiationException, SQLException { Class.forName("com.mysql.jdbc.Driver").newInstance(); } public static void main(String[] args) throws ClassNotFoundException, SQLException, InstantiationException, IllegalAccessException { Hello hello = new Hello(); hello.connectToDB(); hello.executeSQL(); } private void displaySQLErrors(SQLException e) { System.out.println("SQLException: " + e.getMessage()); System.out.println("SQLState: " + e.getSQLState()); System.out.println("VendorError: " + e.getErrorCode()); } public void connectToDB() { try { connection = DriverManager.getConnection("jdbc:mysql://localhost/sakila?user=xxxxxx&password=xxxxxxxx"); } catch (SQLException e) { displaySQLErrors(e); } } public void executeSQL() { try { Statement statement = connection.createStatement(); ResultSet rs = statement.executeQuery("select count(*) from actor"); while (rs.next()) { System.out.println(rs.getTime(1)); } rs.close(); statement.close(); connection.close(); } catch (SQLException e) { displaySQLErrors(e); } } }