一款很简单的sql分布代码,并且是一款通用sql哦 。
1. 页面全部经过SEO(搜索引擎优化)处理 2. 支持IE、FireFox等主流浏览器,在IE 和FireFox下显示相同的效果 3. 符合W3C国际网页标准,页面全部采用DIV+CSS布局 4. 采用SQL server数据库,所有数据库操作采用存储过程 5. 部分功能采用AJAX技术,良好的用户体验。 6. 后台集成在线HTML编辑软件FCKEditor,自定义美观的内容
0
set quoted_identifier on go set ansi_nulls on go create proc execbypage @sqlquery varchar(2000), --//输入参数:sql检索语句或表名 @pagesize int, --//输入参数:每页显示记录条数 @pageindex int --//输入参数:当前页码 as set nocount on set ansi_warnings off declare @tmptablename varchar(50) set @tmptablename = '##tb1516_' + replace(cast(newid() as varchar(40)),'-','') --//生成随机临时表名称 declare @subindex int set @subindex = charindex('from',@sqlquery) if (@subindex > 0) begin --//带from的标准检索语句 declare @sqlquery1 varchar(2000) declare @sqlquery2 varchar(2000) set @sqlquery1 = substring(@sqlquery,1,@subindex - 1) set @sqlquery2 = substring(@sqlquery,@subindex,len(@sqlquery)) set @sqlquery = @sqlquery1 + ',identity(numeric,1,1) as id1516 into ' + @tmptablename + ' ' + @sqlquery2 end else --//不带from的表名 begin set @sqlquery = 'select *,identity(numeric,1,1) as id1516 into ' + @tmptablename + ' from' + @sqlquery end exec(@sqlquery) --//建立并初始化临时表数据 declare @indexstart varchar(20),@indexend varchar(20) set @indexstart = cast((@pageindex-1)*@pagesize+1 as varchar(20)) --//数据起始行id set @indexend = cast(@pageindex * @pagesize as varchar(20)) --//数据结束行id exec('select * from ' + @tmptablename + ' where id1516 between ' + @indexstart + ' and ' + @indexend) --//检索该页数据 exec('select max(id1516) as recordcount from ' + @tmptablename) --//提取总条数 exec('drop table ' + @tmptablename) --//删除临时表 go set quoted_identifier off go set ansi_nulls on go
1、确定存储的输入参数:
1)sql脚本,该参数接收完整的、正确的sql检索文本,可将原应用中写好的sql脚本直接传入
2)每页的数据容量,就是一页有多少条数据
3)当前页码
2、确定分页机制:
1)执行传入的sql脚本,并将结果生成临时表
2)修改临时表的结构,增加标识列字段
3)根据标识列字段,计算出指定页码内的记录范围,并返回
4)返回总数据条数,用于客户端进行分页显示
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号