贴一些你的操作代码,看看是不是有对ADOConnection1的操作

解决方案 »

  1.   

    在事务体内做查询?那可能要关心下 IsolationLevel 中的设定。建议还是不要在事务体内查询,事务产生和结束要快,最好只在更新数据时。
      

  2.   

    下面这段程序,可能没有意义,但为什么在AdoQuery1.sql.add('---------------')这句话出错?
    ADOQuery1.Close;
    AdoQuery1.sql.Clear;
    adoquery1.SQL.Add('select * from B_sicklog');
    adoquery1.open;
    ADOConnection1.BeginTrans;
    ADOConnection1.CommitTrans;
    ADOQuery1.Close;
    AdoQuery1.sql.Clear;
    adoquery1.SQL.Add('select * from B_sicklog');
    adoquery1.open;
      

  3.   

    出错信息为:project project1.exe raised exception class EAccessViolation with message'Access violation at address 1f6b2007 in module 'msdasql.dll',read of address 00000014'.process stopped.use step or run to continue.
      

  4.   

    select * from [B_sicklog]
    我回答了两次,你难道给我200分,自己再开个账户,自己来领,别浪费了。
      

  5.   

    to laozi
    select 没有问题呀?第一个能正常查询的?
      

  6.   

    我也遇到过ADO事务出错,但忘了出错信息,不知是否和你一样
    原因:
      ADO连接可能不支持多事务,
      连接上一旦发生任何查询,修改动作,都认为已启动事务,所以不能再第二次启动事务
      所以在 ADOConnection1.BeginTrans;
      之间的查询可能是个问题
      如果你想即可查询,又有事务,建议启动两个连接
      

  7.   

    to gwbasic
      可我在ADoConnection1.BeginTrans;与AdoConnection1.CommitTrans;之间没有任何的查询语句?
      

  8.   

    ADoConnection1.BeginTrans;与AdoConnection1.CommitTrans
    是在服务器端的;dbase之流因该不支持
    你用什么数据库
      

  9.   

    对不起,字打错---------------------------------------------------------
    我也遇到过ADO事务出错,但忘了出错信息,不知是否和你一样
    原因:
      ADO连接可能不支持多事务,
      连接上一旦发生任何查询,修改动作,都认为已启动事务,所以不能再第二次启动事务
      所以在 ADOConnection1.BeginTrans;
      之前的查询可能是个问题
       ----
      如果你想即可查询,又有事务,建议启动两个连接 
    ---------------------------------------------------------是  BEGINTRANS 之 前
      

  10.   

    我这里是win2000advanced server+sql 2000
    你的源代码我测试下来,没问题。
    估计是你的数据库的问题,或是adoconnection的设置问题。
    请告知环境。