Pregunta: | 26744 - BUSQUEDA DE PARADOX POR MEDIO DE SQL (FECHAS) |
Autor: | Juan Alejandro Hernandez Ramirez |
Gracias por leer mi pregunta!
Tengo problemas al querer hacer un listado de una tabla PARADOX por medio de SQL, el problema es con el campo ultimo_mant es de tipo date, segun hace la comparacion pero no muestra los datos que le pido sin embargo lo hago con cualquier otro campo y si los muetra, pero, el que me interesa es el de tipo date(ultimo_mant). mi codigo es el siguiente: procedure TForm1.BitBtn1Click(Sender: TObject); var fecha:string; begin Query1.SQL.Clear; fecha:=datetostr(date); Query1.SQL.Add('Select clave_equip,Nombre,ult_mant,realizado'); Query1.SQL.Add('from mantenimiento.db'); //** YA UTILICE ESTA LINEA Query1.SQL.Add('where ultimo_mant="04/01/2002"'); // *** Y ESTA. Y NO FUNCIONA // Query1.SQL.Add('where ultimo_mant="'+fecha+'"'); Query1.Active:=true; end; MUCHAS GRACIAS POR AYUDARME. |
Respuesta: | Paco Govea |
// Query1.SQL.Add('where ultimo_mant="'+fecha+'"');
Esta es tu linea que no funciona, Prueba con esta, ya modificada Query1.SQL.Add('where ultimo_mant='+#39+fecha+#39); |
Respuesta: | Claudio Romero |
Para mas informacion sobre el SQL de la BDE ver el archivo de ayuda que viene con Delphi localsql.hlp, en directorio BDE.
var antrecno:longint;cod_factura,fecha_pago,consulta:string; anio,mes,dia:word;fecha:TDateTime; begin // comprueba que ingreso una fecha valida en Efecha_pago.text try fecha:=StrToDate(Efecha_pago.text); except on EConvertError do begin messagebox(application.handle,'La fecha de pago es inválida','ATENCION',MB_APPLMODAL); exit; end; end; decodedate(fecha,anio,mes,dia); //La fecha de pago en SQL va en formato mes-dia-año fecha_pago:='"'+inttostr(mes)+'/'+inttostr(dia)+'/'+inttostr(anio)+'"'; //En la variable fecha de pago queda por ejemplo 12/25/2001 consulta:='UPDATE "factura.db" SET fecha_pago = '+fecha_pago'; Saludos |