请教高手一个问题,我想用dbgrid来实现多条数据同时录入的功能,但 dbgrid 连了数据源,一打开就把里面原有的数据全部显示出来了,还有一个问题是dbgrid的自动提交,我用的是delphi2010连数据库用FIBPlus,tpFIBDateSet中没有lock type 属性,那要怎样才能实现。刚注册的新手,分不多!

解决方案 »

  1.   


    可以在一个方法中这样来实现:
    比如拿数据库控件TAdoQuery。
    with AdoQuery1 do 
    begin
      Append;//添加
      FieldByName('Field').AsString := '某个值';
      ......
      Post;//提交
    end;
    第一种方法:当录完了整条数据后,然其提交到数据库。
    第二种方法:1楼所说的,弄个控件,等录完毕后,一起提交。
    第三种方法:定义某个记录类型数据,把数据先写入到数据后,最后再进行提交。
      

  2.   

    可以用StringGird录入后一起提交
      

  3.   


    完全没有问题,设置stringgrid的colcount就可以
      

  4.   

    你的dbgrid的数据源先连接到clientdataset,录完后再一起提交到数据库.
      

  5.   

    我做的是单机版的,没有clientdataset,我是想录入后再一起提交,但tpFIBDateSet中没有locktype 这个属性,录入一条后就自动提交了。
      

  6.   

    可以試著設置ado的緩存模式,當輸入多筆記錄後,再批量post...
      

  7.   

    1.可以在SQL语句里加个where 条件,让之前的记录不显出的,要用批次提交
    2.这个控件没用过,不知道