zoukankan      html  css  js  c++  java
  • GridView 上移 下移

    建一个表  t_hoteladvertise
    有如下字段:
    ID  自动增长(主要)
    SortID  INT (主要)
    Title  NVARCHAR(50)
    代码:

    CREATE proc sp_ehotel_DownAdvertise
    @ID INT
    as
    DECLARE @SortID int
    DECLARE @TempSortID INT
    DECLARE @TempID INT
    BEGIN  TRAN
    SELECT @SortID=SortID  from t_hoteladvertise where [ID]=@ID
    SELECT @TempSortID=max(SortID) from t_hoteladvertise where SortID>@SortID
    SELECT @TempID=[ID] from t_hoteladvertise WHERE SortID=@TempSortID
    if @@error>0 or @@rowcount<>1
    goto NeedRollBack
    UPDATE t_hoteladvertise SET SortID=@SortID WHERE [ID]=@TempID
    if @@error>0 or @@rowcount<>1
    goto NeedRollBack
    UPDATE t_hoteladvertise SET SortID=@TempSortID where [ID]=@ID
    NeedRollBack:
    if @@error>0 or @@rowcount<>1
      rollback tran
    else
    commit tran
    GO

    CREATE proc sp_ehotel_UpAdvertise
    @ID INT
    as
    DECLARE @SortID int
    DECLARE @TempSortID INT
    DECLARE @TempID INT
    BEGIN  TRAN
    SELECT @SortID=SortID  from t_hoteladvertise where [ID]=@ID
    SELECT @TempSortID=max(SortID) from t_hoteladvertise where SortID<@SortID
    SELECT @TempID=[ID] from t_hoteladvertise WHERE SortID=@TempSortID
    if @@error>0 or @@rowcount<>1
    goto NeedRollBack
    UPDATE t_hoteladvertise SET SortID=@SortID WHERE [ID]=@TempID
    if @@error>0 or @@rowcount<>1
    goto NeedRollBack
    UPDATE t_hoteladvertise SET SortID=@TempSortID where [ID]=@ID
    NeedRollBack:
    if @@error>0 or @@rowcount<>1
      rollback tran
    else
    commit tran
    GO
    代码段:
    代码:

    protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            SqlConnection conn = new SqlConnection();
           if (e.CommandName == "down")
            {
                int IndexID = Convert.ToInt32(e.CommandArgument);
                try
                {
                    XMLData.OpenDatabase(conn);
                    XMLData.ExecuteNonQuery(conn, "SP_EHOTEL_UPADVERTISE", IndexID);
                    Label2.Visible = true;
                    Label2.Text = "下移成功!";


                }
                catch (Exception)
                {
                    Response.Write("<script language='javascript'>alert('下移出错,点取消返回');</" + "script>");
                }
                finally
                {
                    XMLData.CloseDatabase(conn);
                    BindAdvertise();
                }
            }
            if (e.CommandName == "up")
            {
                int IndexID = Convert.ToInt32(e.CommandArgument);
                try
                {
                    XMLData.OpenDatabase(conn);
                    XMLData.ExecuteNonQuery(conn, "SP_EHOTEL_DOWNADVERTISE", IndexID);
                    Label2.Visible = true;
                    Label2.Text = "上移成功!";
                }


                catch (Exception)
                {
                    Response.Write("<script language='javascript'>alert('上移出错,点取消返回');</" + "script>");
                }
                finally
                {
                    XMLData.CloseDatabase(conn);
                    BindAdvertise();
                }
            }
        }
  • 相关阅读:
    C#中datatabel导出excel(三种方法)
    JDBC 使用说明
    c# lock (obj) 与 lock (this) 区别
    步步深入MySQL:架构>查询执行流程>SQL解析顺序
    SqlParameter的作用与用法
    c# winform窗口自适应各种分辨率类
    SQL中一个很好用的日期格式化函数
    C#生成缩略图
    设置VMware随系统开机自动启动并引导虚拟机操作系统
    在编写PL/SQL代码中使用SELECT语句时如何避免例外发生
  • 原文地址:https://www.cnblogs.com/ggbbeyou/p/1615774.html
Copyright © 2011-2022 走看看