PDA

Ver la Versión Completa : Problemas con los datos FechaHora (TDAteTime) en Oracle con ZeosLib


JCarlosas
03-07-2007, 18:08:17
Hola saludos a todos.

Estamos usando Oracle 9i, la version 6 de ZeosLib y D2006.
Tenemos en la BD de Oracle una tabla con un campo de tipo Date.
Cuando intentamos recurperar los datos de dicho campo, solamente nos devuelve la parte de la fecha y no la hora.
Sin embargo nos conectamos a esa misma tabla pero usando tecnologia ADO y si nos devuelve correctamente tanto la fecha como la hora.

Sin embargo necesito usar ZEOSLib porque ya tengo desarrollado practicamente todo el soft con ZeosLib y ademas necesito que se pueda usar con varios gestores de BD como MySQL y FireBird.

Alguien tiene idea de cual puede ser el problema.
Saludos a todos y gracias de antemano.
JCarlos

JCarlosas
05-07-2007, 14:53:48
Hola.
Encontramos una solucion parcial para cuando se usa un
TZReadOnlyQuery
Y radica en decirle a Oracle que devuelta el dato en forma de cadena en lugar de hacerlo en forma de TDateTime.

Ver siguiente codigo SQL


tipoBDOracle: begin
result:= 'Select IDMovil as Cosechadora, ' +
'AnalogIn4 as EAnalogica4, ' +
'to_char(FechaHoraLocal,' + AnsiQuotedStr('mm/dd/yyyy HH24:MI:SS', '''') + ') as FechaHoraLocal, ' +
'Longitud as Longitud, ' +
'Latitud as Latitud, ' +
'Spin as Spin ' +
' FROM BaseDatos.TableName ' +
' WHERE .......';
end;


Para recuperar el dato es exactamente igual a como se hace siempre. El unico incoveniente aqui, es que quedas amarrado al formato de la Fecha Hora que se pone en la consulta SQL.
O sea en este caso siempre va a devolver la fecha en el formato Mes/Dia/año. Eso podria traer ciertos inconvenientes.
Para el caso de las ZTable no he encontrado aun ninguna solucion.
Saludos.
JCarlos