读书人

pb中不能用not in的有关问题

发布时间: 2012-03-31 13:13:26 作者: rapoo

pb中不能用not in的问题
我有一种情况pb用的是9.0,服务器上装的是64位的sql2008,有一句SQL语句,用的是
SELECT * from a where a.x + a.y NOT IN ( b.x + b.y from b ),在pb9.0中执行就会造成类似于死锁的情况,我去看服务器上CPU运行100%,但是同样这句SQL在sql2000中就能执行成功,同样这句话在sql2008的服务器上也能执行成功,但在PB环境中就会造成服务器死机,有没有人碰到这种情况的?

[解决办法]
上面条件打错了,c2 = c3(+) ,就是外联接,不管C3中有没有,只要c2有就列出来.

where t1.c2 = t2.c3(+) and t2.c3 is null;

[解决办法]

探讨
to xuam:我也怀疑是驱动问题。因为我在pb中用MSS Microsoft SQL Server和ODBC都做了测试,结果发现ODBC中运行没有问题。貌似MSS Microsoft SQL Server驱动发生了错误。但是如果都改成ODBC又有点不甘心,程序要改了,而且每个客户端还得去配置。有没有好的办法解决?

读书人网 >PB

热点推荐