IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類(lèi)|軟件專(zhuān)題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁(yè)數(shù)據(jù)庫(kù)Oracle → oracle分頁(yè)存儲(chǔ)過(guò)程

oracle分頁(yè)存儲(chǔ)過(guò)程

時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)

  create or replace package mypack

  as

  type cursor testCursor is ref cursor;

  end mypack;

  --tableName表名, pageSize每頁(yè)顯示的數(shù)量,pageNow第幾頁(yè),rows總頁(yè)數(shù),pageCount總頁(yè)數(shù),p_cursor游標(biāo)

  create or replace procedure fenye

  (tableName in varchar2, pageSize in number, pageNow in number, rows out number, pageCount out number, p_cursor out mypack.testCursor)

  is

  declare

  --定義sql語(yǔ)句

  v_sql varchar2(1000);

  --定義2個(gè)整數(shù)記錄上一頁(yè)

  v_begin number := (pageNow - 1) * pageSize + 1;

  v_end number := pageNow * pageSize;

  begin

  v_sql := 'select * from (select t.*, rownum r from (select * from '|| tableName ||') t where rownum<='|| v_end ||') where r>='|| v_begin ;

  --將游標(biāo)和sql語(yǔ)句關(guān)聯(lián)起來(lái)

  open p_cursor for v_sql;

  --計(jì)算rows和pageCount;

  v_sql := 'select count(*) from' || tableName;

  --執(zhí)行sql語(yǔ)句,并將返回的值付給 rows;

  execute immediate v_sql into rows;

  pageCount := (rows + pageSize - 1) / pageSize; --總頁(yè)數(shù);

  close p_cursor;

  end;

關(guān)鍵詞標(biāo)簽:oracle,分頁(yè)存儲(chǔ)過(guò)程

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門(mén)文章 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修改SQL語(yǔ)句案例 oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修改SQL語(yǔ)句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語(yǔ)句修改字段類(lèi)型-oracle修改SQL語(yǔ)句案例 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句 ORACLE和SQL語(yǔ)法區(qū)別歸納(1) oracle grant 授權(quán)語(yǔ)句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法