我正在寻找更新我存储在以下结构中的值的最佳方法:
表:页面
字段:
所以我有订单和页码。我需要在我拥有的页码之前插入一个页面,比方说25,并更新所有其他页面以将1添加到其pageorder值。
我是否可以在不拉动列表的情况下执行此操作并循环使其运行更新,或者这是最好的方法吗?
谢谢!
答案 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);