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

consulta no graba

Estas en el tema de consulta no graba en el foro de Mysql en Foros del Web. hola a todos miren lo que hago consigo la fecha de la base de datos y trato de guardarla en una tabla pero me graba ...
  #1 (permalink)  
Antiguo 27/11/2009, 14:03
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 14 años, 5 meses
Puntos: 1
consulta no graba

hola a todos miren lo que hago consigo la fecha de la base de datos y trato de guardarla en una tabla pero me graba un 0000-00-00
la sentencia esta asi

$fecha=mysql_query("select curdate()");

$queEmp="INSERT INTO salida(id,destinatario,asunto,mensaje,fecha)
VALUES('$id[0]', '$destinatario', '$asunto', '$mensaje', '$fecha')";

que es lo que esta mal porque no graba y que es lo que tendria que cambiar

muchas gracias de antemano

Última edición por seikawa; 27/11/2009 a las 14:15
  #2 (permalink)  
Antiguo 27/11/2009, 14:32
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: consulta no graba

Jeje ya lo solucione lo que pasa era que en mi consulta no grababa como date entoces solo cambie el tipo del campo a varchar y ya grabo con la fecha
  #3 (permalink)  
Antiguo 27/11/2009, 14:54
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: consulta no graba

Cita:
Jeje ya lo solucione lo que pasa era que en mi consulta no grababa como date entoces solo cambie el tipo del campo a varchar y ya grabo con la fecha
Y con eso perdiste la posibilidad de hacer búsquedas por fecha, por mes o por año de una forma simple, además de desperdiciar espacio en disco y el flujo de datos...

Lo que debías haber hecho es formatear el dato de la fecha entrante en el formato correcto: "dddd-mm-dd". Eso era todo.
No es buena idea quitarle performance a las tablas simplemente porque resulta aprentemente más fácil. Luego tendrás problemas cuando debas usar funciones de conversión de cadena a DATE para todo lo demás (incluidos ordenamientos).
Además, ¿por qué en lugar de hacer esto:
Código php:
Ver original
  1. $fecha=mysql_query("select curdate()");
  2.  
  3. $queEmp="INSERT INTO salida(id,destinatario,asunto,mensaje,fecha)
  4. VALUES('$id[0]', '$destinatario', '$asunto', '$mensaje', '$fecha')";

no hiciste simplemente esto:

Código sql:
Ver original
  1. INSERT INTO salida(id, destinatario, asunto,mensaje,fecha)
  2. VALUES('$id[0]', '$destinatario', '$asunto', '$mensaje', CURDATE());
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 01:48.