【问题标题】:Declare Constants in Rdl reports Expression在 Rdl 报告表达式中声明常量
【发布时间】:2013-09-11 10:47:10
【问题描述】:

我创建了 RDL 报告,并且正在尝试构建查询表达式。

我收到常量声明错误。

我的查询表达式:

SELECT *
  FROM master
 WHERE error_date BETWEEN TO_DATE(:MDT_FRMDATE, "DD-MON-YYYY HH24:MI:SS")
                      AND TO_DATE(:MDT_TODATE, "DD-MON-YYYY HH24:MI:SS")
   AND progress_status = "ERROR"
   AND m.mdt_no = :MDT_No;   

错误:

在处理命令期间发生了一个或多个错误。 ORA-00904: “错误”:无效标识符

【问题讨论】:

  • 这似乎是 Oracle PL/SQL 错误(您的选择查询中的错误),而不是 Reporting Services 问题。我添加了标签,以便 Oracle 程序员可以帮助您。
  • 我在 Toad 中成功执行了查询,但是相同的查询在 rdl 查询表达式中不起作用..

标签: sql oracle reporting-services plsql


【解决方案1】:

我认为 Reporting Services 使用的任何 Oracle 驱动程序都将 ERROR 周围的双引号解释为使其成为对象标识符而不是字符串。

尝试将那部分代码更改为使用单引号:

and progress_status = 'ERROR'

【讨论】:

  • 我之前尝试过使用单引号,但它被视为注释并以绿色显示..并且在单引号后没有执行查询...
  • 我不是 Oracle 专家,但我很确定单引号并不表示 Oracle SQL 中的注释,所以肯定有其他问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-10-12
  • 2013-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-11
相关资源
最近更新 更多