不能在VB.NET中更新SQL Server表

时间:2013-04-01 06:47:18

标签: sql sql-server vb.net visual-studio-2002

使用Visual Studio 2002和Microsoft SQL Server。我的代码不会产生错误,但SQL Server表仍然不受影响。 :(

此代码的“添加”版本效果很好。 。这只是更新。 T_T

    Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click

    Try
        ''Open DBase
        dbOpen()
        Dim cmd As New SqlCommand()
        Dim cmdm As New SqlCommand()

        cmd.CommandText = "UPDATE [Currency] SET Country= @Country, Unit= @Unit , Code= @Code WHERE ISO= @ISO"

        Dim paramISO As New SqlParameter()
        paramISO.ParameterName() = "@ISO"
        paramISO.Value() = txtIso.Text
        cmd.Parameters.Add(paramISO)

        Dim paramCountry As New SqlParameter()
        paramCountry.ParameterName() = "@Country"
        paramCountry.Value() = txtCountry.Text
        cmd.Parameters.Add(paramCountry)

        Dim paramUnit As New SqlParameter()
        paramUnit.ParameterName() = "@Unit"
        paramUnit.Value() = txtUnit.Text
        cmd.Parameters.Add(paramUnit)

        Dim paramCode As New SqlParameter()
        paramCode.ParameterName() = "@Code"
        paramCode.Value() = txtCurrencyCode.Text
        cmd.Parameters.Add(paramCode)

        MessageBox.Show("Record Updated! ", "Update Status", MessageBoxButtons.OK, MessageBoxIcon.Information)

    Catch ex As Exception
        MessageBox.Show("Record Not Updated! ", "Update Status", MessageBoxButtons.OK, MessageBoxIcon.Information)
    Finally
        dbClose()
        'refresh data grid
        fillgrid()
        'disable fields
        disControl()
    End Try
End Sub

1 个答案:

答案 0 :(得分:1)

你错过了这句话:

cmd.ExecuteNonQuery()  

在将所有参数添加到sqlCommand对象后添加此语句。