更新表行sql的列

时间:2013-10-24 12:20:29

标签: c# sql stored-procedures sql-update

http://upload7.ir/images/38494239720146662835.png

在这张图片中,我想通过查询读取第一行并将HASDATA更改为1或true(对于第一行),但所有行中的所有hasdata都更改为true。

这是我的存储过程代码:

ALTER procedure [dbo].[selecfirstvalue] (@ParentId int,@CrawlerCheck bigint)
as
select CatId, Title, ParentId, Url, CrawlerCheck from TBLCrowler 
update TBLCrowler set ParentId=@ParentId , CrawlerCheck=@CrawlerCheck , HasData=1 where CatId=CatId
end

这是我的c#代码:

IDataReader get = ClassBase.EReader("selecfirstvalue", System.Data.CommandType.StoredProcedure, new SqlParameter[]
{
new SqlParameter("@ParentId",ParentId),
new SqlParameter("@CrawlerCheck",CrawlerCheck)
});

1 个答案:

答案 0 :(得分:0)

为什么第一排确切?你如何确定第一行?如果它基于最小的CatId val,请使用

行中的内容
update TBLCrowler set ParentId=@ParentId , CrawlerCheck=@CrawlerCheck , HasData=1 
          where CatId=(Select min(CatId) from TBLCrowler)