我想做一个简单的日期格式更改。
我的查询如下:
select to_date('01-JAN-2018','dd-mm-yyyy') from dual.
这是一个更大的查询的一部分。
在我的产品中出现如下错误:
oracle.xdo.servlet.data.DataException: oracle.xdo.XDOException: java.sql.SQLDataException: ORA-01858: a non-numeric character was found where a numeric was expected
这一点在我的离线oracle 10g上工作正常
答案 0 :(得分:3)
不要使用Character.getNumericValue
。而是使用to_date()
关键字:
date
或者,使用正确的格式:
select date '2018-01-01'
答案 1 :(得分:1)
格式MON
和select to_date('01-JAN-2018','dd-MON-yyyy') from dual
不匹配。
使用
select to_date('01-01-2018','dd-mm-yyyy') from dual
或
nls_date_format
在您的oracle 10g数据库中,dd-mm-yyyy
必须为dd.mm.yyyy
(或dd/mm/yyyy
或dd-mon-yyyy
等变体)。
所以,它并不关心dd-MON-yyyy
(即隐含地将dd-mm-yyyy
转换为import speech_recognition as sr
for index, name in enumerate(sr.Microphone.list_microphone_names()):
print("Microphone with name \"{1}\" found for `Microphone(device_index={0})`".format(index, name))
)
答案 2 :(得分:0)
试试这个:
select to_date('01-01-2018','dd-mm-yyyy') from dual