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

SINTAXIS para insertar ndias a un campo date

Estas en el tema de SINTAXIS para insertar ndias a un campo date en el foro de Mysql en Foros del Web. Saludos cordiales gracias de antemano tratare de resumir tengo una tabla llamada docu con los campos iddocu, fec, fec_v de mi interfaz traigo una variable ...
  #1 (permalink)  
Antiguo 03/05/2010, 16:08
 
Fecha de Ingreso: diciembre-2009
Mensajes: 56
Antigüedad: 14 años, 4 meses
Puntos: 0
SINTAXIS para insertar ndias a un campo date

Saludos cordiales gracias de antemano
tratare de resumir
tengo una tabla llamada docu con los campos iddocu, fec, fec_v
de mi interfaz traigo una variable
$ndia (puede ser 30 o 40 o ndias) que quiero sumar directamente a la hora de insertar en mi base de datos:
$fec=DATE; la variable $fec es la fecha actual por lo que trate con :

insert into doc values ('', '$fec' ,'date_add($fec, INTERVAL $ndia DAY)') pero siempre me graba como nulo o 0000-00-00

luego probe con:
insert into doc values ('', '$fec' ,'DATE_ADD(curdate(), INTERVAL $ndia DAY)') y tampoco supongo que mi sintaxis esta mal , por favor cualquier ayuda sera bien recibida

No he querido traer la fecha directamente como fecha porque lo que inserta el usuario es un numero entero de dias, y tampoco lo quiero hacer con php porque me dicen que es mejor hacerlo directamente con mysql pero no me sale :(
  #2 (permalink)  
Antiguo 03/05/2010, 16:11
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 8 meses
Puntos: 150
Respuesta: SINTAXIS para insertar ndias a un campo date

Creo que el problema esta en como configuraste el tipo del campo de la base de datos, ¿podrias ponerlo aqui?
  #3 (permalink)  
Antiguo 03/05/2010, 16:18
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: SINTAXIS para insertar ndias a un campo date

Prueba con datos fijos primero:
Código MySQL:
Ver original
  1. VALUES('', '2010-05-04' ,date_add( '2010-05-04', INTERVAL 30 DAY));

Ten cuidado con dos cosas:
1) No encierres entre comillas las llamas a función. Es decir, que la función DATE_ADD no quede en el SQL encerrada entre apóstrofes, porque eso lo convertirá en una cadena de texto.
2) Asegúrate que el formato contenido en las variables sea el estándar YYYY-MM-DD.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 03/05/2010, 19:15
 
Fecha de Ingreso: diciembre-2009
Mensajes: 56
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: SINTAXIS para insertar ndias a un campo date

Amigo muchas gracias por la aclaración, las comillas eran el problema al final quedo asi:

insert into doc values('','$fec',DATE_ADD('$fec', INTERVAL '$ndia' DAY))
Moraleja aprendida:
"las comillas se usan para las variables y una funcion nunca puede ir entre comillas "

Etiquetas: date, sintaxis, campos
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 19:12.