数据库DoCmd.RunSql中的SQL错误

时间:2017-04-13 15:24:39

标签: mysql vb.net

Private Sub Form_Close()

    Dim sSQL, stringSQL As String
    Dim rst As DAO.Recordset

    sSQL = "SELECT BarCode, [Goods Name] FROM tblInventory WHERE BarCode='" & Me.ID & "'"
    Set rst = CurrentDb.OpenRecordset(sSQL)
    If rst.EOF Then
        stringSQL = "INSERT INTO tblInventory(BarCode,[Goods Name],Unit,[Unit Price],[Initial Stock],[Current Stock],[Exit Item]) values('" & Me.ID & "','" & Me.Description & "','" & Me.Unit & "'," & Replace(Format(Me.Price, "0.00"), ",", ".") & "," & Me.Amount & "," & Me.Amount & ",0)"
        DoCmd.SetWarnings False
        DoCmd.RunSQL (stringSQL) /this is where it is erroring out/
        DoCmd.SetWarnings True
    Else
        stringSQL = "UPDATE tblInventory SET [Current Stock]=[Current Stock]+" & Me.Amount & " WHERE BarCode='" & Me.ID & "'"
        DoCmd.SetWarnings False
        DoCmd.RunSQL (stringSQL)
        DoCmd.SetWarnings True
    End If
    rst.Close
End Sub

Private Sub ID_AfterUpdate()
    Dim sSQL As String
    Dim rst As DAO.Recordset

    sSQL = "SELECT BarCode, [Goods Name], Unit, [Unit Price] FROM tblInventory WHERE BarCode='" & Me.ID & "'"
    Set rst = CurrentDb.OpenRecordset(sSQL)
    If rst.EOF Then
        MsgBox "New Parts"
        Me.Description.SetFocus
    Else
        Me.Description = rst(1).Value
        Me.Unit = rst(2).Value
        Me.Price = rst(3).Value
        Me.Amount.SetFocus
    End If
    rst.Close
End Sub

以上错误输出上面说明当我运行insert to table时,它在doCmd.RunSql(StringSQL)上有错误,所以不确定我做错了什么

0 个答案:

没有答案