Home » Applications » VB.NET – Update record in code behind

VB.NET – Update record in code behind

Default.aspx

Project Status:

<asp:DropDownList ID="UpdateStatus" runat="server">
    <asp:ListItem Text="Open" Value="Open">
    <asp:ListItem Text="In process" Value="In process">
    <asp:ListItem Text="On hold" Value="On hold">
    <asp:ListItem Text="Closed" Value="Closed">
</asp:DropDownList>
<asp:Button ID="UpdateBtn" runat="server" Text="Update" />

Default.vb.aspx


Imports System.Web.UI.WebControls.DropDownList

Protected Sub UpdateBtn_Click(sender As Object, e As System.EventArgs) _
                                                          Handles UpdateBtn.Click
' - query identifier
  Dim pid As Integer = Request.QueryString("pid")
  Dim ProjStat As DropDownList = UpdateBtn.FindControl("UpdateStatus")

  If pid > 0 Then

   ' - def oledb conn
   Dim oConn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; _
                                  Data Source=" & Server.MapPath("My_Projects.accdb"))
      Try
       oConn.Open()

        Dim sql As String
        sql = "UPDATE ProjectRequests SET ProjectStatus = @ProjStat WHERE ID = @ID"

        ' - def new oledb command
        Dim Cmd_UpdateStatus As New OleDbCommand(sql, oConn)
        Cmd_UpdateStatus.Parameters.AddWithValue("@ProjStat", ProjStat.Text.ToString)
        Cmd_UpdateStatus.Parameters.Add("@ID", OleDbType.Integer).Value = pid

        ' - execute query cmd / close conn
        Cmd_UpdateStatus.ExecuteNonQuery()
       oConn.Close()

         ' - update status
          Response.Redirect("Default.aspx?pid=" & pid)

      Catch ex As Exception
         lblMsg.Text = ex.Message.ToString()

       End Try
   End If
End Sub