日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Sybase數據庫的分頁功能

系統 2184 0

項目中需要用到Sybase數據庫的分頁功能,想盡各種辦法都沒有成功,最后用如下的存儲過程成功實現功能,記錄備忘。

?
        
          CREATE
        
        
          PROCEDURE
        
         jsp_query_page 
        
          @sql
        
        
          varchar
        
        (
        
          2000
        
        ),
        
          @start
        
        
          int
        
        , 
        
          @pageSize
        
        
          int
        
        
          as
        
        
          begin
        
        
          declare
        
        
          @ipage
        
        
          int
        
        
          declare
        
        
          @rcount
        
        
          int
        
        
          declare
        
        
          @execsql
        
        
          varchar
        
        (
        
          2000
        
        
          )

     
        
        
          declare
        
        
          @sql1
        
        
          varchar
        
        (
        
          2000
        
        
          ) 

     
        
        
          declare
        
        
          @t
        
        
          int
        
        ,
        
          @p
        
        
          int
        
        ,
        
          @n
        
        
          int
        
        ,
        
          @l
        
        
          int
        
        
          begin
        
        
          set
        
        
          @sql1
        
        
          =
        
        
          @sql
        
        
          set
        
        
          @n
        
        
          =
        
        
          0
        
        
          set
        
        
          @l
        
        
          =
        
        
          0
        
        
          set
        
        
          @t
        
        
          =
        
        
          charindex
        
        (
        
          '
        
        
          select 
        
        
          '
        
        ,
        
          lower
        
        (
        
          @sql
        
        
          ))

         
        
        
          set
        
        
          @sql
        
        
          =
        
        
          substring
        
        (
        
          @sql
        
        ,
        
          @t
        
        
          +
        
        
          7
        
        ,char_length(
        
          @sql
        
        )
        
          -
        
        
          7
        
        
          )

         
        
        
          set
        
        
          @n
        
        
          =
        
        
          @n
        
        
          +
        
        
          1
        
        
          set
        
        
          @l
        
        
          =
        
        
          @l
        
        
          +
        
        
          7
        
        
          while
        
        (
        
          @n
        
        
          !=
        
        
          0
        
        
          )

         
        
        
          begin
        
        
          set
        
        
          @t
        
        
          =
        
        
          charindex
        
        (
        
          '
        
        
          select 
        
        
          '
        
        ,
        
          lower
        
        (
        
          @sql
        
        
          ))

             
        
        
          set
        
        
          @p
        
        
          =
        
        
          charindex
        
        (
        
          '
        
        
          from 
        
        
          '
        
        ,
        
          lower
        
        (
        
          @sql
        
        
          ))

             
        
        
          if
        
         ((
        
          @t
        
        
          <
        
        
          @p
        
        ) 
        
          and
        
         (
        
          @t
        
        
          !=
        
        
          0
        
        
          ))

                 
        
        
          begin
        
        
          set
        
        
          @sql
        
        
          =
        
        
          substring
        
        (
        
          @sql
        
        ,
        
          @t
        
        
          +
        
        
          7
        
        ,char_length(
        
          @sql
        
        )
        
          -
        
        
          7
        
        
          )

                     
        
        
          set
        
        
          @n
        
        
          =
        
        
          @n
        
        
          +
        
        
          1
        
        
          set
        
        
          @l
        
        
          =
        
        
          @l
        
        
          +
        
        
          6
        
        
          +
        
        
          @t
        
        
          end
        
        
          else
        
        
          begin
        
        
          set
        
        
          @sql
        
        
          =
        
        
          substring
        
        (
        
          @sql
        
        ,
        
          @p
        
        
          +
        
        
          5
        
        ,char_length(
        
          @sql
        
        )
        
          -
        
        
          5
        
        
          )

                     
        
        
          set
        
        
          @n
        
        
          =
        
        
          @n
        
        
          -
        
        
          1
        
        
          set
        
        
          @l
        
        
          =
        
        
          @l
        
        
          +
        
        
          4
        
        
          +
        
        
          @p
        
        
          end
        
        
          end
        
        
          set
        
        
          @execsql
        
        
          =
        
        
          substring
        
        (
        
          @sql1
        
        ,
        
          1
        
        ,
        
          @l
        
        
          -
        
        
          5
        
        )
        
          +
        
        
          '
        
        
           ,sybid=identity(12) into #temp 
        
        
          '
        
        
          +
        
        
          substring
        
        (
        
          @sql1
        
        ,
        
          @l
        
        
          -
        
        
          4
        
        ,char_length(
        
          @sql1
        
        )
        
          -
        
        
          @l
        
        
          +
        
        
          5
        
        
          )

         
        
        
          select
        
        
          @rcount
        
        
          =
        
        
          @start
        
        
          +
        
        
          @pageSize
        
        
          set
        
        
          rowcount
        
        
          @rcount
        
        
          set
        
        
          @execsql
        
        
          =
        
        
          @execsql
        
        
          ||
        
        
          '
        
        
           select * from #temp where sybid>
        
        
          '
        
        
          ||
        
        
          convert
        
        (
        
          varchar
        
        ,
        
          @start
        
        ) 
        
          ||
        
        
          '
        
        
           and sybid <= 
        
        
          '
        
        
          ||
        
        
          convert
        
        (
        
          varchar
        
        ,
        
          @rcount
        
        
          ) 

         
        
        
          print
        
        
          @execsql
        
        
          execute
        
         (
        
          @execsql
        
        
          ) 

         
        
        
          set
        
        
          rowcount
        
        
          0
        
        
          end
        
        
          end
        
      

?

Sybase數據庫的分頁功能


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 张北县| 股票| 丹阳市| 水城县| 仙游县| 合川市| 酒泉市| 江达县| 扎兰屯市| 武鸣县| 临沂市| 鹿邑县| 夏津县| 磐石市| 麦盖提县| 聂拉木县| 景东| 桂东县| 宣武区| 武宣县| 静乐县| 贵溪市| 新沂市| 民权县| 惠安县| 湖南省| 天柱县| 大同县| 察雅县| 塘沽区| 鄂尔多斯市| 颍上县| 青河县| 新和县| 宁阳县| 昔阳县| 平和县| 那曲县| 平山县| 三穗县| 桦南县|