首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Informix >

informix中where子句的用法

2012-02-16 
求助 informix中where子句的用法UPDATETranRecSETflags 1WHERE tsptracenumhostfile_edate.tlbconAND t

求助 informix中where子句的用法
UPDATE TranRec SET flags = 1
WHERE tsptracenum=hostfile_edate.tlbcon
AND tspdate=hostfile_edate.tlbtin
AND tranamt=hostfile_edate.tlbf02;

hostfile_edate 和 TranRec是两个表。

不知道这个语句有何问题,我检查过了,没有输入错误,但是报错217,谁知道怎么回事啊?

[解决办法]
语法这么写是错误的,update的where只能是当前表的条件,不能是其它表的条件

但是可以这么写,前提是tsptracenum是TranRec表的主键或能唯一确定一条记录

SQL code
UPDATE TranRec SET flags = 1WHERE tsptracenum in(select tsptracenum from hostfile_edate,TranRecTranRec.tsptracenum=hostfile_edate.tlbconAND TranRec.tspdate=hostfile_edate.tlbtinAND TranRec.tranamt=hostfile_edate.tlbf02); 

热点排行