2011-06-08 16:17 DB2 安装与 SQL0952N错误

DB2 安装与 SQL0952N错误

    好久没有更新文章了,最近实在太忙,太乱。当然其中和DB2脱不了干系。今天就讲其中的两个大问题吧:

    1、DB2 64位机器的安装问题。

      若要在64位的机器上,连接DB2,自然需要安装一个db2 runtime client。然而,这样的安装也是有猫腻的。弱DB2客户端程序是64位,你当然可以安装db2 runtime client for 64bit。但若,你要开发或运行32位的DB2客户端程序,则千万千万要安装db2 runtime client for 32bit。否则,相关动态库就会缺失(如IBM.DB.DATA.DLL),导致一系列稀奇古怪的错误。

     倘若,你已经安装了db2 runtime client for 64bit,后悔莫及。幸运的话,你能将其卸载。但是,卸载后,再装db2 runtime client for 32bit时,就很有可能安装失败。提示,大约是对注册表的更新失败。要解决这个问题,只能是暴力的把这个键值备份后,删除。然后继续安装,差不多就能成果了。这样的操作,如果没有对你系统其它软件产生影响的话,那就不用管了。若是,导致其它软件出错,那就只能重装软件了哦。

        太折腾了。事后想想,DB2的NET下,会根据编译目标的不同,而去寻找对应的DLL。如果,你要编译x86的程序,则你的Program Files (x86)\IBM\SQLLIB\BIN\netf20下一定要能找到IBM.Data.DB2.dll。如果你要编译x64的程序,则你的Program Files\IBM\SQLLIB\BIN\netf20下一定要能找到IBM.Data.DB2.dll。

 

 2、DB2在.net里被中断,报错:  [DB2/NT] SQL0952N 由于中断,处理被取消 SQLSTATE=57014

        在DB2的开发过程中,今日运行了一个较为复杂的sql语句。使用DB2服务端的控制台,运行该sql大约需要1分钟左右。而,在.net下,开发的程序里,运行30秒后,就被打断了,爆出异常  [DB2/NT] SQL0952N 由于中断,处理被取消 SQLSTATE=57014。找了网上好多的资料,都没有结果。只在一篇ADO开发DB2的文章里找到了线索:

        我们开发时,只注意到了connection的连接时长。事实上,connection过期时间属性,已经被设置为0了,且只读。所以默认是永不过期的。

      而对于我们每次SQL语句的执行,事实上是和DB2.DBCommand直接相关的。有意思的是,DBCommand也有个CommandTimeout 属性,且可读可写。将其设置为0后,就不会爆出处理被中断的问题了。呵呵!

 

  就说这两点,以后有问题再补上。但愿,不要出问题了,DB2的开发资料实在太少

http://hi.baidu.com/lynnew/item/49635fba820225a5ebba9367

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值