sql = "update tablename set pw='123' where id='wang'"
Adodc1.RecordSource = sql
Adodc1.Refresh
我在ado控件中直接写的连接字符串,select没有问题 update怎么就不行,运行到Adodc1.Refresh出现对象关闭时,操作不被允许的提示。

解决方案 »

  1.   

    cg是一个连接dim cgk as new adodb.recordset
    dim cgsql as string
    cgsql="update………………"
    cgk.Open cgsql, cg
    Adodc1.CommandType = adCmdText
    Adodc1.ConnectionString = cg
    Adodc1.RecordSource = cgsql应该像这样写~你再试试
      

  2.   

    执行到cgk.Open cgsql, cg时报错 变量或类型不正确或不在可接受范围内,要不就是与其他数据冲突
      

  3.   

    定义了cg的连接之后   依然是运行到Adodc1.Refresh出现对象关闭时,操作不被允许的提示
      

  4.   

    SQL中的update语句只能更新数据库,不能打开!你得重新设置一个打开数据库的语句!
    cg是一个连接dim cgk as new adodb.recordset
    dim cgsql as string
    cgsql="update………………"
    cgk.Open cgsql, cg
    到此只是对数据库进行更新
    并没有打开数据库~
    cgsql="select ………………"
    cgk.Open cgsql, cg
    这回才把数据打开!
    Adodc1.CommandType = adCmdText
    Adodc1.ConnectionString = cg
    Adodc1.RecordSource = cgsqlQQ26857679我的QQ
      

  5.   

    cg是一个连接对象呀,你没设连接对象,肯定报错啦
    要加上例如
        Dim cg As ADODB.Connection
        Set cg = New Connection
        cg.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\abc.mdb"
      

  6.   

    都写好了之后还是adodc1.refresh报错  但是纪录已经被修改了
    使用了错误陷阱能过去  现在的问题就是怎么才能让他不报错就可以了
      

  7.   

    我感觉这样的操作还是不用ado数据控件,改用ado数据对象比较好
    例1----------------------------使用Connection对象连接直接执行
    Dim Conn As ADODB.Connection
    Dim str,sql as String
    str="Provider=SQLOLEDB.1;uid=sa;pwd=;database=DBName;SERVER=localhost"
    Set Conn = New ADODB.Connection
    Conn.Open str_Conn
    sql = "update tablename set pw='123' where id='wang'"
    conn.Execute sql 
    例2----------------------------使用Command对象执行
    Dim Conn As ADODB.Connection
    Dim Com As ADODB.Command
    Dim str,sql as String
    str="Provider=SQLOLEDB.1;uid=sa;pwd=;database=DBName;SERVER=localhost"
    Set Conn = New ADODB.Connection
    Conn.Open str_Conn
    Set Com = New ADODB.Command
    Com.ActiveConnection = Conn
    sql = "update tablename set pw='123' where id='wang'"
    Com.CommandText =sql 
    Com.Execute
      

  8.   

    改错,上面两个例子中
    Conn.Open str_Conn应改为Conn.Open str
    不好意思
      

  9.   

    用ado数据对象,问题解决了,结贴,谢谢各位。