ITPUB??ì3
12月微软Hyper-V虚拟化沙龙主题征集
ITPUB论坛 » IBM数据库产品 » 请教关于informix里dblink的替代问题

标题: [有问必答活动] 请教关于informix里dblink的替代问题
离线 wulwu
初级会员



精华贴数 0
个人空间 0
技术积分 22 (52120)
社区积分 0 (1029340)
注册日期 2006-7-13
论坛徽章:0
      
      

发表于 2008-10-11 09:45 
请教关于informix里dblink的替代问题

在informix数据里。

在测试环境上有数据库DB_a,库里有表 tab_a
该表数据有10000万行
在生产环境上有数据库DB_b,库里有表 tab_b
也有表数据有10000万行


现在我想确认二表的数据完全一样,
如果在oracle很容易做到。

(建一条链路 dblink从test到product)
我只要
select * from tab_a
minus
select * from tab_b@dblink

再反minus一下便可确认,

但现在在informix上如何做到?


想到的最笨的一招是,把 tab_b 备份出来,导入test环境的tab_b_bak表,
再用
select * from tab_a
where (a.col1,a.col2,...,a.coln) not in (
select b.col1,b.col2,...,b.coln from tab_b_bak b
)

难道非要这麻烦?

有什么好的方法吗?

另确认一下,informix里支持union,union all 但支持 intersect 和 minus吗?
谢谢高手赐教!

[ 本帖最后由 wulwu 于 2008-10-11 18:20 编辑 ]


只看该作者    顶部
离线 wulwu
初级会员



精华贴数 0
个人空间 0
技术积分 22 (52120)
社区积分 0 (1029340)
注册日期 2006-7-13
论坛徽章:0
      
      

发表于 2008-10-11 10:23 
汗,发现这样的语法都不行。。。

select * from ffcs_wulw_test
where ( a, b) not in (select a,b from ffcs_wulw_test )


ffcs_wulw_test
两字段 :
a varchar(10)
b varchar(10)

那如何进行表的相减?


只看该作者    顶部
离线 yhl71



精华贴数 0
个人空间 200
技术积分 84 (19332)
社区积分 0 (1829330)
注册日期 2008-7-21
论坛徽章:0
      
      

发表于 2008-10-13 21:49 
使用not exist

select * from tab_a
where not exist (select * from tab_b where tab_a.a=tab_b.a and tab_a.b=tab_b.b)

informix类似dblink的东东是需要通过配置sqlhosts文件以及两台机器的信任关系来实现得。


__________________
只看该作者    顶部
离线 wulwu
初级会员



精华贴数 0
个人空间 0
技术积分 22 (52120)
社区积分 0 (1029340)
注册日期 2006-7-13
论坛徽章:0
      
      

发表于 2008-10-14 09:32 
谢谢  yhl71  。


只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问