首先,这不是这个问题的重复.如果是,抱歉,但我无法通过阅读来解决我的问题.
我收到这个错误:
ORA-00932: inconsistent datatypes: expected - got CLOB
当我尝试执行此SELECT语句时:
SELECT TXT.t_txt 
  FROM CITADM.tb_avu_txt_grc GR  
 INNER JOIN CITADM.tb_avu_txt TXT   
    ON (GR.e_txt = TXT.e_txt and GR.u_txt = TXT.u_txt)  
 WHERE  TXT.u_lin_ord = 1
UNION
SELECT TXT.t_txt 
  FROM CITADM.tb_avu_txt_grc_cvd GRC  
 INNER JOIN CITADM.tb_avu_txt TXT  
    ON (GRC.e_txt = TXT.e_txt and GRC.u_txt = TXT.u_txt)  
 WHERE  TXT.u_lin_ord = 2
所选字段(t_txt)是CLOB数据类型.如您所见,它与同一个表的列相同.这个陈述属于一个更大的陈述,我已经隔离了我遇到这个问题的部分.
非常感谢你.
在DB2触发器中,我需要比较CLOB字段的值.就像是:
IF OLD_ROW.CLOB_FIELD != UPDATED_ROW.CLOB_FIELD 
但"!="不适用于比较CLOB.
比较它的方法是什么?
编辑添加:
如果在更新期间更改了Clob字段,则我的触发器需要执行某些操作.这就是我需要比较触发器代码中的2个CLOB的原因. 我正在寻找有关如何做到这一点的一些详细信息
我有这个查询我试图运行但我一直遇到这个错误.我试图做一个Where将数据(BLOB列)与:var2(blob对象)进行比较的子句.
这是我的代码.
SELECT max(id) 
INTO :var1
FROM table_name 
where data = :var2;
为什么我会收到此ORA-00932错误的任何建议?
我比较a blob到a blob column,应该不是很好吗?
谢谢