日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

oracle高效分頁存儲過程代碼

 IT精彩博文 2012-04-10
oracle高效分頁存儲過程代碼
create or replace package p_page is
-- author : pharaohs
-- created : 2006-4-30 14:14:14
-- purpose : 分頁過程
type type_cur is ref cursor --定義游標(biāo)變量用于返回記錄集

procedure pagination(
pindex in number --分頁索引
psql in varchar2 --產(chǎn)生dataset的sql語句
psize in number --頁面大小
pcount out number --返回分頁總數(shù)
v_cur out type_cur --返回當(dāng)前頁數(shù)據(jù)記錄
)

procedure pagerecordscount(
psqlcount in varchar2 --產(chǎn)生dataset的sql語句
prcount out number --返回記錄總數(shù)
)

end p_page
/
create or replace package body p_page is

procedure pagination(
pindex in number
psql in varchar2
psize in number
pcount out number
v_cur out type_cur
)
as

v_sql varchar2(1000)
v_count number
v_plow number
v_phei number
begin
------------------------------------------------------------取分頁總數(shù)
v_sql := ' select count() from (' || psql || ' )'
ute immediate v_sql into v_count
pcount := ceil(v_count/psize)
------------------------------------------------------------顯示任意頁內(nèi)容
v_phei := pindex psize + psize
v_plow := v_phei - psize + 1
--psql := ' select rownum rn t. from zzda t' --要求必須包含rownum字段
v_sql := ' select from (' || psql || ' ) where rn between ' || v_plow || ' and ' || v_phei

open v_cur for v_sql

end pagination

--

procedure pagerecordscount(
psqlcount in varchar2
prcount out number
)
as

v_sql varchar2(1000)
v_prcount number

begin

v_sql := ' select count() from (' || psqlcount || ' )'
ute immediate v_sql into v_prcount
prcount := v_prcount --返回記錄總數(shù)

end pagerecordscount

--
end p_page
/

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多