可能是你前面的语句有
Recordset.close

解决方案 »

  1.   

    只能是当前的RECORDSET 没有打开状态
      

  2.   

    1、不知道你的数据库连接打开没有,如果没有打开,首先打开。
    2、你的datagrid1也需要进行刷新。
    3、在adodc1的属性当中,不要设置recordsource属性。
      

  3.   

    坚决反对使用adodc1。太多的未知错误,弄的我没耐心学好它(据讲学好后很棒的)。直接用sql插入多好
      

  4.   

    我是用adodc1连接字符传的,并没有关闭他呀
    急?还可以再加分
      

  5.   

    Private Sub Form_Load()
    Set cn = New ADODB.Connection
    Set rs = New ADODB.Recordset
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\mdb\data.mdb;Persist Security Info=False"
    cn.CursorLocation = adUseClient
    rs.Open "select * from 填报单位", cn, adOpenDynamic, adLockOptimistic
    Set DataGrid1.DataSource = rs
    End Subdo you load this? try it baby!
      

  6.   

    楼上的
    我用的可是adodc,你误会我的意思了把
      

  7.   

    看名字我感觉“药品数量”字段应该是数字型的,所以应该为:
    adodc1.recordsouce="update 药品 set 药品数量=1000 where 药品数量<100
      

  8.   

    把 adodc1.refresh 去掉如下写:
    adodc1.recordsouce="update 药品 set 药品数量='1000' where 药品数量<'100'Set DataGrid1.DataSource = Adodc1
    DataGrid1.Refresh
      

  9.   

    DataGrid1.visible = false
    Set DataGrid1.DataSource = nothing
    adodc1.recordsouce="update 药品 set 药品数量='1000' where 药品数量<'100'
    adodc1.refresh
    Set DataGrid1.DataSource = Adodc1
    DataGrid1.Refresh
      

  10.   

    用ado代码吧,比控件好控制多了
      

  11.   

    *adodc1这个控件与数据库好像有连接测试,试一下!
    *注意控件的刷新次数,以及数据库文件是否设只读属性!如果不行的话,重启试试!
      

  12.   

    adodc这个控件不灵的,直接用ADO写吧