当前位置: 首页 > 编程笔记 >

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

翟俊茂
2023-03-14
本文向大家介绍asp控制xml数据库的经典代码,包括了asp控制xml数据库的经典代码的使用技巧和注意事项,需要的朋友参考一下

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

 类似资料:
  • 我们正在迁移到Azure和有一个应用程序,仍然在经典的ASP。我们已经将它需要与之通信的数据库迁移到Azure中的SQL数据库。 我们在一个运行Server2008 R2的VM中运行这个

  • 问题内容: 我正在尝试从w3scools修改脚本,以结合使用asp和ajax来查询数据库并返回结果。 这是代码: 我想将select字段替换为2个输入字段。 有人可以告诉我如何修改javascript,以便输入值和querystring一起传递,以及需要在表单上更改哪些内容以调用函数。 谢谢 问题答案: 这完全取决于您希望页面如何操作。您能更具体一点吗? 当您说“输入值”时,您的意思是一个文本框?

  • 问题内容: 我已经继承了一些经典的ASP代码,并且需要一个可以实例化并在服务器端运行的JSON库,以与JavaScript编码的服务器端ASP配合使用。 我怎样才能做到这一点? 问题答案: 对于编写/输出JSON,我相信aspjson项目是一个不错的选择。在这里讨论在ASP“经典”中解析JSON: 在经典ASP中有什么好的解析JSON的库吗? 在该线程中,Chris Nielsen有一个在服务器端

  • 问题内容: 所以我在正确转换法语字符时遇到问题。基本上,我有一个将数据发送到SQL数据库的表单。然后,在另一页上,从该数据库中检索数据并显示给用户。但是数据(字符串)显示的字符却很奇怪,因为另一页上的表单输入是法语。我通过使用以下将字符串转换为正确字符集的函数克服了这个问题。但是,显然更好的解决方案是先将其转换,然后将其发送到数据库。现在,这里是将从数据库检索到的字符串转换为适当字符集的代码: 现

  • 嗨,我试图将我的应用程序,经典asp和access db从Windows7 professional迁移到windows Server2012。 对于不访问access db的标准脚本,它工作得很好。但是当脚本使用access db时,我得到了以下错误: 用于ODBC驱动程序的Microsoft OLE DB提供程序错误'80004005' 感谢你的帮助。

  • 我正在尝试为我们网站上运行在单独服务器上的经典asp部分实现单点登录。我已经使用simpleSAMLphp在另一台服务器上实现了php SSO。我正在尝试使用shibboleth来实现asp/IIS的经典功能。我已经到达了我们身份提供者的登录页面,但一旦我进行身份验证,我就会卡在/SAML2/POST上,并且有一个网页说找不到我服务器的ip地址。我曾尝试实施在论坛中找到的修复,但仍然没有取得任何进