in 2.7, using String representation on a Timestamp was corresponding to java Timestamp.toString() representation.
in 3.x version, this now correspond to what server display, corresponding to microsecond precision.
Example of differences:
value |
Field format |
2.7 string representation |
3.x string representation |
2025-01-23 09:20:45 |
TIMESTAMP(0) |
"2025-01-23 09:20:45.0" |
"2025-01-23 09:20:45" |
2025-01-23 09:20:45 |
TIMESTAMP(2) |
"2025-01-23 09:20:45.0" |
"2025-01-23 09:20:45.00" |
2025-01-23 09:20:45 |
TIMESTAMP(6) |
"2025-01-23 09:20:45.0" |
"2025-01-23 09:20:45.000000" |
2025-01-23 09:20:45.12 |
TIMESTAMP(6) |
"2025-01-23 09:20:45.12" |
"2025-01-23 09:20:45.120000" |
2025-01-23 09:20:45.123450 |
TIMESTAMP(6) |
"2025-01-23 09:20:45.12345" |
"2025-01-23 09:20:45.123450" |
goal is to have a compatibility option `oldModeNoPrecisionTimestamp` of this buggy behavior.