zoukankan      html  css  js  c++  java
  • C#存储过程分页

    SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO

    CREATE  PROCEDURE [dbo].[UP_GetRecordByPage]

        @tblName      varchar(255),       -- 表名  

        @fldName      varchar(255),       -- 主键字段名

          @OrderfldName   varchar(255)='',   -- 排序字段  

        @PageSize     int = 10,           -- 页大小  

        @PageIndex    int = 1,            -- 页码  

        @OrderType    bit = 0,            -- 设置排序类型, 非值则降序(0为desc降序 1为asc升序)  

        @IsReCount    bit = 0,            -- 返回记录总数, 非值则返回(1为返回)  

        @strWhere     varchar(1000) = ''  -- 查询条件(注意: 不要加where)( and Price>2000)

    AS

    declare @strSQL   varchar(6000)       -- 主语句

    declare @strTmp   varchar(100)        -- 临时变量

    declare @strOrder varchar(400)        -- 排序类型

    --判断你是否提供了,排序字段

    if(@OrderfldName!='')

    begin  

      if(@OrderType!=0)  

        begin   

           --拼接字符串  

           set @strOrder=' order by ['+@OrderfldName+'] asc'  

        end

      else

         begin   

          set @strOrder=' order by ['+@OrderfldName+'] desc'  

        end

     end

     else

    begin  

      set @strOrder=' '

    end

    --是否求记录数

    if(@IsReCount!=0)

      begin  

      --是否有条件  

        if(@strWhere!='')  

          begin  

             set @strTmp='select Count(1) from ['+@tblName+'] where 1=1 '+ @strWhere  

          end  

    else   

      set @strTmp='select Count(1) from ['+@tblName+'] where 1=1 '

    end

    else  

      --求第10到第20条数据

       set @strTmp=' ' if(@IsReCount=0)

        begin

          set @strSQl='Select top '+str(@PageSize)+' * from ['+@tblName+'] where ['   

            +@fldName+'] not in (select top '+str((@PageIndex-1)*@PageSize)+' ['   

            +@fldName+'] from ['+@tblName+'] where 1=1 '   

            + @strWhere+@strOrder+') '+@strWhere+@strOrder+';'

    end

    else

      begin  

        set @strSQl = @strTmp

      end

    print (@strSQL)

    execute(@strSQL)

  • 相关阅读:
    理解爬虫原理
    中文词频统计与词云生成
    复合数据类型,英文词频统计
    字符串操作、文件操作,英文词频统计预处理
    了解大数据的特点、来源与数据呈现方式
    为Bootstrap模态对话框添加拖拽移动功能
    前端进阶学习笔记
    前端基础学习笔记
    MySQL学习笔记(模块二)
    MySQL学习笔记(模块一)
  • 原文地址:https://www.cnblogs.com/mulong/p/3716723.html
Copyright © 2011-2022 走看看