6

XML SQL 構文をクエリするためのフレームワークはありますか? ノード リストを繰り返し処理するのは本当に面倒です。


それとも、これは単なる希望的観測 (ばかげていない場合) であり、XML はリレーショナル データベースではないため不可能なのでしょうか?

4

7 に答える 7

13

XQueryと XPath... SQL 構造が必要な場合は、XQuery の方が適しています。

于 2008-09-26T17:47:07.090 に答える
2

.Net Framework はこれを行うための LINQ を提供します。または、.Net System.Data 名前空間を使用して XML ファイルからデータを読み込むこともできます。

テーブル間の結合などを含むクエリを作成することもできます。

たとえば、System.Data.DataTable はReadXml()メソッドを提供します。

于 2008-09-26T17:47:23.033 に答える
2

LINQ to XML を試すこともできますが、言語に依存しません。

于 2008-09-26T17:47:53.220 に答える
1

XQueryは、SQL に最も近い関数型言語です。 XPathは、XSLT および XQuery の一部として使用されるドキュメント内のノードを見つけるための表記法です。

リレーショナル データベースがリレーショナル データの SQL エンジンとして機能するのと同様に、 MarkLogicなどの XML データベースは XML データの XQuery エンジンとして機能します。

于 2008-09-26T23:55:31.510 に答える
1

それはあなたが解決している問題によって異なります。XML ファイルが非常に大きい場合、SAX パーサーなどを使用してノードごとにファイルをトラバースする必要がある場合があります。そうしないと、OutOfMemoryException が発生したり、コンピューターの仮想メモリが不足したりします。

ただし、予想される XML ファイルのサイズが比較的小さい場合は、Linq のようなものを簡単に使用できます。また、私の回答も参照しください

于 2010-10-01T05:55:44.727 に答える
0

SQL Server 2005は、ネイティブデータ型でXMLDMLをサポートしています。xml

于 2008-09-26T23:34:33.183 に答える
0

XQuery は確実に前進する道です。これは、eXistMarkLogicなどの XML データベースで使用されるものです。

Java の世界では、フラット ファイルで XQuery を実行するためのソリューションがいくつかあります。最も顕著なのはSaxonです。

.NET の場合、利用できるものはそれほど多くありません。Microsoft には XQuery ライブラリがありましたが、これは .NET 2 から取り出されたものであり、再登場することはありませんでした。 XQSharp はネイティブ .NET の代替手段ですが、現在はコマンド ライン バージョンのみがリリースされています。

于 2008-10-30T20:46:52.647 に答える