加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

Oracle WITH Clause导致SSRS问题?

发布时间:2021-01-26 01:41:33 所属栏目:站长百科 来源:网络整理
导读:我正在行使SSRS(2k5)来陈诉来自oracle的数据.该陈诉的目标是对数据举办约莫100次搜查(完成后)以查察是否输入正确(而且我们的软件凭证预期的方法运行).为了实现这一点,我建设了一个包括和管道成果的实现WITH子句.大抵在Oracle中构建的包看起来像这样: WITH A

我正在行使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.

提前感激你的辅佐!

办理要领

您的题目是您行使(在SSRS内部)毗连到Oracle的客户端版本(或也许是客户端中的驱动措施)也许不支持WITH子句中的函数挪用.

在9i客户端中,WITH子句没有完全正常运行,我猜疑哪个客户端毗连到Oracle(纵然它不是9i客户端)如故没有完全正常运行.

你必必要么:

1)在SSRS中进级Oracle客户端(或驱动措施)(假如也许的话)
2)进级您的SSRS版本(假如它不是最新版本,但请搜查是否值得先举办进级)
3)从头编写没有WITH子句的查询,而是行使内联视图.

另一种选择是建设所需数据的DB视图,并在select语句中引用它们,这不是抱负的,但也许是一个选项.

但愿能辅佐到你…

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读