我今天也被这个问题搞得头都大了,各位大佬帮帮手吧!

解决方案 »

  1.   

    执行查询前,关闭相关数据库表,你试一试!
      

  2.   

    这个的原因我找到了,因为在职ADOQUERY,ADOTABLE中少了一个属性CommandTimeOut,在ADODATASET中是有的,设置这个属性才起作用.AdoConnection的CommandTimeOut和 ADOQUERY,ADOTABLE,ADODATASET中的CommandTimeOut是不同的.在DELPHI6中ADOQUERY,ADOTABLE已经增加了CommandTimeOut这一属性.
    解决方法:1.升级到DELPHI6.
    2.修改ADODB.PAS增加CommandTimeOut,因为ADOQUERY,ADOTABLE继承自ADODATASET,ADODATASET中有CommandTimeOut,只要在ADOQUERY,ADOTABLE,ADOSTOREPROCE的属性中增加close所有工程,以打开工程的方式打开
    (\borland\Delphi5\Source\Vcl\adodb.pas)
     published
        property CommandTimeout;
    编译工程.
    备份\borland\Delphi5\lib\adodb.dcu
    copy (\borland\Delphi5\Source\Vcl\adodb.dcu)到\borland\Delphi5\lib\中.重新编译胸的工程.
    我的EMAIL:[email protected]