永发信息网

如何用easyUI做Oracle的分页

答案:1  悬赏:50  手机版
解决时间 2021-11-25 00:07
如何用easyUI做Oracle的分页
最佳答案
select * from (select t.* rownum row_id form (select * from 表名) t ) where row_id>=1 and row_id<=10
这条SQL语句就可以实现分页查询,当然光有SQL还是不行,用以下的PHP 函数就可实现分页了。

function page($page,$total,$phpfile,$pagesize=10,$pagelen=10,$str='')
{
$pagecode = '';//定义变量,存放分页生成的HTML
$page = intval($page);//避免非数字页码
$total = intval($total);//保证总记录数值类型正确
if(!$total) return array();//总记录数为零返回空数组
$pages = ceil($total/$pagesize);//计算总分页
//处理页码合法性
if($page<1) $page = 1;
if($page>$pages) $page = $pages;
//计算查询偏移量
$offset = $pagesize*($page-1)+1;
//页码范围计算
$init = 1;//起始页码数
$max = $pages;//结束页码数
$pagelen = ($pagelen%2)?$pagelen:$pagelen+1;//页码个数
$pageoffset = ($pagelen-1)/2;//页码个数左右偏移量
//生成html
$pagecode='';
$pagecode.="共".$total."条信息 第".$page."页/共".$pages."页\n";//第几页,共几页
//如果是第一页,则不显示第一页和上一页的连接
if($page!=1){
$pagecode.=" 首页 ";//第一页
$pagecode.=" 上页 ";//上一页
}
//分页数大于页码个数时可以偏移
if($pages>$pagelen)
{
//如果当前页小于等于左偏移
if($page<=$pageoffset)
{
$init=1;
$max = $pagelen;
}else
{
//如果当前页大于左偏移
//如果当前页码右偏移超出最大分页数
if($page+$pageoffset>=$pages+1)
{
$init = $pages-$pagelen+1;
}else{
//左右偏移都存在时的计算
$init = $page-$pageoffset;
$max = $page+$pageoffset;
}
}
}
//生成html
for($i=$init;$i<=$max;$i++)
{
if($i==$page)
{
$pagecode.=''.$i.'';
} else {
$pagecode.=" $i ";
}
}
if($page!=$pages)
{
$pagecode.=" 下页 ";//下一页
$pagecode.=" 末页";//最后一页
}
$pagecode.='';
$onset = $offset + $pagesize -1;
return array('pagecode'=>$pagecode,'sqllimit'=>' and row_id between '.$offset.' and '.$onset);
}
使用方法如下:
1,首先查询最大数据条数
$sql="select count(*) co_unt from 表名";
$st = OCIParse($conn, $sql);//分析指令
OCIExecute($st); //执行指令
$row=oci_fetch_array($st);
$counts=$row['CO_UNT'];
if($counts>0){
$page=isset($_GET['page'])?$_GET['page']:1;
$getpageinfo = page($page,$counts,$phpfile,$chahaoString,10,15);
$pagesql=$getpageinfo['sqllimit'];//组合完整的SQL语句
$pagenav=$getpageinfo['pagecode'];//分页显示的样式代码
$sql="select * from (select t.* rownum row_id form (select * from 表名) t ) where 1=1 ".$pagesql
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
这种尖尖的口罩叫什么名字
海马助手deemo2.0是破解版吗?为什么只有三个
如何快速把多个sheet拆分成单个表格,求代码
从康桥到江湾镇站怎么走
在美国没有中国驾照原件能开车吗?
我已经开了网游加速器 但是为什么还是延迟过
怎样才能合理的开支
sap 如何将会计科目表层的会计科目复制到公司
佳翼国际少儿美术教育(大连中山区)地址在什么
三相变压器的额定容量是指的一个绕组的容量还
在地面上匀速直线滚动的车轮(假设其车轮厚度
我想当童星,请问在哪里找到星探
求,小数乘除法200道,笔算和递等式计算80道
绿苹果瓷砖是几线品牌
跪求jkrd33 保険屋の叔母さんに中出し!! !
推荐资讯
什么叫平滑移动平均线和移动平均线有什么区别
三生保健品过期还能吃吗?
乔司至盐管看潮水公交车怎么乘
电梯相邻地坎大于11米,不具备安装安全门,按国
央企和国企集中处于那个产业
爱之越深.恨之越切吗.?
我开的一个腐竹厂,由于环保,现在用的是0.5-
我这今天刚打完瘦脸针,也不疼,也不酸,啥感
广西贵港新视觉烫画坊论坛是骗子吗?
109种元素中有几种在自然界中存在?
佛手掌烂叶了还 有救吗??
WOW里的鬼魂装束
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?