Java: MySQL DATETIME conversion errors?

Ask a Question related to MySQL, Design and Development.

  1. #1

    Default Java: MySQL DATETIME conversion errors?

    I do the following in my java application:

    Statement s = myConnection.createStatement();
    ResultSet rs = s.executeQuery("SELECT startTime FROM MyTable WHERE
    _rowid=1");
    if (rs.next())
    {
    java.sql.Timestamp stamp = (java.sql.Timestamp)rs.getObject(1);
    String startTime = stamp.toString();
    }

    I get the following value in startTime: "2006-03-02 12:00:00.0"
    But in the database is the following value stored: "2006-02-30 12:00:00.0"

    I am running MySQL 4.1.12 on RedHat Linux ES 4.0 EMT64.
    I run my java application on Windows 2000 with java 1.5.0_03-b07 and
    mysql-connector-java-3.1.12. I have also tried
    mysql-connector-java-5.0.0-beta, same problem.

    Any idea?
    Thank you.


    Cédric Pillonel Guest

  2. Similar Questions and Discussions

    1. Datetime(14) return value differences between MySQL v. 4.x and 3.x
      Hi Is there any way to force the output format of datetime fields in MySQL versions from 4.0? We have a few large databases running on v....
    2. Translating MySQL timestamp to datetime
      Hi All, Any thoughts on the easiest way to translate a MySQL timestamp (which looks like 20040422090941) to the datetime format (which looks like...
    3. [PHP] convert mysql datetime to unix timestamp
      Tried passing it through strtotime? Example: echo(date('U',strtotime($string))); On Mon, 2003-07-28 at 12:06, Chris Hayes (SENSE) wrote: --...
    4. MySQL datetime extraction
      Given a date in MySQL datetime format, how do I extract the elements? That is get the month, day, year, hour, ... Thanks, Yasir
    5. [PHP] MySQL datetime extraction
      Hello, This is a reply to an e-mail that you wrote on Sat, 19 Jul 2003 at 19:16, lines prefixed by '>' were originally written by you. ...
  3. #2

    Default Re: Java: MySQL DATETIME conversion errors?

    Cédric Pillonel wrote:
    > I do the following in my java application:
    >
    > Statement s = myConnection.createStatement();
    > ResultSet rs = s.executeQuery("SELECT startTime FROM MyTable WHERE
    > _rowid=1");
    > if (rs.next())
    > {
    > java.sql.Timestamp stamp = (java.sql.Timestamp)rs.getObject(1);
    > String startTime = stamp.toString();
    > }
    >
    > I get the following value in startTime: "2006-03-02 12:00:00.0"
    > But in the database is the following value stored: "2006-02-30 12:00:00.0"

    No such date as Feb 30th

    > I am running MySQL 4.1.12 on RedHat Linux ES 4.0 EMT64.
    > I run my java application on Windows 2000 with java 1.5.0_03-b07 and
    > mysql-connector-java-3.1.12. I have also tried
    > mysql-connector-java-5.0.0-beta, same problem.
    >
    > Any idea?

    It is assuming you mean 2 days after Feb 28th.


    --
    Brian Wakem
    Email: [url]http://homepage.ntlworld.com/b.wakem/myemail.png[/url]
    Brian Wakem Guest

  4. #3

    Default Re: Java: MySQL DATETIME conversion errors?

    Brian Wakem wrote:
    > It is assuming you mean 2 days after Feb 28th.
    Yes. This was reported as a bug
    ([url]http://bugs.mysql.com/bug.php?id=16147[/url]) and was closed, claiming it is
    intentional behavior.

    In 5.0, if you try to put in an invalid date, it issues a warning or an
    error by default.

    SELECT DATE('2006-02-30');
    Error 1292 Truncated incorrect datetime value: '2006-02-30'

    SET GLOBAL SQL_MODE='ALLOW_INVALID_DATES';
    SELECT DATE('2006-02-30');
    2006-02-30

    In 4.1 and prior releases, MySQL allows invalid dates; day must be
    0..31, and month must be 0..12.

    See also:
    [url]http://dev.mysql.com/doc/refman/5.0/en/date-and-time-types.html[/url]
    [url]http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html[/url]

    Regards,
    Bill K.
    Bill Karwin Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139