2012-08-15 76 views
0

我在Crystal Report VS2010命令文本中查询后遇到问题。它在Oracle 10g中运行良好。Crystal Reports中针对VS2010的Oracle TO_DATE功能问题

SELECT * 
FROM tbl_ts 
WHERE PROJECTCODE = 2274 
AND LOGDATE >= TO_DATE('01/08/2011','dd/mm/yyyy') 
AND LOGDATE <= TO_DATE('31/08/2011','dd/mm/yyyy') 

我一直在使用功能之间尝试,但我收到此相同的错误消息:

enter image description here

我觉得它的东西与TO_DATE功能呢?

+0

“LOGDATE”的数据类型是什么?您不能从TO_DATE调用中获取ORA-01858,因为您的字符串文字与日期格式完全匹配。当然,除非您在此处显示的查询与实际在数据库上运行的查询不同。 – 2012-08-16 01:51:15

回答

0

我要在这里猜测,并断言由于您在代码块('dd/mm/yyyy')中指定的日期格式与数据库中指定的日期格式不完全匹配,所以会出现错误。

换句话说,如果由于您使用的函数是TO_DATE(some_date,'dd/mm/yyyy'),Oracle预计标准格式为'DD-MON-YY'的日期,您会看到此错误。 “非数字”值将是月份名称。

+0

我应该使用('30 -AUG-2011','DD-MON-YY')还是('30/08/2011','DD-MON-YY') – user1263981 2012-08-15 12:30:35

+0

我认为你应该尝试第一个。 – 2012-08-15 12:31:51

+0

与第一个'非数字键'有相同的错误信息,第二个错误'不是有效的月份' – user1263981 2012-08-15 12:39:33