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

SQL2008远程服务器执行关联delete有关问题

2013-06-26 
SQL2008远程服务器执行关联delete问题本帖最后由 vincent_cheung 于 2013-06-13 09:29:50 编辑最近做服务

SQL2008远程服务器执行关联delete问题
本帖最后由 vincent_cheung 于 2013-06-13 09:29:50 编辑 最近做服务器升级,从SQL2000升级为2008,有一简单的SQL语句问题无法解决,求教。
系统环境:
   原服务器:DELL2950,Windows 2003 R2,SQL Server 2000
   现服务器:IBM3650M3,Windows 2008 R2(x64),SQL Server 2008(x64)
现象描述:
   服务器SQL Server中建立远程服务器至另一SQL Server 2000,执行类似以下的一条SQL语句:
delete from table1 where id in (select id from 远程服务器.数据库.dbo.table1)
升级前执行没有问题,非常快,可是升级以后执行很慢,原来几十秒就可以执行完,升级以后用了几个小时都没有执行完这个操作,何解?开始考虑为64位的原因,做成32位问题依旧,可是在其他服务器上的Windows 2003 R2+SQL Server2008(x86)上运行就没有问题。将delete的in方式改为join的方式,执行同样慢。后来查MSDN,打了一大堆的补丁(现在SQL2008已为SP1),均无效,已经晕了,大家帮我判断一下是什么原因吧。 SQL SQL?Server 服务器 Windows 数据库
[解决办法]
远程的delete跟update遇到数据类型不一致貌似就会触发服务器级的游标
你本地id的数据类型与远程的是否一致?尝试一下把本地的tb的id数据转换与远程一致的试试

热点排行