比如一张表的列是Name,Age,Num我用SqlDaraReader类的read方法逐行读一张表,读到某一行,要删除这行,怎么写SQL语句?
解决方案 »
- winform中控件一般都怎么使用?
- Linq to xml查询出来的结果是什么类型的
- 如何用C#代码判断某TextBox的内容是否为邮箱?
- 求救:新手请教Visual Studio 2005(C#)基础问题!
- 关键字 'select' 附近有语法错误。
- 如何显示某行datagrid隐藏列的值?
- 封装数据库的问题!
- 无法创建C# web应用程序(错误:web访问失败)——请教高手,我已经穷途末路了啊!!!
- 我实在没分了,各位能不能义务帮忙啊?谢谢大家了~~~
- VS.NET2003使用问题?真他妈的气人,可是又找不到原因呀!
- asp.net 存储空间不足,无法完成此操作,请教大家
- 有谁给我解释一下,什么是有返回记录集的SQL语句???
SqlCommand delCmd=new SqlCommand("delete from table where Name='"+reader.getString(0)+"'",sqlConn);
delCmd.ExcuteNonQuery();
则
string sql="delete tab where id=你的ID";
执行如果你想读的时候就删了,那不行,必须另外操作,read只是读
with emp_cte as
(
select *,Row_Number() over(partition by Name order by Name) as emp_ID from 表名
)
delect from emp_cte where emp_ID>1
while (MyReader.Read())
{
//把读出的比如ID做为参数 比如
checkdata(Convert.Toint32(MyReader["id"].ToString()));
}public void checkdata(int id)
{
SqlConnection MSSQLConn = new SqlConnection(xxxxxx);
MSSQLConn.Open();
SqlCommand MSCmd = new SqlCommand(@"select count(id) from mytab where id=" + id,MSSQLConn);
int e = Convert.ToInt32(MSCmd.ExecuteScalar());
if(e>0)//说明重复
{
//删除这个ID的数据
}
}
WHERE 条件
你用SqlDaraReader类的read方法逐行读一张表 和你收到一条信息对比,如果一样,收集这条记录的ID放到一个集合类里,比如ArrayList里。 当读完后,把ArrayList里存的ID。再建立连接 做删除操作
DELETE *
FROM 表名
WHERE 条件
直接一个SQL语句就好了
delete from mytab where ID in (select ID from mytab group by ID having count(ID)>1)按照这个你可举一反三,有的东西SQL语句自己可以处理
up Ding
while(dr.Read())
{
if(dr["字段"]=你条件)
{
删除..........
}
}
大概这么个 意思