读书人

ORA-00904:Invalid identifier错误!

发布时间: 2014-01-28 21:23:25 作者: rapoo

在一个C写的OCI程序中,使用了如下SQL语句
select * from (select rownum rowseq, t.* from demo t) where rowseq> 15
总是报ORA-00904:Invalid identifier "rowseq "。
DEMO表结构中存在CLOB和BLOB字段,经判断是LOB字段引起的错误,请问如何解决?

还实验过一个语句
select * from demo minus select * from demo where rownum <16
报ORA-00932:inconsistent datatype,expect- ,get clob
我知道是由于此表有LOB字段,不支持MINUS操作,查询了一下文档,里面提到“UNION, MINUS, and SELECT DISTINCT are allowed on LOB attributes if the object type has a MAP or ORDER function.”。对这一句很不理解,请大家指点!


------解决方法--------------------------------------------------------
改成

select rowseq,t.* from (select rownum rowseq, t.* from demo t) where rowseq> 15

试试

        

读书人网 >oracle

热点推荐