跟一下,你那sql语句正确吗?
尽量避免这种对数据库的操作方法,还是应该用专门的adoquery负责数据的插入、删除、修改操作

解决方案 »

  1.   

    有with語句了就不需要再寫adoDataSet2 了
    insert,delete,update不要用open
    用execsql。
    尽量避免这种对数据库的操作方法,还是应该用专门的adoquery负责数据的插入、删除、修改操作
      

  2.   

    TAdoDataset不是这样用的;
    插入操作你应该这样用adoDataSet2.close;
    adoDataSet2.commandtext := ' select top 0 * from 运动员表 ';
    adoDataSet2.open;
    adoDataSet2.insert;
    adoDataSet2.FieldByName('姓名').AsString := bianhao;
    adoDataset2.FieldByName('编号').Asstring := name;
    adoDataset2.post;TAdoDataset控件用于执行数据集操作,通常不用于执行更新、删除并且无返回数据集结果的SQL语句;
      

  3.   

    sql语句没有问题
    我在看看adoquery
    delphi烦的地方 在断点下看不到各个属性传递的值 
    一点比不上my eclipse 气啊
      

  4.   

    我都不用adoDataSet的,用adoquery嘛。把ADOQuery1的Connection设置为ADOConnection1,把DataSource1的DataSet设置为ADOQuery1。 with ADOQuery1 do
     begin
       Active := False;
       sql.Clear;
       sql.Add('一个select语句');
       Open;
     //这里可以把查到的数据用变量存起来
     end; with ADOQuery1 do
     begin
       Active := False;
       sql.Clear;
       sql.Add('一个insert或update或delete语句');
       Execsql;
     end;
      

  5.   


    后面的那个ADODataSet2去掉试试!
      

  6.   

    insert ,delete 用execute;