asp控制xml数据库的经典代码

2018-09-06 11:09

阅读:419

  NO.1--建立一个XML数据库data.xml

  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数据库有所帮助。


评论


亲,登录后才可以留言!