我正在使用SSRS(2k5)来报告来自oracle的数据.该报告的目的是对数据进行大约100次检查(完成后)以查看是否输入正确(并且我们的软件按照预期的方式运行).为了实现这一点,我创建了一个包含和管道功能的实现WITH子句.大致在Oracle中构建的包看起来像这样:
WITH A as(从X中选择东西),B as(从Y join X中选择东西),C as(从Z join X中选择东西)
Subquery1
联盟
Subquery2
联盟
…
Subquery100
我使用Table()直接从SSRS调用此包函数.一切都很好.但是,如果我在当天晚些时候运行它,我会收到一条错误消息:
ORA-32036: unsupported case for inlining of query name in WITH clauSEORA-6512: at “[function name]”
但是,如果我打开Oracle sqlDeveloper并运行该函数然后返回到SSRS,则everthing运行正常(暂时).
我意识到它可能对我的嵌套WITH子句感到生气,但是什么会导致它工作一段时间,然后很快失败?请注意,它始终适用于sqlDeveloper.
提前感谢你的帮助!