ARTICLE

Update table using ExecuteNonQuery

Posted by Sapna Articles | ASP.NET using VB.NET July 13, 2011
ExecuteNonQuery method use to execute a SQL Command that does not return a set of rows. This method you can use when want to do manipulation such as Update,Delete and Insert sql commands.
Download Files:
 
Reader Level:

In my previous article you have seen that how can use ObjectDataSource to add database to Grid view. Now you will learn how to update table using ObjectDataSource.
 I have use ExecuteNONQuery and ExecuteReader methods in this article.
 ExecuteNonQuery method use to execute a SQL Command that does not return a set of rows. This method you can use when want to do manipulation such as Update,Delete and Insert sql commands.
 ExecuteReader method use for accessing data. It provide read only ,forward only and connected record set.

Default.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head runat="server">
    <title></title>

</
head>
<
body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
            DataSourceID="ObjectDataSource1"  >
            <Columns>
                <asp:CommandField ShowEditButton="True" />
                <asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" />
                <asp:BoundField DataField="FirstName" HeaderText="FirstName"
                    SortExpression="FirstName" />
                <asp:BoundField DataField="LastName" HeaderText="LastName"
                    SortExpression="LastName" />
                <asp:BoundField DataField="Country" HeaderText="Country"
                    SortExpression="Country" />
                <asp:BoundField DataField="Phone" HeaderText="Phone" SortExpression="Phone" />

                <asp:BoundField DataField="Salary" HeaderText="Salary"
                    SortExpression="Salary" />
            </Columns>
        </asp:GridView>
        <asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
            SelectMethod="All_Detail" TypeName="Employee" UpdateMethod="Update_Detail">
            <UpdateParameters>
                <asp:Parameter Name="Id" Type="Int32" />
                <asp:Parameter Name="FirstName" Type="String" />
                <asp:Parameter Name="LastName" Type="String" />
                <asp:Parameter Name="Country" Type="String" />
                <asp:Parameter Name="Phone" Type="Int64" />
                <asp:Parameter Name="Salary" Type="Int64" />
            </UpdateParameters>
        </asp:ObjectDataSource>
    </div>
    </form>
</body>
</html>

App_code/Employee.vb

Imports Microsoft.VisualBasic
Imports
System.Collections.Generic
Imports
System.Web
Imports
System.Web.Configuration
Imports
System.Data
Imports
System.Data.SqlClient

Public
Class Employee
    Private Shared ReadOnly Connection_String As String
    Shared Sub New()
        Connection_String = WebConfigurationManager.ConnectionStrings("EmployeeTable").ConnectionString
    End Sub
    Private E_id As Integer
    Private E_fname As String
    Private E_lname As String
    Private E_country As String
    Private E_phone As Long
    Private E_salary As Long
    Public Property ID() As Integer
        Get
            Return E_id

        End Get
        Set(ByVal value As Integer)
            E_id = value
        End Set

    End Property
    Public Property FirstName() As String
        Get
            Return E_fname

        End Get

        Set(ByVal value As String)
            E_fname = value
        End Set
    End Property
    Public Property LastName() As String
        Get
            Return E_lname
        End Get

        Set(ByVal value As String)
            E_lname = value
        End Set
    End Property
    Public Property Country() As String
        Get
            Return E_country
        End Get
        Set(ByVal value As String)
            E_country = value
        End Set
    End Property
    Public Property Phone() As Long
        Get
            Return E_phone
        End Get
        Set(ByVal value As Long)
            E_phone = value
        End Set
    End Property

    Public Property Salary() As Long
        Get
            Return E_salary
        End Get
        Set(ByVal value As Long)
            E_salary = value
        End Set
    End Property

    Public Function All_Detail() As List(Of Employee)
        Dim List_Emp As New List(Of Employee)()
        Dim con As New SqlConnection(Connection_String)
        Dim cmd As New SqlCommand("SELECT Emp_id,Emp_fname,Emp_lname,Emp_countyr,Emp_phone_no,Emp_salary from Employee", con)
        Using con
            con.Open()
            Dim SdReader As SqlDataReader = cmd.ExecuteReader()
            While SdReader.Read()
                Dim Emp As New Employee()
                Emp.ID = CInt(SdReader("Emp_ID"))
                Emp.FirstName = DirectCast(SdReader("Emp_fname"), String)
                Emp.LastName = DirectCast(SdReader("Emp_lname"), String)
                Emp.Country = DirectCast(SdReader("Emp_countyr"), String)
                Emp.Phone = CLng(SdReader("Emp_phone_no"))
                Emp.Salary = CLng(SdReader("Emp_salary"))
                List_Emp.Add(Emp)
            End While
        End Using
        Return List_Emp
    End Function
 

    Public Sub Update_Detail(ByVal Id As Integer, ByVal FirstName As String, ByVal LastName As String, ByVal Country As String, ByVal Phone As Long, ByVal Salary As Long)
        Dim con As New SqlConnection(Connection_String)
        Dim cmd As New SqlCommand("Update Employee set Emp_fname=@fname, Emp_lname=@lname, Emp_countyr=@country, Emp_phone_no=@phone, Emp_salary=@salary where Emp_id=@id",
con)
        cmd.Parameters.AddWithValue("@id", Id)
        cmd.Parameters.AddWithValue("@fname", FirstName)
        cmd.Parameters.AddWithValue("@lname", LastName)
        cmd.Parameters.AddWithValue("@country", Country)
        cmd.Parameters.AddWithValue("@phone", Phone)
        cmd.Parameters.AddWithValue("@salary", Salary)
        Using con
            con.Open()
            cmd.ExecuteNonQuery()
        End Using
    End Sub

End Class

Web.Config

<?xml version="1.0"?>
<
configuration>
          <
connectionStrings>
                   <
add name="EmployeeTable" connectionString="Data Source=GURJEET-PC\GURJEET;Initial Catalog=master;Persist Security Info=True;User ID=sa;Password=gurjeetsingh"
providerName
="System.Data.SqlClient"/>

          </
connectionStrings>
          <
system.web>
                   <
compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/>
          </
system.web>

</configuration>

Output

ExecuteNonQuery


ExecuteNonQueryExecuteNonQuery

ExecuteNonQuery

Edit4.gifExecuteNonQuery

Login to add your contents and source code to this article
share this article :
post comment
 
Become a Sponsor
PREMIUM SPONSORS
  • ceTE software specializes in components for dynamic PDF generation and manipulation. The DynamicPDF™ product line allows you to dynamically generate PDF documents, merge PDF documents and new content to existing PDF documents from within your applications.
    Get 2 Months Free of ASP.NET Hosting for Only $4.95/month! Receive FREE MS SQL and MySQL Databases Including ASP.NET 4/3.5, MVC 3.0, Silverlight 4, Windows 2008/IIS 7.0 Plus FREE IIS 7 Modules. Host UNLIMITED ASP.NET Web Sites - Click Here!
Become a Sponsor