sql里提取long类型字段报错
0
写了个sql在库里运行没问题,在Cognos报表里,经测试发现是提了一个long类型的字段引起的报错。
报错信息:UDA-SQL-0107 “prepare”操作期间发生常规异常。ORA-01445: 无法从不带保留关键字的表的联接视图中选择 ROWID 或采样 RSV-SRV-0042 回溯:RSReportService.cpp(726):……
这个错误号,我查了下没有什么解决办法,怎么办?
报错信息:UDA-SQL-0107 “prepare”操作期间发生常规异常。ORA-01445: 无法从不带保留关键字的表的联接视图中选择 ROWID 或采样 RSV-SRV-0042 回溯:RSReportService.cpp(726):……
这个错误号,我查了下没有什么解决办法,怎么办?
没有找到相关结果
重要提示:提问者不能发表回复,可以通过评论与回答者沟通,沟通后可以通过编辑功能完善问题描述,以便后续其他人能够更容易理解问题.
2 个回复
天蓝佯伶 - Cognos技术人员 2015-10-29 回答
赞同来自: jcwd520
原因不好解释,我一开始说错了,抱歉,是有两张表的关联。把关联提到from前面就行了,整体sql就像一个单表查询那样。有人问我啥叫关联前提,就是这种形式的:select a.column(long类型),(select b.column from b where b.xx=a.xx)别名 from a
补充:经群里的分析,在生成的sql里发现是因为LONG类型是限制不能用distinct的。所有把cognos默认设置的自动分组和汇总设置成否就行了,很是感谢他的分享。
zlqiuts - 来学习 2015-10-29 回答
赞同来自:
主要的错误应该是:ORA-01445: 无法从不带保留关键字的表的联接视图中选择 ROWID 或采样 这句话。。
帮你搜索两个这个错误的解决方案:
http://blog.csdn.net/yiruoyun/article/details/4832096
http://www.itpub.net/thread-1728637-1-1.html