DoCmd.RunSQL mySql得到运行时错误'3464'

时间:2014-12-18 05:44:52

标签: access-vba

我有这个简单的vba访问代码来更新数据库中的产品。但是当我调试时,它会在DoCmd语句处停止并出现运行时错误。我已就此类错误和代码进行了研究,并更改了代码但仍导致错误。下面是我更新产品价值的简单代码。

Sub UpdateProduct()

     Dim mySql As String

     mySql = "UPDATE " & Forms!UPDATE_PRODUCT!cbxLensType _
           & " SET LOT_NO = " & Forms!UPDATE_PRODUCT!txtLotNo _
           & " WHERE EAN_CODE = " & Forms!UPDATE_PRODUCT!txtEan & ";"
     DoCmd.RunSQL mySql

End Sub

你能帮我解释一下我的代码有什么问题吗?是因为更新语法吗? 提前谢谢。

**新访问vba

1 个答案:

答案 0 :(得分:0)

由于EAN_CODE是文本类型,因此需要将其括在单引号内。

Sub UpdateProduct()
    Dim mySql As String

    mySql = "UPDATE [" & Forms!UPDATE_PRODUCT!cbxLensType _
           & "] SET LOT_NO = " & Forms!UPDATE_PRODUCT!txtLotNo _
           & " WHERE EAN_CODE = '" & Forms!UPDATE_PRODUCT!txtEan & "';"

    DoCmd.RunSQL mySql

End Sub

如果LOT_NO也是文本类型,请确保它也包含在单引号中。