【发布时间】:2016-10-21 05:13:46
【问题描述】:
我需要帮助。下面是 2 个运行 Jboss 和 websphere 的相同选择查询,它们安装在 linux 框中。在 Jboss 中查询工作正常,但在 websphere 中失败。两者的代码库是相同的。 Jboss
SELECT MODIFIED_DATE FROM /*Query Builder Clause*/ ACA_RULE WHERE ACA_RULE_CID = '1455' AND NVL(to_date('**12/14/2015 8:48:41**', 'MM-dd-yyyy hh24:mi:ss'), SYSDATE)=decode(MODIFIED_DATE,null,SYSDATE,MODIFIED_DATE)
Websphere
SELECT MODIFIED_DATE FROM /*Query Builder Clause*/ ACA_RULE WHERE ACA_RULE_CID = '1189' AND NVL(to_date(**'2010-3-17 11.30.10.0'**, 'MM-dd-yyyy hh24:mi:ss'), SYSDATE)=decode(MODIFIED_DATE,null,SYSDATE,MODIFIED_DATE)
因此抛出
java.sql.SQLDataException: ORA-01843: not a valid month
请帮我解决这个问题。
【问题讨论】:
-
'2010-3-17 11.30.10.0 ==> 2010 年不是有效月份。更改您的日期模式。
-
您在两个查询中使用相同的日期时间格式
'MM-dd-yyyy hh24:mi:ss',但您的源数据格式不同'12/14/2015 8:48:41'和'2010-3-17 11.30.10.0' -
是的,我使用相同的数据格式和相同的代码。只有服务器不同。在 jboss 中:12/14/2015 8:48:41 但是 websphere 它被转换为 '2010-3-17 11.30.10.0' 并抛出 oracle 异常
-
to_date('**12/14/2015 8:48:41**', 'MM-dd-yyyy hh24:mi:ss')和to_date(**'2010-3-17 11.30.10.0'**, 'MM-dd-yyyy hh24:mi:ss')一样吗? -
您的问题是否组织不正确?我认为其他 cmets 指出您在“Jboss”和“Webshere”标题下显示了两个不同的查询。你是说这两个查询实际上都在 Jboss 上工作并且都在 WebSphere 上给出错误?如果是这样,你应该改写问题。
标签: java linux oracle jboss websphere