Oracle DATE tidak menyimpan waktu dengan lebih presisi dari satu detik. Anda tidak dapat menyimpan data presisi milidetik dalam DATE kolom.
Dua opsi Anda adalah memotong string milidetik sebelum mengubahnya menjadi DATE , yaitu
to_date( substr('23.12.2011 13:01:001', 1, 19), 'DD.MM.YYYY HH24:MI:SS' )
atau untuk mengubah string menjadi TIMESTAMP yang mendukung presisi milidetik
to_timestamp( '23.12.2011 13:01:001', 'DD.MM.YYYY HH24:MI:SSFF3' )