yuesu/Install/procedures.sql

(开头部分) 10KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

/*
  SQL Stored Procedures File Created 2011
	
  Remove Comments RegEx: \/\*(.*)\*\/
  Remove Extra Stuff: SET ANSI_NULLS ON\nGO\nSET QUOTED_IDENTIFIER ON\nGO\n\n\n 
*/

if  exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[bigpage]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
--最通用的分页存储过程
-- 获取指定页的数据
DROP PROCEDURE [dbo].[bigpage]
GO
CREATE    PROCEDURE [dbo].[bigpage](
    @tblName   varchar(255),       -- 表名
    @strGetFields varchar(500) = '*',  -- 需要返回的列
	@fldName varchar(255)='',      -- 排序的字段名
	@PageSize   int = 10,          -- 页尺寸
	@PageIndex  int = 1,           -- 页码 
	@doCount  bit = 0,   -- 返回记录总数, 非 0 值则返回 
	@OrderType bit =1,  -- 设置排序类型, 非 0 值则降序
	@strWhere  nvarchar(4000) = '' ) -- 查询条件 (注意: 不要加 where) 
	AS
	BEGIN
		declare @strSQL   nvarchar(4000)       -- 主语句 
		declare @strTmp   varchar(200)        -- 临时变量
		declare @strOrder varchar(400)        -- 排序类型   
		if @doCount != 0 
		   BEGIN   
			   if @strWhere !=''   
				  set @strSQL = 'select count(*) as Total from '+ @tblName +' where '+ @strWhere   
			   else  
				  set @strSQL = 'select count(*) as Total from '+ @tblName +' '
		   END 
		   --以上代码的意思是如果@doCount传递过来的不是0,就执行总数统计。

		 --以下的所有代码都是@doCount为0的情况  
		else
			BEGIN 
				  if @OrderType != 0 
						BEGIN  
						 set @strTmp = '<(select min' 
						 set @strOrder = ' order by '+ @fldName +' desc'
						 --如果@OrderType不是0,就执行降序,这句很重要! 
						END 
				  else  
						BEGIN  
							set @strTmp = '>(select max' 
							set @strOrder = ' order by '+ @fldName +' asc'
						END  
 

				if @PageIndex = 1 
					BEGIN  
						if @strWhere != ''   
							set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ '  from '+ @tblName +' where ' + @strWhere + ' ' + @strOrder 
						else 
							set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ '  from '+ @tblName +' '+ @strOrder 
						--如果是第一页就执行以上代码,这样会加快执行速度 
					END 
				else 
后面还有 224 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。