Sql 无法使Oracle表达式在Visual Studio 2010 SSRS中工作

Sql 无法使Oracle表达式在Visual Studio 2010 SSRS中工作,sql,oracle,visual-studio-2010,reporting-services,Sql,Oracle,Visual Studio 2010,Reporting Services,我正在使用VisualStudio2010 SSRS。我有一个Oracle select查询,它在编写时与报表数据集中的查询一样工作,但我需要它作为表达式工作,这样我就可以接受动态筛选条件 表达式最终看起来是这样的,我不能发布查询,因为它可能包含我工作的公司的机密信息 = " [Query] where " +FORMAT(replace(Parameters!where.Value,":00.000",":00")) + " [Order By Clause] " 尝试生成此报告的预

我正在使用VisualStudio2010 SSRS。我有一个Oracle select查询,它在编写时与报表数据集中的查询一样工作,但我需要它作为表达式工作,这样我就可以接受动态筛选条件

表达式最终看起来是这样的,我不能发布查询,因为它可能包含我工作的公司的机密信息

= "

[Query]

where "

+FORMAT(replace(Parameters!where.Value,":00.000",":00")) + "

[Order By Clause] "
尝试生成此报告的预览时出现以下错误:

本地报表处理过程中出错。出现了一个错误 在报表处理过程中发生。数据集的查询执行失败 “德苏梅因”。ORA-00923:未在预期位置找到FROM关键字


如果有人能帮助解决这个问题,我们将不胜感激。

已解决。表达式查询中的每一行末尾都需要一个空格,以防止单词组合。

与往常一样,很难调试您看不到的查询。我不知道出了什么问题,但-error表示您的查询看起来像
select ename emp
select ename where deptno=10
select replace('05.11.2019 20:00:00.000',':00.000',':00')dual
,谁知道呢。基本上,中的
在Oracle预期的位置找不到。您必须对它进行一点调试。无论如何,您可能不需要首先使用动态SQL,因为它们很难维护。您可以引用如下参数:WHERE MY_COL=:MyParam。如果您使用的是日期,可能需要在其周围包装一个to_DATE函数。除此之外的任何事情都可能使事情变得过于复杂。