最近在写一程序,需要用存储过程完成。调试时我们是在SQL2000下运行此存储过程一点问题都没有,数据量大也没事;但在客户那里用的是SQL7.0,运行同样的存储过程却出现连接超时,数据量只要超过10就会超时?!难道这只是SQL7.0和SQL2000的性能区别吗?还是另有设置?请各位帮帮忙啊!

解决方案 »

  1.   

    性能肯定有区别,不然sql不会升级。我直接从sql6.5升到sql2k遇到的问题比你现在还惨,
    哎。谁叫微软不向下兼容呢?
      

  2.   

    需要补充的是:
    1.存储过程是在SQL2000下完成然后用脚本在SQL7.0下生成.
    2.SQL2000只是个人版,装在Win2000个人版下;而SQL7.0是服务器版,装在NT4.0 Sever下.
    3.此存储过程是完成将需要的数据从当前数据库插入到另一数据库里.
    4.在SQL2000下运行此脚本时几百条记录都没问题,但在SQL7.0里只超过10条记录就报超时.头大,客户那边的数据库升级成SQL2000是比较困难的..
      

  3.   

    把connection的TIMEOUT属性改大一点就行了,一般默认是30秒钟。
      

  4.   

    你的连接方式是什么? ADO? 如果是ADO,就没有这个问题, 否则是你的存储过程有问题,
      

  5.   

    应该是存储过程的问题,有些在2000下可支持的不能被7.0支持,遇到过相类似的情况,把存储过程的SQL语句好好检查一下。
      

  6.   

    用的是ADO,存储过程没问题,两个版本的SQL Server都能运行,只不过7.0比2000慢了非常多。只能把TimeOut属性设大点。。100条记录在SQL 2000下运行只需4秒,在SQL 7.0下10多条就需要1、2分钟。相差非常大!而且在动行时服务器响应很慢,说明耗资源
      

  7.   

    基本表建立索引;修改sql语句