那么就
query1.first;
Query1.Close;

解决方案 »

  1.   

    应该不是query1.close的错,你再仔细检查.
      

  2.   

    表中有记录时,如果BOF或EOF有一个值为True(即Cursor没有定位到某条记录上)时,Close即会出现所说错误,表中没有记录时,肯定会出错。 我不清楚为什么相同的代码与环境用SQL Server7数据库就不出错?
    与delphi5 、Sql server的补丁有关吗?我的Delphi5只安装了一个ADO补丁程序,不知是否还有其他的补丁。
      

  3.   

    Ado Update 2 才解决这个问题
    ado update 1解决不了这个问题
      

  4.   

    哪有Ado Update 2 下载,先谢了!
    问题解决一定送分,还可以多加!
      

  5.   

    这个问题我也遇到过!装上Ado的包就没事,在delphi6中就没事
      

  6.   

    把if not Query1.ISEmpt then  Query1.first;去掉﹐本來就是多余的﹐其它應該是沒有問題的.
      
      

  7.   

    不知你做了什么 DoSomething,其他的正常!
      

  8.   

    还有,在 AfterOpen 中又干了什么没有??
      

  9.   

    没找到ADO update2 问题还没有解决
      

  10.   

    这两句是多余的:
    if not Query1.ISEmpt then
      Query1.first;
      
      

  11.   

    不管前两句多余与否,对于空表还是在close时出错!
      

  12.   

    是否与没有SQL server2000 的pack包有关?