ORA-00932 :数据类型不一致:应为-,但却获得CLOB


https://blog.csdn.net/kiwi_kid/article/details/25228309

ORA-00932 :数据类型不一致:应为-,但却获得CLOB
我们可以通过字段字符类型的转换来得到 to_char(content_txt) 把 CLOB类型转换为 varchar 类型

今天在帮忙开发做数据抽取的时候,执行这条sql

select * from tb_object_0001 where f17_0001 in (select f1_5044 from tb_object_5044 where f8_5044 in (select content_txt from sdc_globalevent@basedata));

  
  
  


报了ORA-00932 :数据类型不一致:应为-,但却获得CLOB 的错误

这是因为(f8_5044是clob类型的字段,而content_txt是varchar2类型的字段)

我们可以通过字段字符类型的转换来得到

to_lob(content_txt)

不过由于sdc_globalevent 这个表是在另外一套数据库上,远程访问的时候报了

ORA-22992: cannot use LOB locators selected from remote tables 的错误

没办法,只能本地转换

select * from tb_object_0001 where f17_0001 in (select f1_5044 from tb_object_5044 where to_char(f8_5044) in (select content_txt from sdc_globalevent@basedata));
  
  
  


还好clob字段里面内容不是太多,问题顺利解决了

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM