Subscribe
TechTasks.net

The Blog is Moved to www.TechTasks.net

GridView Update,Delete,Adding (Insert) Record...

Posted by Rajesh Kumar Chekuri on

The Following Example is Explains How To Update,Delete,Adding(Insert) Record... In GridView

In Coding Page

<asp:GridView ID="GridView1" runat="server" Style="z-index: 100; left: 102px; position: absolute;top: 51px" AutoGenerateColumns="False" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" DataKeyNames="eno" OnRowCancelingEdit="GridView1_RowCancelingEdit" OnRowCreated="GridView1_RowCreated" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating" ShowFooter="True" CellPadding="4" ForeColor="#333333" GridLines="None">

<Columns>

<asp:BoundField DataField="eno" HeaderText="EmpNo" ReadOnly="True" SortExpression="eno" />

<asp:BoundField DataField="ename" HeaderText="ename" SortExpression="ename" />

<asp:BoundField DataField="sal" HeaderText="sal" SortExpression="sal" />

Columns>

<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />

<RowStyle BackColor="#EFF3FB" />

<EditRowStyle BackColor="#2461BF" />

<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />

<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />

<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />

<AlternatingRowStyle BackColor="White" />

asp:GridView>

<asp:Button ID="btninsert" runat="server" OnClick="btninsert_Click" Text="Add" Width="68px" style="z-index: 102; left: 103px; position: absolute; top: 25px" />



Set The Following Values in GridView Properties
AutoGenerateColumes=false;
AutoGenerateDelete=True;
AutoGenerateEditButton=true;
Datakeynames=eno;(Primary key coloume name)
ShowFooter=True;

The Following example is used MySql DB;
Example table Is Emp1(eno,ename,sal fields)


In .cs File

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.Odbc;


public partial class _Default : System.Web.UI.Page

{

string str;

OdbcConnection myConn

= new OdbcConnection("driver={Mysql odbc 3.51 driver};user id=root;password=admin;server=localhost;database=temp");

protected void Page_Load(object sender, EventArgs e)

{

if (IsPostBack == false)

{

str = "select * from emp1";

getdata(str);

}

}


public void getdata(string s)

{

OdbcDataAdapter da = new OdbcDataAdapter(s, myConn);

DataSet ds = new DataSet();

da.Fill(ds, "raji");

GridView1.DataSource = ds;

GridView1.DataBind();

}


protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)

{

int row = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value);

OdbcCommand cmd = new OdbcCommand("delete from emp1 where eno=" + row, myConn);

myConn.Open();

cmd.ExecuteNonQuery();

myConn.Close();

getdata("select * from emp1");

}

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)

{

GridViewRow row;

row = GridView1.Rows[e.RowIndex];

TextBox t;

t = (TextBox)row.Cells[2].Controls[0];

string nename = t.Text;

t = (TextBox)row.Cells[3].Controls[0];

int nsal = int.Parse(t.Text);

int eno = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value);

OdbcCommand cmd = new OdbcCommand("update emp1 set ename='" + nename + "',sal=" + nsal + " where eno=" + eno, myConn);

myConn.Open();

cmd.ExecuteNonQuery();

myConn.Close();

GridView1.EditIndex = -1;

getdata("select * from emp1");

}

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)

{

GridView1.EditIndex = e.NewEditIndex;

getdata("select * from emp1");

}

protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)

{

GridView1.EditIndex = -1;

getdata("select * from emp1");

}


protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)

{

if (e.Row.RowType == DataControlRowType.Footer)

{


TableCell cell1 = e.Row.Cells[1];

TextBox txteno = new TextBox();

txteno.ID = "txteno";

txteno.Width = 70;

cell1.Controls.Add(txteno);


TableCell cell2 = e.Row.Cells[2];

TextBox txtename = new TextBox();

txtename.ID = "txtename";

txtename.Width = 70;

cell2.Controls.Add(txtename);


TableCell cell3 = e.Row.Cells[3];

TextBox txtsal = new TextBox();

txtsal.ID = "txtsal";

txtsal.Width = 70;

cell3.Controls.Add(txtsal);

}

}



protected void btndelete_Click(object sender, EventArgs e)

{

string ds = "";

foreach (GridViewRow r in GridView1.Rows)

{

CheckBox cb = (CheckBox)r.FindControl("chk1");

if (cb.Checked)

{

int eno = Convert.ToInt32(GridView1.DataKeys[r.RowIndex].Value);

ds = "delete from emp1 where eno=" + eno;

OdbcCommand cmd = new OdbcCommand(ds, myConn);

myConn.Open();

cmd.ExecuteNonQuery();

myConn.Close();

}

}

getdata("select * from emp1");

}

protected void btninsert_Click(object sender, EventArgs e)

{

GridViewRow r = GridView1.FooterRow;

TextBox t;

t = (TextBox)r.FindControl("txteno");

int eno = int.Parse(t.Text);

t = (TextBox)r.FindControl("txtename");

string ename = t.Text;

t = (TextBox)r.FindControl("txtsal");

int sal = int.Parse(t.Text);

OdbcCommand cmd = new OdbcCommand("insert into emp1 values(" + eno + ",'" + ename + "'," + sal + ")", myConn);

myConn.Open();

cmd.ExecuteNonQuery();

cmd.Dispose();

getdata("select * from emp1");

}

}




Bookmark and Share
GridView Update,Delete,Adding (Insert) Record...SocialTwist Tell-a-Friend

11 comments:

kalpen said...

hi.i use this code. but when i click on edit and then change the values, and then click on the update button then it do not update the value.Instead it shows the old value.

CType((row.Cells[2].Controls[0],TextBox).Textthis gives me the old value not updated.

Anonymous said...

Top web site, I had not noticed funnydotnet.blogspot.com earlier in my searches!
Keep up the fantastic work!

Anonymous said...

Thanks for sharing the link, but unfortunately it seems to be down... Does anybody have a mirror or another source? Please answer to my post if you do!

I would appreciate if a staff member here at funnydotnet.blogspot.com could post it.

Thanks,
Mark

Anonymous said...

Greetings,

This is a question for the webmaster/admin here at funnydotnet.blogspot.com.

Can I use some of the information from your post right above if I give a link back to your website?

Thanks,
James

Anonymous said...

Hello, I think your blog is epic. Congrats.
Free Online Games

Rajesh Kumar.Chekuri said...

James..
You can use require info with a Back Link.

Cheers...

Anonymous said...

Hey,

This is a message for the webmaster/admin here at funnydotnet.blogspot.com.

Can I use part of the information from your post right above if I provide a link back to this site?

Thanks,
Peter

Anonymous said...

Greetings,

Thanks for sharing this link - but unfortunately it seems to be down? Does anybody here at funnydotnet.blogspot.com have a mirror or another source?


Cheers,
Jack

Anonymous said...

Hello there,

Thanks for sharing the link - but unfortunately it seems to be down? Does anybody here at funnydotnet.blogspot.com have a mirror or another source?


Thanks,
Peter

Anonymous said...

Hi - I am really glad to discover this. cool job!

Aditi said...

Thanks a ton..u r a life saviour!!

Subscribe to: Post Comments (Atom)
Thanks For Visiting