新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   >>中国XML论坛<<     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 关于 XML 的一般性技术讨论,提供 XML入门资料 和 XML教程
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 XML基础 』 → XML初学进阶学习笔记[原创](续14)[原创] 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 8012 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: XML初学进阶学习笔记[原创](续14)[原创] 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     卷积内核 帅哥哟,离线,有人找我吗?
      
      
      威望:8
      头衔:总统
      等级:博士二年级(版主)
      文章:3942
      积分:27590
      门派:XML.ORG.CN
      注册:2004/7/21

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给卷积内核发送一个短消息 把卷积内核加入好友 查看卷积内核的个人资料 搜索卷积内核在『 XML基础 』的所有贴子 访问卷积内核的主页 引用回复这个贴子 回复这个贴子 查看卷积内核的博客楼主
    发贴心情 XML初学进阶学习笔记[原创](续14)[原创]

    43、对数据库操作ASP和DTD(Schema)的具体实现:

    ASP:

    <% @language = "VBScript" %>
    <% Response.ContentType = "text/xml" %>
    <?xml version="1.0" encoding="GB2312" ?>
    <%’动态构建XML文档
      set xmlDoc = Server.CreateObject(Microsoft.XMLDOM)
      set root = xmlDoc.createNode("element","联系人列表","")
      xmlDoc.appendChild(root)

      ’查询数据库
      sqlStr = "select * from clientList"
      set cConn = Server.CreateObject("ADODB.Connection")
      cConn.Open "CLIENTS","sa", ""
      set rsData = cConn.Execute(sqlStr)
      rsData.MoveFirst()

      while (not rsData.EOF )
        ’构建联系人子节点
        set tmpNode = xmlDoc.createNode("element","联系人","")
        xmlDoc.documentElement.appendChild(tmpNode)
        ’构建姓名、ID、公司、Email子节点
        for I = 0 to rsData.Fields.Count - 1
          set childNode = xmlDoc.createNode("element",rsData.Fields(i).Name,"")
          childNode.text = rsData.Fields(i)
          tmpNode.appendChild(childNode)
        next
       rsData.MoveNext()
      wend

      Response.Write(xmlDoc.xml)
    %>


    DTD:

    <% Response.ContentType="text/xml" %>
    <?xml version="1.0" encoding="GB2312" ?>
    <联系人列表>

    <% Set cConn = Server.CreateObject("ADODB.Connection")
       cConn.Open "CLIENTS","sa", ""
       Set rsData = cConn.Execute("select * from clientList")
       do while not rsData.Eof
    %>
    <联系人>
      <姓名><%=rsData("Name")%></姓名>
      <ID><%=rsData("ID")%></ID>
      <公司><%=rsData("Company")%></公司>
      <Email><%=rsData("Email")%></Email>
    </联系人>
    <% rsData.MoveNext
       Loop
       rsData.Close
       Set rsData = nothing
    %>

    </联系人列表>


    最终生成XML文档为:

    <?xml version = "1.0" encoding="GB2312" standalone = "no"?>

    <联系人列表>
        <联系人>
            <姓名>张三</姓名>
            <ID>1</ID>
            <公司>A公司</公司>
            <EMAIL>zhang@aaa.com</EMAIL>
        </联系人>

        <联系人>
            <姓名>李四</姓名>
            <ID>2</ID>
            <公司>B公司</公司>
            <EMAIL>li@bbb.org</EMAIL>
        </联系人>
    </联系人列表>


       收藏   分享  
    顶(0)
      




    ----------------------------------------------
    事业是国家的,荣誉是单位的,成绩是领导的,工资是老婆的,财产是孩子的,错误是自己的。

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/8/12 9:12:00
     
     hqh200023607 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(猛啃高等数学)
      文章:18
      积分:134
      门派:XML.ORG.CN
      注册:2005/11/9

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给hqh200023607发送一个短消息 把hqh200023607加入好友 查看hqh200023607的个人资料 搜索hqh200023607在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看hqh200023607的博客2
    发贴心情 
    好想亲自去试一下,可看了这么多,还不知道如何下手?请高手指教:在什么样的环境下进行这样的编程啊?感觉无从下手
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/11/10 22:53:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML基础 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/11/22 9:19:35

    本主题贴数2,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    62.500ms