1

在使用 Microsoft SQL Server Report Builder 时,我能够在查询设计器中执行查询并检索结果。该查询在日期上有一个 where 子句。

select * from table where DB_timestamp > to_date(:StartDate, 'mm/dd/yyyy') and DB_timestamp <  to_date(:EndDate, 'mm/dd/yyyy')

在执行时,我会弹出一个窗口,在其中输入给定格式的两个变量(StartDate 和 EndDate)。现在,当我尝试运行相同的方法来生成报告时,我必须使用日历选择器选择这两个变量。尽管日期以所需的格式显示,但我总是收到以下错误:

An error occured during local report processing.
 Query execution failed for dataset 'XYZ'.
ORA-01843: not a valid month

什么会导致查询在一个地方成功运行,但在日历选择器选择变量时抛出错误?

4

2 回答 2

1

一定会发生某种文化冲突。如果 SSRS 正在发送 dd/mm/yyyy 并且您的数据库期待 mm/dd/yyyy 事情将无法按预期工作,甚至在某些日期崩溃。

于 2014-05-02T14:34:41.137 回答
0

我会从 where 子句中删除 to_date 函数,例如

where DB_timestamp > :StartDate and ...

于 2014-05-02T03:57:35.243 回答