Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#SQL:如何在多条记录上将数据库中的整数值增加一?_C#_Sql - Fatal编程技术网

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

C#SQL:如何在多条记录上将数据库中的整数值增加一?,c#,sql,C#,Sql,我正在寻找更新存储在以下结构上的值的最佳方法: 表:页面 字段: id(int) 图书编号(国际) 页面顺序(整数) 文件名(字符串/varchar) 我有书单和页码。我需要在我拥有的页码之前插入一页,比如说25页,然后更新所有其他页面,使其pageorder值增加1 我是否可以在不拉列表和运行更新的情况下完成此操作,或者这是最好的方式 谢谢 declare @newpage int set @newpage = 25 update pages set pageorder = pageorder

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

表:页面

字段:

  • id(int)
  • 图书编号(国际)
  • 页面顺序(整数)
  • 文件名(字符串/varchar)
  • 我有书单和页码。我需要在我拥有的页码之前插入一页,比如说25页,然后更新所有其他页面,使其pageorder值增加1

    我是否可以在不拉列表和运行更新的情况下完成此操作,或者这是最好的方式

    谢谢

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


    类似的东西?

    严格地说,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);
    

    严格使用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);
    

    看起来它正在工作,非常感谢!如果可以,我会接受。可能想按bookid进行过滤,否则结果会很糟糕。是的,我只提供了一个非常粗略的原型-你肯定想添加过滤,这样你就不会更新每本书。是的,我想,但你的回答给了我一些不知怎么从我脑海中溜走的信息。看起来它正在工作,非常感谢!如果可以,我会接受的。可能想按bookid进行过滤,否则结果会很糟糕。是的,我只给出了一个非常粗略的原型-你肯定想添加过滤,这样你就不会更新每本书了。是的,我想,但你的回答给了我一点信息,不知怎的,我忘记了。你想先小心地进行更新,否则,你会在插入后得到两个第25页,这两个页面在更新后都会变成第26页。不确定是否值得投否决票。被接受的答案甚至不按bookId:p过滤,结果可能更糟。我假设否决票是因为最初是我先插入的。有趣的是,我实际上做了一个心理笔记,先做了更新,然后继续打错。哦,好吧,现在修好了。你要先小心更新,否则插入后会有两个第25页,更新后会变成第26页。不确定是否值得否决。被接受的答案甚至不按bookId:p过滤,结果可能更糟。我假设否决票是因为最初是我先插入的。有趣的是,我实际上做了一个心理笔记,先做了更新,然后继续打错。哦,好吧,现在修好了。