zoukankan      html  css  js  c++  java
  • 数据库上移和下移

    DECLARE @operType INT = 0;--0下移 1上移
    DECLARE @id INT = 1;

    declare @preSort int;--上一条记录的排序值
    declare @preid int; --上一条记录的id值
    declare @curSort int;--当前记录的排序值
    declare @nextSort int;--下一条记录的排序值
    declare @nextid int; --下一条记录的id值
    IF @operType = 0
    BEGIN
    with TB As (select top 1000 *,row_number() over(order by Sort desc) as rowid from cn9c080.tb_QQ_CommodityTemplete WHERE status <> 2 order by Sort desc)

    select @nextSort=sort,@nextid=id from TB where rowid=(select rowid-1 from TB where id=@id);
    select @curSort=Sort From cn9c080.tb_QQ_CommodityTemplete Where id=@id;
    IF @nextSort IS NULL
    BEGIN
    SELECT -1;--已经在最低部
    RETURN;
    END;

    update cn9c080.tb_QQ_CommodityTemplete set Sort=@nextSort where id=@id;
    update cn9c080.tb_QQ_CommodityTemplete set Sort=@curSort where id=@nextid;

    SELECT @@ROWCOUNT;
    END;
    ELSE
    BEGIN
    with TB As (select top 1000 *,row_number() over(order by Sort desc) as rowid from cn9c080.tb_QQ_CommodityTemplete WHERE status <> 2 order by Sort desc)
    select @preSort=sort,@preid=id from TB where rowid=(select rowid+1 from TB where id=@id);
    select @curSort=Sort From cn9c080.tb_QQ_CommodityTemplete Where id=@id;
    IF @preSort IS NULL
    BEGIN
    SELECT -2;--已经在最顶部
    RETURN;
    END;

    update cn9c080.tb_QQ_CommodityTemplete set Sort=@preSort where id=@id;
    update cn9c080.tb_QQ_CommodityTemplete set SOrt=@curSort where id=@preid;

    SELECT @@ROWCOUNT;
    END;

  • 相关阅读:
    ExtJs2.0学习系列(2)Ext.Panel
    ExtJs2.0学习系列(1)Ext.MessageBox
    ExtJs2.0学习系列(3)Ext.Window
    微软挖IBM公司Lotus合伙人 炫耀协同软件优势
    Vector
    H264和MPEG4起始码(startcode)
    Android有趣的全透明效果Activity及Dialog的全透明(附android系统自带图标大全)
    C++中的vector使用范例
    关于Vector
    用vector取代Cstyle的数组
  • 原文地址:https://www.cnblogs.com/zzgxl/p/10388137.html
Copyright © 2011-2022 走看看