如何将XML文件用作数据库并仅在其上执行一些基本的SELECT命令! 例如:从file.xml中选择作者,其中title =“MyTitle”
<?xml version="1.0"?>
<catalog>
<book id="bk101">
<author>Gambardella, Matthew</author>
<title>XML Developer's Guide</title>
</book>
<book id="bk102">
<author>Ralls, Kim</author>
<title>Midnight Rain</title>
</book>
</catalog>
我从未使用过XML文件(作为数据库),所以没有代码放在这里,但希望有人有一些解决方案!
答案 0 :(得分:2)
我不相信你可以简单地使用SQL来对抗XML,而不是没有太多工作(可以使用XML解析器转换为XML结构的SQL解析器)。
最接近的是使用LINQ to XML和XDocument
类以及System.Xml.Linq
命名空间。
答案 1 :(得分:1)
您可以查看XPath。 System.XML.XmlDocument.SelectNodes
方法允许您通过XPath选择匹配的节点。它不是SQL,但它是在XML文档中查找节点的常用方法。以下示例使用XPath检索所有书籍的作者,标题为“Midnight Rain”。
Dim document As XmlDocument = New XmlDocument()
document.Load("file.xml")
Dim matches As XmlNodeList = document.SelectNodes("/catalog/book[title = 'Midnight Rain']/author")
For Each node As XmlNode In matches
'Do work
Next