我使用ADOQuery,DataSource,DBGrid建立了一个简单的数据库访问程序,直接在ADOQuery.SQL中写查询语句。编译正常并生成可执行文件。
如果我离开编程环境直接执行可执行文件,一切正常。但是,如果我在编程环境中一步一步执行,在退出程序时会弹出DELPHI调试界面,下面是调试器指向的部分:
->77F9EEAA ret
  ntdll.DbUserBreakPoint
我看不懂这句话的意思。请指教。备注:如果我将ADOQuery.SQL里面的语句在代码中实现,跟踪调试发现在
ADOQuery.SQL.Add('...');时出错。

解决方案 »

  1.   

    Ado 升级了吗 ? , Ms有相应的补丁包 .
      

  2.   

    我根本就没有写代码,只是在ADOQuery.sql中直接写SQL语句
      

  3.   

    StrSQL := ‘.....’;
      try
        OracleJobADOQ.SQL.Clear;
        OracleJobADOQ.SQL.Add(StrSQL);
        OracleJobADOQ.Active := True;
      except
        exit;
      end。

      

  4.   

    我在ADOQuery.sql中直接写SQL语句,不编任何代码,退出时同样出现上面的问题,但运行可执行文件时正确
      

  5.   

    StrSQL := ‘.....’;
      try
        oraclejob.close;
        OracleJobADOQ.SQL.Clear;
        OracleJobADOQ.SQL.Add(StrSQL);
        OracleJobADOQ.Active := True;
      except
        exit;
      end。
      

  6.   

    我试过,加上oraclejobADOQ.close;还是一样
      

  7.   

    StrSQL语句是否是select语句,否则的话,应该使用ExecSQL语句
      

  8.   

    我试过用BDE不会出现这种问题,但用ADO会
      

  9.   

    具体的SQL贴出来呀. 这么一点信息怎么判断?
      

  10.   

    我估计你的 SQL 语句是 INSERT、UPDATE、DELETE 等动作查询,而不是 SELECT 查询。记得在 ADOQuery 控件中有一个 BUG,就是用动作查询更改数据后会出现错误。由于没有作过这样的试验,所以不知道是否就是这种情况。顺便提一下,ADO 和 BDE 虽然都是使用 SQL 语句工作,但具体的实现方式有很大的不同,单表的情况下,我们只要在 SQL 属性中写入 SELECT 查询,ADOQuery 就会在接受到 POST 或 UpdateBatch 命令后自动处理数据的更新,建议你使用这种方式。
    -------- 电脑是否有灵魂的呢?
      

  11.   

    如果用delphi5,ADO一定要升级,否则会有莫名其妙的错误,
    最好的delphi5.0也加补丁包
      

  12.   

    是ado的事,或者delphi的事
    而不是你程序代码写错了
    换台机器,换一下ado 重装一下delphi 都可以试一下呀这样的问题还是要自己解决,因为你不是程序写错了
      

  13.   

    StrSQL := ‘.....’;
      try
        oraclejob.close;
        OracleJobADOQ.SQL.Clear;
        OracleJobADOQ.SQL.text:=StrSQL;//修改处
        OracleJobADOQ.Active := True;
      except
        exit;
      end。
    记得结贴哦
      

  14.   

    我以前遇到过类似的问题,解决方法是每次调用的时候,只能重新create一个adoquery,调用完了以后再释放,虽然方法比较笨,但那时候时间紧,又没有其他的解决方案,只好如此
      

  15.   

    我已经发现了这个毛病,只要涉及到对wchar_t操作,调试器自动会把cpu窗口弹出来,讨厌死了的.
      

  16.   

    这不是一个bug,你的程序也没有错误,他仅仅是一个调试中断.我在几个activex控件中只要操作wchar_t就出现这种错误(用过formual one的可以试一试向cell中写公式),恰好ado的串全部通过widestring传送,我怀疑是ole问题.
      

  17.   

    但我估计这可能不是普遍现象,我忍不住告诉大家,Dephi有时候自己都糊涂,不要太较真,问题解决了就行,或者有代替的办法也行
      

  18.   

    我遇到这情况是因为我的程序使用了32位的ICO图标,如果改为低颜色的图标就不会出现这情况了,这可能是DELPHI的BUG吧