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

hora del servidor?

Estas en el tema de hora del servidor? en el foro de Mysql en Foros del Web. Hola, disculpen si no es correcto el titulo, pero estoy con un problema que no puedo resolver, busque bastante en el foro y vi un ...
  #1 (permalink)  
Antiguo 06/02/2014, 20:41
 
Fecha de Ingreso: febrero-2014
Mensajes: 5
Antigüedad: 10 años, 2 meses
Puntos: 0
hora del servidor?

Hola, disculpen si no es correcto el titulo, pero estoy con un problema que no puedo resolver, busque bastante en el foro y vi un tema similar, pero no era mi caso, tengo 2 tablas, una usuario y otra fecha, cuando se genera un nuevo dato en usuario en la tabla fecha establece la fecha y hora actual (la tabla usuario comprende varios datos entre ellos el id y la tabla fecha comprende un id propio y la fecha en si), pero en mi caso en vez de colocar la fecha y hora actual solo logre que salga 0000-00-00 00:00:00 por alguna razon no figura la hora correcta solo ceros, llegue a suponer que era cuestion de configurar el formato horario de mi pc (estoy trabajando con phpmyadmin y navican mysql en localhost) pero no, o al menos no lo hice bien, el codigo que utilizo para realizar esta accion es el siguente:

Código MySQL:
Ver original
  1. CREATE TRIGGER agregafecha_altausuario
  2.   AFTER INSERT ON usuarios
  3.   INSERT INTO `fecha alta usuario`
  4.   VALUES (CURDATE());


desde ya muchas gracias!

Última edición por gnzsoloyo; 07/02/2014 a las 07:56
  #2 (permalink)  
Antiguo 07/02/2014, 04:04
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: hora del servidor?

`fecha alta usuario` es el nombre de la tabla o del campo....?

Código MySQL:
Ver original
  1. INSERT INTO nombreTabla (nombreCampo1,nombreCampo2,....) VALUES (valorCampo1,valorCampo2,....);

Pero esto de guardar la fecha de alta del usuario en una tabla aparte me parece un diseño digamos "suigeneris"....

Código MySQL:
Ver original
  1. INSERT INTO usuarios (nombre,apellidos,....,fecha_alta) VALUES ("Jose","Lopez",....,NOW());
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 07/02/2014, 07:52
 
Fecha de Ingreso: febrero-2014
Mensajes: 5
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: hora del servidor?

Cita:
Iniciado por quimfv Ver Mensaje
`fecha alta usuario` es el nombre de la tabla o del campo....?

Código MySQL:
Ver original
  1. INSERT INTO nombreTabla (nombreCampo1,nombreCampo2,....) VALUES (valorCampo1,valorCampo2,....);

Pero esto de guardar la fecha de alta del usuario en una tabla aparte me parece un diseño digamos "suigeneris"....

Código MySQL:
Ver original
  1. INSERT INTO usuarios (nombre,apellidos,....,fecha_alta) VALUES ("Jose","Lopez",....,NOW());
Gracias por tu respuesta, pero tambien now() me devuelve 0000-00-00 00:00:00, respecto a guardarlo en otra table, me imagine que era lo mejor, es buena tu recomendacion pero aun asi me sigue entregando todo cero y no la hora...
  #4 (permalink)  
Antiguo 07/02/2014, 08:00
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, 5 meses
Puntos: 2658
Respuesta: hora del servidor?

Vamos a hacer un par de aclaraciones:
1) CURDATE() devuelve el día actual, por lo que en realidad no devuelve horas y si lo tomas como DateTime te devovlerá siempre la hora "00:00:00".
2) Si usas NOW() devolverá la hora actual también, porque devuelve un DATETIME. Pero si insertas ese valor en un campo DATE, la hora se perderá y cualquier lectura de ese campo devovlerá también la hora "00:00:00".

Técnicamente, lo que te plantea @quimfv es correcto, pero siempre y cando el campo haya sido declarado DATETIME o TIMESTAMP. Caso contrario no te funcionará.

¿Cómo está definida esa tabla?
Como para que lo veas:
Código MySQL:
Ver original
  1. SHOW CREATE TABLE fecha alta usuario;
  2. SHOW CREATE TABLE usuarios;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: php, sql, tabla, usuarios
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:10.