清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
' * 数据库转json 分页公用类库
' * EMAIL:wyonli@gmail.com QQ:82366788 $
' * $Author: Cason $
' * $Id: yl_clsjson.asp 6481 2011-11-26 00:21:46 Cason $
property get order_name()
dim o_sql,o_colum,olen,o_pai,i
dim left_sql,right_sql
o_sql = Cason_sql
olen = instr(o_sql,"order")
left_sql = left(o_sql,olen-1)
right_sql = trim(mid(o_sql,olen))
if olen = 0 then
response.write "请设定排序方式!"
response.end
end if
o_sql = split(right_sql," ")
for i = 0 to ubound(o_sql)
if o_sql(i) = "by" then
if i>1 then
o_sql(1) = "by"
o_sql(i) = ""
end if
end if
if i>2 and o_sql(2) = "" and o_sql(i) <> "" then
o_sql(2) = o_sql(i)
o_sql(i) = ""
end if
if o_sql(i) = "asc" or o_sql(i) = "desc" then
if i >3 then
o_sql(3) = o_sql(i)
o_pai = " " & o_sql(i)
o_sql(i) = ""
exit for
end if
end if
next
right_sql = join(o_sql)
if o_pai = "" then
o_pai = " asc"
right_sql = replace(right_sql,o_sql(2),o_sql(2) & " asc")
end if
cason_sql = left_sql & right_sql
order_name = o_sql(2) & o_pai
end property
property get th(ByVal str_val)
if instr(str_val,"desc") >0 then
th = replace(str_val,"desc","asc")
else
th = replace(str_val,"asc","desc")
end if
end property
'================================================================
' ResultSet 返回分页后的记录集
'================================================================
public Property Get ResultSet()
dim Cason_Rs,col_name
dim top_sql,top_Count,select_sql
dim set_sql
col_name = order_name
if int(Cason_CurrPage) = 1 then
top_sql = " top " & Cason_PageSize & " "
top_Count = 0
else
top_sql = " top " & (Cason_CurrPage) * Cason_PageSize & " "
top_Count = (Cason_CurrPage - 1) * Cason_PageSize
end if
set_sql = "select" & top_sql & trim(mid(Cason_sql,7))
select_sql = "set rowcount " & Cason_PageSize & ";select * from (select top " & Cason_PageSize & " * from (" & set_sql & ") z order by " & th(col_name) & " ) zz order by zz." & col_name
set Cason_Rs = yl.GetRs(select_sql,1,1)
if int(Cason_CurrPage)>Cason_Rs.pagecount then
Cason_CurrPage = Cason_Rs.pagecount
end if
Cason_Rs.PageSize = Cason_PageSize
Cason_JsonHtml = ",""iRecCount"":""" & num_rows & """"
response.write toJSON("""info""",Cason_Rs)
End Property