¿Cómo funciona exactamente la fecha/hora en MySQL con zonas horarias?

¿Cómo funciona exactamente la fecha/hora en MySQL con zonas horarias?

Mi entendimiento fue:

  • todo es UTC internamente
  • las fechas se muestran en @@session.time_zone zona horaria para la sesión actual
  • si lo hago INSERTcon +02:00TZ configurado y 2015-05-15 10:54lo inserto, se analiza y almacena como 2015-05-15 08:54UTC.
  • cuando cambio a UTCTZ ahora debería mostrarse2015-05-15 08:54
  • lo que sucede en cambio es que todavía se muestra2015-05-15 10:54

¿Qué estoy haciendo mal? ¿O es esto lo esperado? Leí bastantes artículos sobre fecha y hora en MySQL pero todavía no estoy seguro.

Respuesta1

Eso sólo se aplica a TIMESTAMPlos campos. DATETIMELos campos se dejan como están.

Verhttp://dev.mysql.com/doc/refman/5.7/en/datetime.html

información relacionada