中华考试网·阅读新闻
编程开发 > ASP > 文章内容

ASP编码教程:asp实现读取数据库输出json代码

2015-4-9编辑:ljnbset
代码如下:

Function GetTable(Table,Where,Order,OrderSort,curpage, pagesize,MiniJson)
'Author : nigou
'使用方法 : Response.Write GetTable(Table表名,Where条件,Order主键(必须),OrderSort(asc,desc),curpage当前页, pagesize每页条数,MiniJson是否输出为miniUI格式)
'
    dim i, j ,rs
    if OrderSort="" Then OrderSort="asc"
    if Where="" Then Where="asc"
    Set Rs=Server.CreateObject("adodb.recordset")
    if curpage>1 then
        TmpSql="select a.* from ( select top  " & (curpage) * pagesize & " * from " & Table & " where " & where  & " order by " & Order & " " & OrderSort & ") a left join ( select top " & (curpage-1) * pagesize  & " * from " & Table & "  where " & where  & " order by " & Order & " " & OrderSort & ") b on a." & Order & "=b." & Order & " where iif(b." & Order & ",'0','1')='1'"
    else
        TmpSql="select a.* from ( select top  " & (curpage) * pagesize & " * from " & Table & " where " & where  & " order by " & Order & " " & OrderSort & ") a "
    end if
    if pagesize=0 Then TmpSql = "select * from " & Table
        Rs.open TmpSql,conn,1,1
        RealSize=Rs.recordcount
        for i=0 to Rs.recordcount-1
            TmpJson= TmpJson & "{"
            for j=0 to Rs.fields.count-1
                TmpJson= TmpJson & """" &(Rs.fields(j).name) & """ : "            
                TmpJson= TmpJson & """" & Rs(j) & """"
                if j            next
            TmpJson= TmpJson & " }"
            if i            TmpJson= TmpJson & vbcrlf
            rs.movenext
        next
        Rs.close
    if MiniJson=1 Then
        CountSql="select count("& order &") from " & Table & " where " & where
        Rs.open CountSql,Conn,1,1
        Counts=Rs(0)
        Rs.Close
        GetTable=ToMiniUi(TmpJson,Counts)
    Else
        GetTable=toJson(TmpJson)
    end if
    Set Rs=nothing
End Function
function toJson(JsonStr)
    toJson="[" & vbcrlf & JsonStr & vbcrlf & "]"
end function
Function ToMiniUi(JsonStr,total)
    ToMiniUI="{"
    ToMiniUI=ToMiniUI & """total"":"" " & total & """," & vbcrlf
    ToMiniUI=ToMiniUI & """data"": [" & JsonStr
    ToMiniUI=ToMiniUI & "]}"
End Function

PS:最后的参数是针对miniUI开发的,可以无视

以上就是本文的全部内容了,希望大家能够喜欢。

CAD技巧:使用快车工具(EXPRESSTOOLS)
咨询热线:4000-525-585(免长途费)