小弟用一个Adodc控件连接到远程SQL Server数据库服务器,想在其中的一个表中每天插入一行数据,与数据库的连接正常,将相应的SQL语句赋给Adodc.RecordSource后,调用该控件的refresh方法时就会出错: 对象关闭时不能操作什么的.应该是Adodc控件处于关闭状态,那么怎样才能打开呢?

解决方案 »

  1.   

    Me.Adodc1.Recordset.Open  ?
    没有遇到过你说的这种情况
      

  2.   

    参考下面的应该可以解决:
      Adodc3.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; data source=" & App.Path & "\实时数据库.mdb"
        For i = cs_qsjh To 10
            Adodc1.RecordSource = "select * from 写入临时表  where 炉号=" & Str(i) & ""
            Adodc1.Refresh
            Adodc1.Recordset.Fields("仪表给定温度") = ""
            Adodc1.Recordset.Fields("仪表修正") = ""
            Adodc1.Recordset.Fields("测量模块IO值") = ""
            Adodc1.Recordset.Update
            Adodc1.Recordset.Close
        Next
      

  3.   

    Cnct="DSN=JMSST;Database=JMSST;uid=sa;pwd=admin;server=server"With Me.Adodc1
            .ConnectionString = Cnct
            .ConnectionTimeout = 30
            .RecordSource = "select cl_code,cl_name,model,dw,dj from cldb "
            .Refresh
    End Withrefresh会出错吗?看看你写的代码?
      

  4.   

    假设你的数据源是RS,即ADODC1.RECORDSET使用以下方法添加数据
    RS.ADDNEW
    RS(0)=???
    RS(1)=????
    .......
    RS.UPDATE使用SQL的话,那你就不需要ADODC了,因为多此一举,保留ADODC的类库(就是添加控件以后,再删除这个控件,当然是在部件里面,主要使添加了一个MICROSOFT ACTIVEX DATA OBJECT 2.5 LIBRARY)
    然后写入DIM CONN AS ADODB.CONNECTION
    DIM CMD AS ADODB.COMMAND
    SET CONN=NEW ADODB.CONNECTION
    SET CMD=NEW ADODB.COMMAND
    CONN.OPEN 你在ADODC1里面的连接字符串
    CMD.ACTIVECONNECTION=CONN
    CMD.COMMANDTEXT=你的SQL语句
    CMD.EXECUTE
    CONN.CLOSE