我必须在Oracle数据库中执行一些插入。我有一些日期
以下列格式
以下列格式
'23.12.2011 13:01:001'
根据文档,我写入insert_data,如下所示:
to_date('23.12.2011 13:01:01','DD.MM.YYYY HH24:MI:SS')
哪个工作正常现在我有几毫秒与格式的日期
'23.12.2011 13:01:001'
我试过以下:
to_date('23.12.2011 13:01:001','DD.MM.YYYY HH24:MI:SSFF3')
这是错误的(传递错误01821. 00000 – “日期格式未被识别”)。
我应该使用哪个“字符串”这种格式与毫秒?
提前致谢!
Oracle DATE不会比一秒更精确地存储时间。您不能在DATE列中存储毫秒精度数据。
您的两个选项是在将其转换为DATE之前,将截断毫秒数的字符串,即
to_date( substr('23.12.2011 13:01:001',1,19),'DD.MM.YYYY HH24:MI:SS' )
或将字符串转换为支持毫秒精度的TIMESTAMP
to_timestamp( '23.12.2011 13:01:001','DD.MM.YYYY HH24:MI:SSFF3' )