数据库中有一张表“A”,现在根据筛选条件将A表中的部分行,使用SqlDataAdapter的Fill方法填充到Table1中,
之后又会对Table1进行使用,用完之后,就需要将表A中的这些行(在Table1表中的)删除(此时的Table1已经没有用,也可以随意处理),请问,该如何删除?
------解决思路----------------------
1:使用Fill方法填充的时候,也将表的唯一标示符 也就是ID 填充到table1
2:对table1 “使用完之后”,遍历 table1的row,在A 表中根据 ID值进行删除。
------解决思路----------------------
用delete语句。。。
------解决思路----------------------
看着SqlDataAdapter我总不知该如何回答……
你就执行下Delete,然后再重新select填充吧
------解决思路----------------------

1、将数据库的数据获取得到后放到DataTable表后。
2、删除部分数据的方法是..
DataRow[] dr_arr = dt.Select("满足你要删除的条件");
foreach(DataRow dr in dr_arr ){
dt.Rows.Remove(dr);
}
3、适配器【SqlDataAdapters】da.Update(dt); 对表的更新提交到数据库
4、提交变更dt.AcceptChanges();
------解决思路----------------------
你的sql语句 直接写 select * from tablename where ..... 最后再加一句 delete table tablename
执行 SqlDataAdapter.Fill(dt);
一样可以获取到 查询语句的数据,同时数据已经删除掉了这些数据
------解决思路----------------------
方法一:既然都已经fill到数据库了,直接table1当然就同数据库中普通表格一样增删就行,这应该会吧。
方法二:用c#去编码。前面有人用remove去删除,这是行不通的。因为它只会删除你本地内存中的表格记录,数据库中table1仍然存在该行记录。代码:
table.Rows[某行].Delete(),再调用update的方法即可删除并提交数据库。
------解决思路----------------------
select后可以直接delete,因为此时数据缓存在table1.
------解决思路----------------------
Sqlconnect con=...
strSql = " select * from tablename ; delete tablename ;"
Sqlcommand com=...
SqlDataAdapter.Fill(dt)
------解决思路----------------------
执行Update方法之前,先new一个SqlCommandBuilder并关联到相应SqlDataAdapter。