如何在删除之前将数据插入到另一个表中,但是首先我借助ID和在gridview中显示的数据搜索数据 [英] how can insert data into another table before deleting,but First I search data with help of ID and data show in gridview

查看:69
本文介绍了如何在删除之前将数据插入到另一个表中,但是首先我借助ID和在gridview中显示的数据搜索数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

尊敬的先生/女士


我是Shailendra Singh,是.Net的新手.我想在删除之前将数据插入到另一个表中,但是首先我要借助ID和在gridview中显示的数据来搜索数据. .






在此先感谢

Dear sir/Mam


I am Shailendra Singh and I am new to .Net .I want to insert data into another table before deleting,but First I search data with help of ID and data show in gridview.How can possible in C# Net Please Any help for particular problem .






Thanks In Advance

推荐答案

您可以在使用表触发器删除之前在另一个表中插入数据

意味着您可以编写一个触发器,该触发器将在删除数据之前在表上触发,这意味着您必须在删除触发器之前执行此操作.

并在触发器内编写用于将数据插入到备份表中的代码.

对于在gridview中显示数据,意味着要在该网格中显示哪些数据,它是已删除的数据还是剩余的数据.

如果已删除数据,则从备份表中选择数据并显示在网格上
如果是剩余数据,则从原始表中选择并在网格中显示..



有关触发器的更多详细信息,请参见此..
如何检查是否插入或插入 [ ^ ]
You can insert data in another table before deleting using a Table Trigger

Means you can write a trigger that will fire on your table before data will be delete means you have to do it with before delete trigger..

and inside a trigger write a code for inserting a data to your back up table.

and for displaying data to gridview, means which data would you like to display in that grid, it is deleted data or remaining data..

if it is deleted data then select data from your backup table and display on grid
and if it is remaining data then select from your original table and display it in grid..



for more detail on trigger please see this..
how to check whether it is inserte or update or delete in how to check whether it is update or delete in sql server trigger..?[^]


protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            TextBox txtserverName = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txtserveredit");
            DropDownList clientname = (DropDownList)GridView1.Rows[e.RowIndex].FindControl("ddlclient");
            
            DropDownList projectname = (DropDownList)GridView1.Rows[e.RowIndex].FindControl("ddlproject");
            LinkButton lnk=(LinkButton)GridView1.Rows[e.RowIndex].FindControl("lnkRequestthree");
           
            TextBox txtdate = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txtcal");
            
            string servername=txtserverName.Text;
            int id = Convert.ToInt16(lnk.CommandArgument.ToString());
            string clientnameval = clientname.SelectedItem.Text;
            string projectnameval = projectname.SelectedItem.Text;
            string date = txtdate.Text;
            
            DB_ref.updateIpSchemevalues(id, servername, clientnameval, projectnameval,date);
            
            string lnkipid = GridView1.DataKeys[e.RowIndex].Values[0].ToString();
           
           string lnkservername = servername;
           string lnkclientnamepublicip = GridView1.DataKeys[e.RowIndex].Values[2].ToString();
           string lnkclientnameprivateip = GridView1.DataKeys[e.RowIndex].Values[3].ToString();
           string lnkclientname = clientname.SelectedItem.Text;
           string lnkprojectname = projectname.SelectedItem.Text;
           string lnkdate = txtdate.Text;
           
            
           
            int IpId = Convert.ToInt16(lnkipid.ToString());

                int isactive = 1;

                string checkservername = DB_ref.insertcheckhistory("ServerName", IpId,lnkservername);

            if(lnkservername==checkservername)
            {
                DB_ref.updatetblhistory("ServerName", lnkservername, IpId,lnkservername);
            }
            else
            {
                DB_ref.inserthistory_tb(IpId, lnkservername, lnkclientnamepublicip, lnkclientnameprivateip, lnkclientname, lnkprojectname, lnkdate, isactive);

            }

}


public void inserthistory_tb(int ipid, string servername, string publicip, string privateip, string clientname, string projectname, string date_tb, int isactive)
        {
            sqldatabase objdatabase = new sqldatabase();
            SqlCommand objCmd;
            try
            {
                objCmd = new SqlCommand();
                objCmd.CommandText = "INSERT INTO tblIPHistory(IPID,ServerName,PublicIP,PrivateIP,ClientName,ProjectName,Date,isActive) VALUES(@IPID,@ServerName,@PublicIP,@PrivateIP,@ClientName,@ProjectName,@Date,@isActive)";
                objCmd.Connection = objdatabase.getConnection();

                objCmd.Parameters.AddWithValue("@IPID", ipid);
                objCmd.Parameters.AddWithValue("@ServerName", servername);
                objCmd.Parameters.AddWithValue("@PublicIP", publicip);
                objCmd.Parameters.AddWithValue("@PrivateIP", privateip);
                objCmd.Parameters.AddWithValue("@ClientName", clientname);
                objCmd.Parameters.AddWithValue("@ProjectName", projectname);
                objCmd.Parameters.AddWithValue("@Date", date_tb);
                objCmd.Parameters.AddWithValue("@isActive", isactive);
                
                
                objCmd.ExecuteNonQuery();
            }
            catch (Exception ex2)
            {
                string errrr = ex2.Message.ToString();
            }
            finally
            {
                objdatabase.closeConnection();
            }



        }


请参阅此示例..................

在更新之前维护记录的历史记录……
See this sample ..................

Maintaining history of records before updating...............


这篇关于如何在删除之前将数据插入到另一个表中,但是首先我借助ID和在gridview中显示的数据搜索数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆