Private Sub TestConnectDbf()
‘连接打开dabase III数据库
Set db = New ADODB.Connection
Set rs = New ADODB.Recordset
Dim w as string
Dim c as string
w = Mid$(dbname, 1, Len(dbname) - Len(Text2.Text))
iConc = "Provider=MSDASQL.1;Extended Properties= " & "DSN=dBASE Files;DBQ= " & w
db.Mode = adModeReadWrite
db.Open iConc
rs.Open Text2.Text, db
‘取得记录
Set Adodc1.Recordset = rs
C=rc()
‘进行添加记录
Adodc1.recordset.addnew
End sub
"为什么不让添加,提示说:"没有提供此项操作")

解决方案 »

  1.   

    rs 的游标类型不对,默认是forwardonly 只读,向前
    rs.cursortype=adstatic静态,或keyset 键集 dynamic 动态.
    在试试.
      

  2.   

    改为:
    Option ExplicitPrivate Sub TestConnectDbf()
    Dim db As ADODB.Connection
    Dim rs As ADODB.Recordset
    '‘连接打开dabase III数据库
    Set db = New ADODB.Connection
    Set rs = New ADODB.Recordset
    Dim w As String
    Dim c As String
    w = Mid$(dbname, 1, Len(dbname) - Len(Text2.Text))
    iConc = "Provider=MSDASQL.1;Extended Properties= " & "DSN=dBASE Files;DBQ= " & w
    db.Mode = adModeReadWrite
    db.Open iConc
    rs.Open Text2.Text, db, adOpenDynamic, adLockOptimistic
    '‘取得记录
    Set Adodc1.Recordset = rs
    c = rc()
    '‘进行添加记录
    Adodc1.Recordset.AddNew
    End Sub
      

  3.   

    试用execute 直接执行sql语句试试