Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

timestamp cambiar formato

Estas en el tema de timestamp cambiar formato en el foro de Mysql en Foros del Web. hola amigos. tengo un campo fecha en el mysql tipo timestamp donde al insertar el registro este me da la fecha en el formato AAAA-MM-DD ...
  #1 (permalink)  
Antiguo 16/03/2010, 08:36
 
Fecha de Ingreso: febrero-2009
Mensajes: 489
Antigüedad: 15 años, 2 meses
Puntos: 8
De acuerdo timestamp cambiar formato

hola amigos.
tengo un campo fecha en el mysql tipo timestamp donde al insertar el registro este me da la fecha en el formato AAAA-MM-DD HH:MM:SS quiero saber si se puede cambiar este formato por DD-MM-AAAA HH:MM:SS esto se puede hacer??

gracias por la atencion
  #2 (permalink)  
Antiguo 16/03/2010, 08:47
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: timestamp cambiar formato

El estándar de todas las bases de datos para el almacenamiento de fechas como DATETIME es AAAA-MM-DD HH:MM:SS. Eso no se puede cambiar.

Algunos motores cuentan con recursos para interpretar fácilmente los formatos regionales como el "DD/MM/YYYY HH:MM:SS", pero lo que hacen es realizar una conversión implícita y almacenarlos en el formato estándar, pero eso no tienen nada que ver con que se redefina el tipo de dato.

Es absolutamente innecesario crear un formato "DD/MM/YYYY HH:MM:SS", porque esa forma de respresentación sólo es útil para visualización de los datos y no para la realización de las consultas.
Si lo que quieres es poder representar o recuperar el dato de esa forma, cada DBMS tiene funciones específicas para que el dato sea retornado con la forma deseada.

No pienses ni siquiera en ponerlo como VARHAR, ya que eso te traerá dos problemas básicos:

1) Ocuparás más espacio, por cuanto para guardar un VARCHAR para la fecha se requieren 10 Bytes contra 8 bytes de un DATETIME, lo cual implica pérdida de espacio.

2) Te traerá eventualmente problemas para realizar consultas con parámetros temporales, ya que deberás reconvertir la fecha a DATETIME para cualquer operación de consulta realizada en el WHERE. Incluso deberás hacerlo hasta para ordenar el resultado por tiempo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 16/03/2010, 08:51
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: timestamp cambiar formato

En mysql este es un formato ya definido (AAAA-MM-DD HH:MM:SS)

Lo que puedes hacer es visualizarlo de la forma que quieras haciendo uso de la función date_format.

Código MySQL:
Ver original
  1. mysql> select fecha2 from conv_fechas;
  2. +---------------------+
  3. | fecha2              |
  4. +---------------------+
  5. | 2010-03-16 09:49:21 |
  6. +---------------------+
  7. 1 row in set (0.00 sec)
  8.  
  9. mysql> select date_format(fecha2,'%d-%m-%Y %h:%i:%s') fecha_convertida from conv_fechas;
  10. +---------------------+
  11. | fecha_convertida    |
  12. +---------------------+
  13. | 16-03-2010 09:49:21 |
  14. +---------------------+
  15. 1 row in set (0.00 sec)
  16.  
  17. mysql>


EDITO: Se me adelantó gnzsoloyo con una excelente explicación.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #4 (permalink)  
Antiguo 16/03/2010, 10:23
 
Fecha de Ingreso: febrero-2009
Mensajes: 489
Antigüedad: 15 años, 2 meses
Puntos: 8
Respuesta: timestamp cambiar formato

el uso de la función date_format. se hace en la consulta SQL?
  #5 (permalink)  
Antiguo 16/03/2010, 10:24
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: timestamp cambiar formato

exacto.

Ahí tienes un ejemplo.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #6 (permalink)  
Antiguo 16/03/2010, 16:04
 
Fecha de Ingreso: febrero-2009
Mensajes: 489
Antigüedad: 15 años, 2 meses
Puntos: 8
Respuesta: timestamp cambiar formato

ok boy a probar gracias

Etiquetas: formato, timestamp
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:17.