用DBGrid作为批量录入网格由于它是与数据源相连的有时一条记录尚未录完位置一变就自动Post了,再就是好像Insert也不能使新记录插入在指定的位置,而用StringGrid相对来说在控制上要方便一些。大家怎么看?

解决方案 »

  1.   

    StringGrid与数据库连接控件比如table之类的连接不太方便吧?
      

  2.   

    恩,我一般使用stringgrid,写数据库有些麻烦,但是控制灵活
      

  3.   

    1 使用缓存更新
    2 对数据库的操作你需要在指定位置INSERT么?就算你真的需要,这个也是可以实现的啊。
      

  4.   

    to tomguy:
       假设DBGrid1显示三条记录,现将指针指向第二条,想插入一条新的记录,用以下代码:
    ADOQuery1.Insert;
    ADOQuery1['aaa'] := 'Newone';
    ADOQuery1.Post;
    新记录却插到了末尾上。想对DBGrid网格任意位置插入新记录到底该如何做呢?
      

  5.   

    我一般不用批量输入,一条一条,然后用SQL语句加入纪录
      

  6.   

    你的新记录插入的位置有什么影响吗?为什么非地在某个特定的位置上插入?
    我没用过ADOQuery1,刚看了看帮助。插入的新记录在DBGrid的哪里出现和你的数据库有关系。你把你的表加上索引再试一下吧。
      

  7.   

    我一般用StringGrid,比DBGrid灵活
      

  8.   

    StringGrid怎么合数据库相联阿
      

  9.   

    我一般用StringGrid,自己改写成连接adoquery,十分方便
      

  10.   

      stringgrid 的“ 手工控制性 ” 要好一些
      

  11.   

    对第一个把DBGrid对应的数据集的LOCK TYPE属性设为ltbatchoptimistic就可以了