1、首先得到一个第二列不重复的一个查询视图:
创新互联建站主营陆河网站建设的网络公司,主营网站建设方案,重庆APP开发,陆河h5微信小程序开发搭建,陆河网站营销推广欢迎陆河等地区企业咨询
select 第二列 from 数据表 group by 第二列
2、将不需要的记录标记为删除:
for 从查询试图取一条记录A
select * from 数据表 where 第二列=记录A order by id
for
如果是第一个记录,跳过继续循环
否则更新第二列内容为“删除”
记录指针移到下一条记录
next
next
delete from 数据表 where 第二列=“删除”
你是选中行,能获取到该行的id号吧,然后你直接就执行删除数据库记录就行了 ,你可以把删除写个存储过程,传进去id删除该记录,然后你重新对dataGridView进行数据绑定就可以了
在前台删除处写js代码
if(confim("确定删除?"))
{ //确定删除的页面?isdel=yes }
然后在后台page_load获取isdel的值,若为yes,则进行删除操作即可!
具体代码很麻烦,不说了,提个思路:鼠标点击Grid控件时,提取这条记录中具有唯一性的那一列的值,比如编号或身份证号等等(这个比较容易办到),然后按“删除”按钮时,先用Sql语句删除数据库中的这条记录,再重新填充一下这个DataGridView,就达到目的了。
这个你只能在gridview中添加一个复选框,也就是多选框,在列表外面也加一个多选框,加一个删除按钮,gridview中选择了几条信息 点击删除 就删除了几条,其中删除按钮中的代码如下
#region 删除
try
{
for (int i = 0; i this.GridView1.Rows.Count; i++)
{
CheckBox cb = this.GridView1.Rows[i].FindControl("cbcheck") as CheckBox; //cbCheck是gvlist中的单选按钮
if (cb.Checked == true)
{
string sid = GridView1.DataKeys[i].Value.ToString();//得到编号
//删除的sql语句和方法
string sqlstr = "update xinwen set isdelete=1 where id=@id";
Hashtable ht = new Hashtable();
ht.Add("@id", sid);
com.ExecuteSQL(sqlstr, ht);
}
}
setdata();
CheckBox cbAll = (CheckBox)GridView1.HeaderRow.Cells[1].FindControl("cbAll");
cbAll.Checked = false;
}
catch
{
}
#endregion
列表外面的多选框的代码如下图:
try
{
for (int i = 0; i = GridView1.Rows.Count; i++)
{
CheckBox cb = (CheckBox)GridView1.Rows[i].FindControl("cbcheck");//括号里面的CheckBox1这个是gridview中多选框的id
if (cball.Checked == true)
{
cb.Checked = true;
}
else
{
cb.Checked = false;
}
}
}
catch
{ }
希望你能看明白,这个只要你明白,把这代码复制上去就ok了, 就是删除中的sql语句和方法 要修改一下
Dim myConn As Data.OleDb.OleDbConnection
myConn = New System.Data.OleDb.OleDbConnection()
myConn.ConnectionString = strCon
myConn.Open()
Dim sqldel As String = "delete from Table where AAA='"datagridview1.CurrentRow.Cells(i).Value.ToString.Trim()"'
Dim del As OleDbCommand = New OleDbCommand(sqldel, myConn)
del.ExecuteNonQuery()
myConn.Close
然后再重新帮顶下datatable显示一下就ok了