FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Fecha en Oracle
Hola a tod@s,
cómo podría convertir el string fecha := '10/02/2005 00:00:00' en datetime para insertarlo tal cual en oracle? El problema es que inicialmente tengo un data : TDateTime que contiene sólo '10/02/2005', entonces para añadirle la hora, min,seg hago : fecha := DateToStr(data)+ ' 00:00:00'; Pero cuando lo inserto en oracle sólo lo hace como 10/02/2005. Gracias. Santi. |
#2
|
||||
|
||||
Wop!
¿Cómo lo insertas? ¿que componentes usas? ¿Como declaras las variables?
__________________
E pur si muove |
#3
|
|||
|
|||
Lo declaro así:
fecha : string; data : Tdatetime; entonces en data tengo una fecha sin horas, min y seg. Para ello hago: fecha := DateToStr(data)+ ' 00:00:00'; data := StrToDateTime(fecha); y lo actualizo en la bds sql.Add('Update tabla Set data_final = to_date( data_final ,''dd/mm/yyyy hh24:mi:ss'')) ParamByName('pdata_final').AsDateTime := data; Y como resultado en la bds sólo me ha puesto la fecha pero sin la hora Se te ocurre algo? Gracias. santi |
#4
|
|||
|
|||
De que tipo tienes declarado el parametro data_final, es de tipo DATE?
Sino una opcion valida que tienes, ya que cargas la cadena de actualizacion dinamicamente es poner directamente el valor de la fecha como string sql.Add('Update tabla Set data_final = to_date( '+QuotedStr(fecha)+' ,''dd/mm/yyyy hh24:mi:ss'')); Suerte
__________________
Hice un trato con Dios... el no hace sistemas y yo hago milagros |
#5
|
||||
|
||||
Wop!
Intenta esto:
Teóricamente, si tratas la variable como de tipo DateTime, no es necesario hacer el cast (de hecho creo que por eso podría estar fallando). Tambien puedes probar a pasarle una hora distinta de 00:00:00, a ver qué pasa
__________________
E pur si muove |
#6
|
|||
|
|||
No lo solucioné pero encontré el problema,
resulta que el valor para la hora 00:00:00 en oracle , no sé porqué, lo guarda pero no lo muestra en el campo de la tabla.Es decir,está pero no visible. Probé a pasarle una hora distinta y todo ok. Gracias! Santi. |
|
|
|