!!.默默 2019-05-12 20:57 采纳率: 53.8%
浏览 440
已采纳

ASP从数据库直接输出json

ASP从数据库直接输出json 以,区分多行在最后一行去掉,

([<%
dim conn,connstr,rs,sql
set conn = Server.CreateObject("Adodb.Connection")
connstr = "Provider=SQLOLEDB;data source=127.0.0.1;initial catalog=数据库;uid=数据库用户;pwd=数据库密码"
conn.open connstr
set rs = Server.CreateObject("Adodb.RecordSet")
sql = "select Name,userid from user"
rs.open sql,conn,1,1
While Not rs.EOF
Name = rs("Name") 
userid = rs("userid") 
response.write "{""Name"":"""&Name&""",""userid"":"&userid&"}"
if not rs.eof Then
Response.Write ","
end if
rs.MoveNext
Wend
rs.close
conn.close
set conn=nothing 
%>])

怎么都是一直多加一个,号
输出的结果为:([{"Name":"用户","userid":1},{"Name":"用户","userid":1}])

想要的输出结果([{"Name":"用户","userid":1},{"Name":"用户","userid":1}])

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-05-12 23:12
    关注

    if not rs.eof Then
    Response.Write ","
    end if
    这个条件在遇到最后一条记录的时候也满足,也会输出逗号。

    dim firstrec
    firstrec = true
    While Not rs.EOF
    Name = rs("Name")
    userid = rs("userid")
    if firstrec = true then
    firstrec = false
    else
    Response.Write ","
    end if
    response.write "{""Name"":"""&Name&""",""userid"":"&userid&"}"
    rs.MoveNext
    Wend

    这样写

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?