获取在vb.net的文本框中输入的列和值的总和

时间:2015-02-06 18:18:18

标签: vb.net ms-access-2010

我有一个名为AddU.text的文本框,我还有一个名为Quantity的msaccess表字段,我想要的是当我在AddU.Text中输入一个值并单击添加按钮时,我输入的值将自动添加到数量中的现有值。我一直在寻找解决方案,但无法找到合适的解决方案。谁能帮我?继承我目前的代码:

Dim cmd As New OleDb.OleDbCommand
    If Not conn.State = ConnectionState.Open Then
        conn.Open()
    End If
    Try
        cmd.Connection = conn
        cmd.CommandText = "UPDATE BC_Inventory SET [Addition]='" + AddU.Text + "'," + _
        "[Date_Updated]='" + DateU.Text + "',[Time_Updated]='" + TimeU.Text + "',[Updated_By]='" + UpdatedBy.Text + "'" + _
        "WHERE [Item]='" + com_ItemU.Text + "'"
        cmd.ExecuteNonQuery()




    Catch ex As Exception
        MessageBox.Show(ex.Message, "Error")
    Finally
        conn.Close()
    End Try

实际上我仍然没有代码,我一直在尝试我在研究中找到的代码,但没有任何帮助,这就是为什么我删除它。

1 个答案:

答案 0 :(得分:0)

我怀疑你的数量字段是你桌子上的一个字段? 这是更改的SQL查询。

Dim cmd As New OleDb.OleDbCommand

If Not conn.State = ConnectionState.Open Then
    conn.Open()
End If

Try
    ' SQL-Query with Database Update on Field Quantity = Quantity + AddU.Text
    Dim strSQL As String = "" & _
        "UPDATE BC_Inventory " & _
        "SET [Addition]     = '" & AddU.Text & "', " & _
        "    [Quantity]     = CDbl([Quantity]) + CDbl(" & CDbl(AddU.Text.Replace(",", ".")) & "), " & _
        "    [Date_Updated] = '" & DateU.Text & "', " & _
        "    [Time_Updated] = '" & TimeU.Text & "', " & _
        "    [Updated_By]   = '" & UpdatedBy.Text & "' " & _
        "WHERE [Item] = '" & com_ItemU.Text & "' "

    ' For Debugging
    ' MsgBox(strSQL)

    cmd.Connection = conn
    cmd.CommandText = strSQL
    cmd.ExecuteNonQuery()
Catch ex As Exception
    MessageBox.Show(ex.Message, "Error")
Finally
    conn.Close()
End Try

编辑1 : A"符号在行"WHERE [Item] ..."

中是双倍的

编辑2 : 已将Convert(DOUBLE, Quantity)更改为Convert(DOUBLE, [Quantity])

编辑3 :备注进行调试。

' For Debugging
' MsgBox(strSQL)

编辑4 :在最后添加了遗漏的)Convert(DOUBLE, '" & CDbl(AddU.Text) & "', "

编辑5 :将)'更改为')

编辑6 :现在使用CDec()代替Convert(Double, )

编辑7 CDbl(AddU.Text.Replace(",", "."))

编辑8 :删除了'围绕CDbl(AddU.Text)

编辑9 :将CDec替换为CDbl