无法更新VB.NET中的SQL Server表格

问题描述:

使用Visual Studio 2002和Microsoft SQL Server。我的代码不会产生错误,但SQL Server表仍然不受影响。 :(无法更新VB.NET中的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 

你缺少这样的说法:。

cmd.ExecuteNonQuery() 

添加此语句之后,你已经完成了将所有参数添加到你的sqlCommand对象中。

+0

O_O OMG非常感谢你!我已经花了2个小时试图弄清楚什么是错误。LOL还是需要练习......还是一个新手......: ) – kinrubich

+0

不客气。实践使完美。尝试阅读一些教程http://www.codeproject.com/ – viclim

+0

:)复制和粘贴的后果。 。哈哈我错过了执行线。 。我认为commandtext中有错误。 。 – kinrubich