NO.1--建立一个XML数据库data.xml
<?xml version="1.0"?> <records> <record> <name>caca</name> <qq>154222225</qq> <email>root@3ney.com</email> </record> <records>
NO.2--建立对象CreateObject
建立data.xml的对象先
set xmldoc=server.createobjcet("microsoft.xmldom") xmldoc.load(server.mappath("data.xml")
NO.3--选定节点SelectNode
你想操作哪个Node,必须定位到这个节点是不是,先看看这个data.xml有几个Node??
用一个递归函数搞定:
getnodes(xmldoc) sub getnodes(node) dim i response.write("<br><b>NodeName:</b>"&node.nodename&"<br><b>NodeTypeString:</b>"&node.nodetypestring&"<br><b>NodeValue:</b>"&node.nodevalue&"<br><b>Text:</b>"&node.text&"<br><b>node.childnodes.length:</b>"&node.childnodes.length&"<p>") if node.childnodes.length<>0 then for i=0 to node.childnodes.length-1 getnodes(node.childnodes(i)) next end if end sub
用这个函数后,可以看到这个data.xml有10个Node
这些Node可以很简单的定位:
xmldoc.childnodes(0) xmldoc.childnodes(1) xmldoc.childnodes(1).childnodes(0) xmldoc.childnodes(1).childnodes(0).childnodes(0) xmldoc.childnodes(1).childnodes(0).childnodes(0).text xmldoc.childnodes(1).childnodes(0).childnodes(1) xmldoc.childnodes(1).childnodes(0).childnodes(1).text xmldoc.childnodes(1).childnodes(0).childnodes(2) xmldoc.childnodes(1).childnodes(0).childnodes(2).text
是不是定位很简单呀,还有个方法,比如定位<name>
xmldoc.selectsinglenode("//name")
NO.4--给节点赋值(修改节点的值)
学会了定位节点,利用其属性,就可以修改或者赋值了
例如,把<name>的值caca改为wawa
xmldoc.selectsinglenode("//name").text="wawa" xmldoc.save(server.mappath("data.xml"))
NO.5--创建新的节点CreatenewNode
用createelement或者createnode("","","")
例如:在record下新建个<age>,只需要一句就搞定:
xmldoc.selectsinglenode("//record").appendchild(xmldoc.createelement("<age>"))
给<age>赋值
xmldoc.selectsinglenode("//age").text="20" xmldoc.save(server.mappath("data.xml"))
NO.6--删除一个节点DeleteNode
你必须明确你想删除的这个节点的父节点,以及这个节点的特征
例如:删除<qq>节点
xmldoc.selectsinglenode("//record").removechild(xmldoc.selectsinglenode("//qq"))
例如:删除那个<name>=caca的<record>
xmldoc.selectsinglenode("//records").removechild(xmldoc.selectsinglenode("//record[name='caca'])) xmldoc.save(server.mappath("data.xml"))
以上六段经典代码相信一定会对大家利用asp控制xml数据库有所帮助。
本文实例讲述了AJAX+Servlet实现的数据处理显示功能。分享给大家供大家参考,具...
大家好,我是狂聊君。 今天来聊一聊 Mysql 缓存池原理。 提纲附上,话不多说,直...
本文转载自微信公众号「SQL数据库」,作者丶平凡世界 。转载本文请联系开发公众...
idea官方推送了2020.2.4版本的更新,那么大家最关心的问题来了,之前激活idea202...
问题:我们在做flex的开发中,如果用到别人搭建好的框架,而别人的server名称往...
本文转载自微信公众号「SH的全栈笔记」,作者SH。转载本文请联系SH的全栈笔记公...
来源:DeepenStudy 漏洞文件:js.asp % Dimoblog setoblog=newclass_sys oblog.a...
CKeditor,以前叫FCKeditor,已经使用过好多年了,功能自然没的说。最近升级到3....
在Flash Player 10.1及以上版本中,adobe新增了全局错误处理程序UncaughtErrorEv...
前言 项目开发中不管是前台还是后台都会遇到烦人的null,数据库表中字段允许空值...