En VFP, tablas nativas, datetime guardar año, mes, dia, hora, minutos y segundos.
En postgresql incluye los mismos datos más milisegundos.
Para almacenar lo que tu quieres requieres 17 dígitos para un esquema AAAAMMDDhhmmssnnn (donde nnn son los milisegundos)
Esa cantidad de dígitos los puedes almacenar en un campo monetario (8 caracteres físicos), ubicando los milisegundos en la parte decimal.
Compones una string con
ms = (SECONDS() - INT(SECONDS())) * 1000
s = TTOC(valor_date_time) + "." + STR(ms, 3)
luego conviertes a numérico y luego con NTOM lo conviertes en monetario
también puedes usar menor cantidad de dígitos si tomas la fecha en formato juliano (7 ) y lo concatenas con la lo que da seconds()
Para juliano ver funciones SYS(1), SYS(10) y SYS(11)
Saludos: Miguel