更新数据库记录

问题描述:

我使用以下代码通过datagridview将数据检索到文本框后更新数据库记录。 但是,这给了我一个例外,因为没有将对象引用设置为对象的实例。请帮助更新数据库记录

Private Sub DataGridView_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridViewUserType.CellClick 
    Dim i As Integer 
    i = DataGridViewUserType.CurrentRow.Index 
    If i >= 0 Then 
     Me.txtBoxID.Text = DataGridViewUserType.Item(0, i).Value 
     Me.txtBoxUserType.Text = DataGridViewUserType.Item(1, i).Value 
    Else 
     MessageBox.Show("Empty Row Clicked") 
    End If 
End Sub 

Private Sub btnUserTypeUpdate_Click(sender As Object, e As EventArgs) Handles btnUserTypeUpdate.Click 
    Try 
     con.Open() 
     cmd.Connection = con 
     cmd.CommandText = "UPDATE dbo.User_Type SET Type = @tp WHERE Type_ID = @ID" 
     cmd.Parameters.AddWithValue("@ID", txtBoxID.Text) 
     cmd.Parameters.AddWithValue("@tp", txtBoxUserType.Text) 
     cmd.ExecuteNonQuery() 
     MessageBox.Show("Successfully Updated") 
    Catch ex As Exception 
     MessageBox.Show("Error while inserting record on table..." & ex.Message, "Update Records") 
    Finally 
     con.Close() 
     btnUserTypeSave.Show() 
     txtBoxID.Clear() 
     txtBoxUserType.Clear() 
    End Try 
End Sub 
+0

错误消息是说哪一行,或者您是否能够缩小哪个对象导致此错误?尝试在txtBoxID和txtBoxUserType字段中添加一个消息框,以查看它们是否可用于点击功能 – Lima

+0

在哪个行中显示错误?, –

+0

@Lima:我试过这样做,是的两个文本框都可用于点击事件n我找不到错误所指的行 – A1990

Thankz法比奥 错误是用“CMD” 我只是把点心作为CMD =的SqlCommand新的SqlCommand使用它之前,现在它正在发挥作用。

Thankz全部