Convertir campo DATE para obtener HORA
Saludos amigos espero que esten bien en esta epoca de navidad:)
Tengo una base de datos en Firebird y mi tabla Horario_Doctores, entonces tengo varios campos que son tipos DATE y la informacion que tienen esos campo me sale con una fecha y luego la hora, entonces lo que nesecito es solo la hora. por ejemplo en la tabla se ve de esta manera: Lun_desde = 30.12.1899 09:00:00 y me gustaria que saliera: Lun_desde = 09:00 p.m. Gracias por sus ayudas!!!! |
Si tienes campos persistentes en el componente de conexión a la Tabla, puedes indicar el Display format como hh:mm por ejemplo.
Un Saludo. |
|
Hola,
Pues no entiendo... ¿Cómo es que se pretende recuperar la hora de un campo DATE? ¡En un DATE sólo se tiene fecha más no horas! Para tener fecha y hora se requiere un campo TIMESTAMP. Lo que los componentes, en tu aplicación, hacen es representar el dato como si se tratase de un tipo TDateTime. Es más, el tipo TDate y el tipo TTime no son más que unos alias del TDateTime con la parte hora y fecha nulos respectivamente. Para el caso, para un DATE la hora nula corresponde a 00:00:00. De allí que no tiene sentido leer una hora de un DATE... ¡siempre será nula! Algo similar sucede para un TIME; siendo la fecha nula 01/01/1900 si no me falla la memoria. ¿Al final tus campos son de fecha o fecha/hora? :confused: Saludos, |
Seguramente está usando el dialecto 1, que usa campos date para almacenar fecha y hora al mismo tiempo.
Para presentarlos, como bien se ha comentado más arriba, sólo hay que poner la máscara 'hh:mm'. Con el dialecto 3 se diferencia: date=fecha, time=hora, timestamp=fecha y hora juntas (como el date del dialecto 1). |
Conversión por cast
|
La franja horaria es GMT +2. Ahora son las 17:01:02. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi