1 Antwort
- Neueste
- Die meisten Stimmen
- Die meisten Kommentare
0
Strict mode is OFF by default on RDS MySQL 8, we have sql_mode=NO_ENGINE_SUBSTITUTION
only. As long as you do not add any of STRICT_TRANS_TABLES
(when merged) or NO_ZERO_DATE
or NO_ZERO_IN_DATE
in your sql_mode
, it should not break your application in the future.
We recommend however to use strict mode when possible to avoid subtle data inconsistencies in the future.
beantwortet vor einem Jahr
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 3 Jahren
- AWS OFFICIALAktualisiert vor 2 Jahren
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor 2 Jahren
But when I run against the instance: "show variables like 'sql_mode'"
I get the value: "STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"
even though in the param group only the value NO_ENGINE_SUBSTITUTION was defined
You might be looking at your session variables. Does executing these queries show differences?
If they do differ, then your client connection may be setting a custom SQL mode during connection. You will need to make sure your application does not do the same.
Thanks, indeed my JDBC client added it on session start. I solved it by setting the "jdbcCompliantTruncation" key to "false" in the driver properties.