PDA

Ver la Versión Completa : Insertando Fechas


drakkon
12-06-2007, 05:06:06
Hola a todos, necesito de su ayuda. Tengo un problema para insertar una fecha en mi BD (MySQL). El campo de la tabla de mi BD es de tipo DATETIME, y cuando quiero ejecutar una Query desde mi aplicación en delphi:


Query3.Close();
Query3.SQL.Add('INSERT INTO fechas (fecha_actual) VALUES(:fechaDeHoy);');
Query3.ParamByName('fechaDeHoy').AsDateTime:=Now();
Query3.ExecSQL;


pero me aparece un error que dice asi:

"Project MYSQL_DELPHI.exe raised exception class EDBEngine Error with message 'Operation not applicable.' Process stopped......."

Puede alguien ayudarme por favor. Les agradezco de antemano su atencion.:confused:

Neftali [Germán.Estévez]
12-06-2007, 11:15:07
Por favor no repitas hilos en diferentes foros.
Revisa la Guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php).

federicowolf
12-06-2007, 15:22:08
Yo lo usaria de esta manera:

Query3.Close();
Query3.SQL.Add('INSERT INTO fechas (fecha_actual) VALUES(:fechaDeHoy);');
Query3.Parameters.ParamByName('fechaDeHoy').value := Now();
Query3.ExecSQL;




Espero que te sirva, saludos.

Lepe
12-06-2007, 16:25:24
Ojo si tienes eso en un botón (o se ejecuta varias veces), porque al usar sql.Add estas añadiendo lineas y lineas... al final no es una instrucción sql correcta para ejecutar.

La solución es dejar la consulta con su texto sql escrito en tiempo de diseño y en tiempo de ejecución hacer:

if not Query3.Prepared then
Query3.Prepare;
Query3.ParamByName('fechaDeHoy').AsDateTime:=Now();
Query3.ExecSQL;

Saludos