步骤:声明-〉打开-〉添加-〉关闭dim cn as new adodb.connection
dim rs as new adodb.recordsetcn.open "yourdsn","user","password"
rs.open "query string",cn,adlockkeyset,adoptimisticrs.addnew
rs!field1=XX1
rs!field2=XX2
...
rs.updaters.close
cn.close
set rs=nothing
set cn=nothing
'代码中的部分参数还需要你根据实际情况添好
'这是一个不该在这里问的问题,有些时候要自己多捉摸,捉摸!

解决方案 »

  1.   

    AddNew 方法
    语法recordset.AddNew FieldList, Values参数FieldList   可选。新记录中字段的单个名称、一组名称或序号位置。Values   可选。新记录中字段的单个或一组值。如果 Fields 是数组,那么 Values 也必须是有相同成员数的数组,否则将发生错误。字段名称的次序必须与每个数组中的字段值的次序相匹配。说明使用 AddNew 方法创建和初始化新记录。通过 adAddNew 使用 Supports 方法可验证是否能够将记录添加到当前的 Recordset 对象。在调用 AddNew 方法后,新记录将成为当前记录,并在调用 Update 方法后继续保持为当前记录。如果 Recordset 对象不支持书签,当移动到其他记录时将无法对新记录进行访问。是否需要调用 Requery 方法访问新记录则取决于所使用的游标类型。如果在编辑当前记录或添加新记录时调用 AddNew,ADO 将调用 Update 方法保存任何更改并创建新记录
      

  2.   

    AddNew 方法范例
    该范例使用 AddNew 方法创建具有指定名称的新记录。Public Sub AddNewX()   Dim cnn1 As ADODB.Connection
       Dim rstEmployees As ADODB.Recordset
       Dim strCnn As String
       Dim strID As String
       Dim strFirstName As String
       Dim strLastName As String
       Dim booRecordAdded As Boolean   ' 打开连接。
       Set cnn1 = New ADODB.Connection
       strCnn = "Provider=sqloledb;" & _
          "Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=;"
       cnn1.Open strCnn
          
       ' 打开雇员表。
       Set rstEmployees = New ADODB.Recordset
       rstEmployees.CursorType = adOpenKeyset
       rstEmployees.LockType = adLockOptimistic
       rstEmployees.Open "employee", cnn1, , , adCmdTable   ' 从用户获取数据,雇员 ID 的格式必须为: 
       ' 名、中间名和姓的三个首字母, 
       ' 五位数字,以及性别标识 M 或 F。
       ' 例如,Bill Sornsin 的雇员 ID 为:B-S55555M。
       strID = Trim(InputBox("Enter employee ID:"))
       strFirstName = Trim(InputBox("Enter first name:"))
       strLastName = Trim(InputBox("Enter last name:"))   ' P只在用户输入姓和名之后进行。
       If (strID <> "") And (strFirstName <> "") _
          And (strLastName <> "") Then      rstEmployees.AddNew
          rstEmployees!emp_id = strID
          rstEmployees!fname = strFirstName
          rstEmployees!lname = strLastName
          rstEmployees.Update
          booRecordAdded = True      ' 显示新添加的数据。
          MsgBox "New record: " & rstEmployees!emp_id & " " & _
             rstEmployees!fname & " " & rstEmployees!lname   Else
          MsgBox "Please enter an employee ID, " & _
             "first name, and last name."
       End If
          
       ' 删除新记录,因为这只是演示。
       cnn1.Execute "DELETE FROM employee WHERE emp_id = '" & strID & "'"
          
       rstEmployees.Close
       cnn1.CloseEnd Sub
      

  3.   

    cn.execute "insert into..."
    rs.addnew
    rs.updata/rs.updatabatch