C#SQL:如何在多个记录中将数据库中的整数值增加1?

时间:2011-06-10 17:38:46

标签: c# sql

我正在寻找更新我存储在以下结构中的值的最佳方法:

表:页面

字段:

  1. id(int)
  2. bookid(int)
  3. pageorder(int)
  4. filename(string / varchar)
  5. 所以我有订单和页码。我需要在我拥有的页码之前插入一个页面,比方说25,并更新所有其他页面以将1添加到其pageorder值。

    我是否可以在不拉动列表的情况下执行此操作并循环使其运行更新,或者这是最好的方法吗?

    谢谢!

2 个答案:

答案 0 :(得分:7)

declare @newpage int
set @newpage = 25
update pages set pageorder = pageorder +1 where pageorder >= @newpage and bookid = @bookid

类似的东西?

答案 1 :(得分:2)

严格使用SQL,像这样

update pages 
set pageorder = pageorder + 1
where bookid=@bookid
and pageorder >= @pageorder;

insert into Pages
(id,bookid,pageorder,filename)
values
(@id,@bookid,@pageorder,@filename);