傳說中的分頁6

2021-04-12 22:46:18 字數 1364 閱讀 6359

set quoted_identifier off

goset ansi_nulls on

go--名稱:分頁儲存過程

--使用示例 exec sp_pageindex '*',' from stusources ',2,10

--注意

--目前還沒有對輸入的引數進行嚴格的驗證

--預設為輸入都是合法有效的

alter  proc sp_pageindex

@sqlselect varchar(800) --select 後面 from 前面 的 字段 不用包含select

,@sqlfrom varchar(800) --from 後面 的 字段 包含from

,@countperpage int -- 每頁資料行數

,@topage int --要轉到的頁碼

asbegin

-- 根據每頁資料行數 和 要轉到的頁碼 得到 資料起止點

declare @start int

declare @end int

set @end = @countperpage * @topage

set @start = @countperpage * (@topage - 1) + 1

-- 臨時表名稱 可隨機命名

declare @tmptable varchar(10)

set @tmptable ='#tmp'

declare @sqlstr varchar(800)

-- 建立資料來源到臨時表

select @sqlstr = 'select identity(int,1,1) as rowindex,'

select @sqlstr = @sqlstr + rtrim(@sqlselect) + ' into  '+ @tmptable

select @sqlstr = @sqlstr + rtrim(@sqlfrom)

-- 查詢臨時表 得到所需要的資料

select @sqlstr = @sqlstr + ' '+'select '+ rtrim(@sqlselect) +' from ' + @tmptable

select @sqlstr = @sqlstr + ' where  rowindex between ' + convert(char,@start) + " and " + convert(char,@end)

-- 刪除臨時表

select @sqlstr = @sqlstr + ' '+'drop table '+@tmptable

exec (@sqlstr)

endgo

set quoted_identifier off

goset ansi_nulls on go 

傳說中的分頁4

if exists select from sysobjects where type p and name page begin print dropping procedure page drop procedure page endgo print creating procedure pag...

傳說中的MTU

通訊術語 最大傳輸單元 maximum transmission unit,mtu 是指一種通訊協議的某一層上面所能通過的最大資料報大小 以位元組為單位 最大傳輸單元這個引數通常與通訊介面有關 網路介面卡 串列埠等 網際網路協議允許ip分片,這樣就可以將資料報分成足夠小的片段以通過那些最大傳輸單元小...

傳說中的truncate html

學習用rails做blog的時候要用到rails的truncate功能。h truncate post.content,100,問題來了,將html截斷後出現不完整的tag,導致後續的文章排版都錯亂了。本來考慮是不是自己寫乙個,正在思考思路,結果祭起google,好嗎,已經有牛人寫了 簡單記錄一下 ...