qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          Oracle數據庫分頁的存儲過程

           最近在復習oracle數據庫,只能說oracle數據庫實在是太強大了,當然學習起來也就復雜了。下面是使用oracle的分頁算法的存儲過程,拿出來大家參考一下吧。
            我認為其中涉及到的包,游標,exception是有點難理解難記憶的,大家可以參考一下相關的書籍好好理解理解~~
          //oracle分頁存儲過程
          create or replace proceduce fenye(tableName in varchar2,pageSize in number,pageNow in number,myRowCount out number,myPageCount out number,
          p_cursor out t1.t---返回記錄數的游標
          )
          is
          --定義部分
          v_sql varchar2(500);
          v_begin number:=(pageNow-1)*pageSize+1;
          v_end number:=pageNow*pageSize;
          begin
          --開始執行部分
          v_sql:='select * from (select t1.*,rownum rn from(select * from '||tableName||') t1 where rownum<='||v_end||')where rn>='||v_begin||'':這表示顯示的是第六到第十頁的數據
          --把游標和sql語句關聯
          open p_cursor for v_sql;
          --計算myRowCount和myPageCount
          v_sql:='select count(*)from '||tableName||'';
          execute immediate v_sql into myRowCount--執行sql語句并把返回的值賦給myRowCount
          --計算myPageCount
          if mod(myRowCount,pageSize)=0 then
          myPageCount:=myRowCount/pageSize;
          else
          myPageCount:=myRowCount/pageSize+1;
          end if;
          --關閉游標
          close p_cursor;
          end;

          posted on 2014-03-24 11:49 順其自然EVO 閱讀(244) 評論(0)  編輯  收藏 所屬分類: 數據庫

          <2014年3月>
          2324252627281
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 林周县| 杭州市| 古蔺县| 广河县| 油尖旺区| 黑河市| 饶河县| 大冶市| 盘锦市| 黄浦区| 五大连池市| 澄城县| 大埔区| 涞源县| 大连市| 黔南| 嘉峪关市| 德庆县| 安阳县| 芦溪县| 库尔勒市| 寿阳县| 盐池县| 古丈县| 朝阳区| 兴宁市| 滦南县| 望谟县| 大安市| 呈贡县| 科技| 莆田市| 衡东县| 叙永县| 苏尼特右旗| 苍梧县| 桂平市| 湖南省| 厦门市| 尤溪县| 台州市|