先看看我这段程序
Set cnn = New ADODB.Connection
        Set myrec = New ADODB.Recordset
        cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=admin;" _
        & "Data Source= " & App.Path & "\data.pro;Persist Security Info=False;Jet OLEDB:Database Password=sa"
        cnn.Open
        myrec.ActiveConnection = cnn
        myrec.CursorLocation = adUseClient
        myrec.CursorType = adOpenKeyset
        myrec.Open "select str_left from ad_name where 证str_name= '" & List1.Text & "'", , , adLockOptimistic
        
        myrec("str_left") = int_left
        myrec.Update
        myrec.Close
        cnn.Close
为什么运行结果提示“列信息不足或不存在,修改多行”
正确的应怎样

解决方案 »

  1.   

    我用msgbox myrec.recordcount显示结果为1啊
      

  2.   

    出现“列信息不足或不存在,修改多行”的提示是因为你数据表里没有建立主键而又有一些完全相同的数据行(记录),建议增加主键标识。btw:数据库相关的问题建议还是发到相应的板块,发这里不合适。
      

  3.   

    如果你有ID列,应该select它
    然后这样:select id ,str_left from....
    然后:rs.fields(1).value=另外,你的字段值好像是文本,赋值好像是整形的。这是怎么回事?呵。代码不规范吧
    注意要加把赋值语句写全了,否则会吃亏
    这样:rs.fields("str_left").value=