PDA

Ver la Versión Completa : como insertar fecha y hora??


ebeltete
02-08-2003, 21:35:10
Tengo una tabla paradox con delphi 5, quiero insertar un registro en una tabla que tirene un campo fecha tipo date y otro horareal tipo time, hago lo siguiente:

query1.sql.add('insert into "emitidos.db" (fecha,horareal,horapautada,nombre,cliente,interprete,rubro,codigo)');
query1.sql.add('values (fecha_actual,hora_actual,"06:30","pppp",2,3,4,"01ab456789")');

El tema es que no se que poner en fecha_actual y hora_actual, pues pruebo con datetostr, date(now) y no me funciona, salu2

eduarcol
02-08-2003, 22:25:24
MIRA LO QUE TE PUEDO ACONSEJAR ES QUE PRUEBES INSERTAR LA FECHA ENTRE COMILLAS, ME IMAGINO QUE LA VARIABLE FECHA ACTUAL ES DE TIPO STRING, SI NO LO ES PUEDES HACER ESTO, '"' + DATETOSTR(FECHA_ACTUAL) + '"' OTRA COSA QUE DEBES PROBAR ES EL FORMATO DE LA FECHA A MI ME FUNCIONA SOLO CUANDO HAGO UNA OPERACION COMO ESTA:

DECODEDATE(FECHAACTUAL, ANO, MES, DIA)

FECHAACTUAL := ENCODEDATE(ANO, DIA, MES)

PRUEBALO Y SUERTE!!!!!!!!!!!!

__cadetill
02-08-2003, 22:28:08
Bueno, suponiendo que fecha_actual y hora_actual son variables de tipo TDate y TTime respectivamente, tienes varias maneras de hacerlo. Yo te mostrare 2

1.- Escribir directamente los parametros en la sentencia SQL. Para esta forma, tienes que saber el formato de la fecha en Paradox (que creo que es el que pongo, pero siempre me equivoco :p)


query1.sql.add('insert into "emitidos.db" (fecha,horareal,horapautada,nombre,cliente,interprete,rubro,codigo)');
query1.sql.add('values (' +
QuotedStr(FormatDateTime('mm/dd/yyyy',fecha_actual)) + ',' +
QuotedStr(FormatDateTime('hh:nn',hora_actual)) +
',"06:30","pppp",2,3,4,"01ab456789")');


2.- Utilizar ParamByName


query1.sql.add('insert into "emitidos.db" (fecha,horareal,horapautada,nombre,cliente,interprete,rubro,codigo)');
query1.sql.add('values (:fecha,:hora,"06:30","pppp",2,3,4,"01ab456789")');
query1.ParamByName('fecha').AsDateTime := fecha_actual;
query1.ParamByName('hora').AsDateTime := hora_actual;



Salvo error u omision :p

Espero te sirva