本来就只一步操作,不用 cn.BeginTrans,cn.CommitTrans
Access对事务处理的支持不是很完善

解决方案 »

  1.   

    同上
    还有cn.execute sqlinsert
      

  2.   

    换另一中插入方式  字段=XXX
      

  3.   

    下面的代码:
        dim jyrshot2 as new ADODB.RecordSet
        Dim jyrsql2 As String
        jyrsql2 = "SELECT * FROM vin_color "
        jyrshot2.open jyrsql2, cn, adOpenDynamic, adLockOptimistic ,adCmdText
    或者:
       dim jyrshot2 as new ADODB.RecordSet
       jyrshot2.open "vin_color", cn, adOpenDynamic, adLockOptimistic ,adCmdTable
      

  4.   

    加一句:Clipboard.GetText sqlinsert,
    然后贴到access里运行,看看行不行
      

  5.   

    慢慢来找出问题:
    1。先给程序加上出错处理代码:
    在函数的开始处加上
    OnErrorGotoErrorHandler
    在函数结束处加上
    exitfunction
    ErrorHandler:
    msgboxerr.Number&err.Source&err.Description
    运行程序,看是否出错。如果出错,看出错的原因。2。如果不出错,则改用另外的插入方法,这种方法要清楚明了的多:
    dimrsasnewadodb.recordset
    rs.open"TAB_FITMENT",cn,adOpenDynamic,adLockOptimistic,adCmdTable '<--注意此处参数
    rs.AddNew
    rs("fitid")=1
    ...依次类推其他字段
    rs.update
    rs.close
    setrs=nothing
      

  6.   

    是不是多次连接了数据库,或连续Begintrans,或Committrans