Una DATE
Oracle non memorizza i tempi con maggiore precisione di un secondo. Non è possibile memorizzare dati di precisione in millisecondi in un DATE
colonna.
Le tue due opzioni sono troncare la stringa dei millisecondi prima di convertirla in un DATE
, cioè
to_date( substr('23.12.2011 13:01:001', 1, 19), 'DD.MM.YYYY HH24:MI:SS' )
o per convertire la stringa in un TIMESTAMP
che supporta la precisione in millisecondi
to_timestamp( '23.12.2011 13:01:001', 'DD.MM.YYYY HH24:MI:SSFF3' )