??
????
????
??
阅读内容 

XML简明教程第10课 :在C++ XML DSO中使用主/细节特征

[日期:2005-04-10] 来源:中国站长学院  作者:无从考证 [字体: ]
什么是主/细节特征?
新的主/细节特征允许你连接到一个分层纪录集的当前记录上,这就意味着你可以把当前
纪录的子元素连接到一个截然不同的表中。例如,考虑一下的XML

??
????
??????John?Smith
??????192883
????

????
??????Fly?Swatter
??????9.99
????

??
??
????
??????Marea?Angela?Castaneda
??????827145
????

????
??????Fly?Paper
??????15.99
????

??
??
????
??????Amy?Jones
??????998022
????

????
??????Mosquito?Netting
??????38.99
????

??

你可以允许你的用户通过ID来定位订单,并显示(也仅能显示)当前订单上的客户和项
目信息,你的用户并不能查看所有订单的信息——仅能查看自己感兴趣的。
如何连接到细节?
连接到层次结构中的底层(细节信息)的关键是了解你的数据的结构,上面的XML在根元
中含有有三个元素。基于XML?DSO所采用的试探法,每一个订单都映射到一个
包含"order_number"、?"customer"、?和?"item"等域的行集中。"order_number"列包含
"order_number"属性的值,"customer"和"item"列包含指向各自的"customer"和"item"
纪录集的指针。"customer"记录集中包含带有"name"和"custID"域的元素的值,"item"
记录集中包含带有"name"和"price"域的元素的值。
这样,在顶层("orders")纪录集中,你可以找到"order_number"的值,然后允许你的
用户通过"order_number"定位订单。

ORDER?NUMBER:?


现在再添加几个按钮来帮助用户浏览"orders"纪录集。
value="Previous?Order"?onclick="XMLDoc.recordset.movePrev
ious()">
value="Next?Order"?onclick="xmlDoc.recordset.moveNext()">

为了在当前纪录的子元素中检索这个值,创建一张表并把表的?DATASRC?属性设置为"#x
mlDoc",就和上面所作的一样,但是这时也要把它的?DATAFLD?属性设置为?"customer"
。这是为了告诉表连接到"customer"纪录集中的数据上,而"customer"纪录集由"order
s"纪录集中的"customer"域的指针指向。

??

NAMEID

接着对"item"元素作同样的处理。

??ITEMPRICE
??
????
????
??

现在,当用户点击按钮并移到纪录集中的后一个或前一个纪录时,表中的数据会相应的
改变到当前纪录。

阅读:
录入:

推荐 】 【 打印
上一篇:[推荐]XML入门简介
下一篇:XML技术上传文件
相关新闻      
本文评论       全部评论
发表评论
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款


点评: 字数
姓名:
Advertisement
内容查询


Advertisement
本周热门内容