XMLスキーマをリレーショナルモデルに変換する方法を知っていますか? 必要な手順は何ですか? より正確には、XML スキーマだけを見て、テーブル名、列名、およびそれらのテーブルの関係がリレーショナル モデルでどのようになるかをどのように把握できますか?
チュートリアルのリンク、例がある場合は、私と共有してください。これについてご協力いただき、誠にありがとうございます。
ありがとう
XMLスキーマをリレーショナルモデルに変換する方法を知っていますか? 必要な手順は何ですか? より正確には、XML スキーマだけを見て、テーブル名、列名、およびそれらのテーブルの関係がリレーショナル モデルでどのようになるかをどのように把握できますか?
チュートリアルのリンク、例がある場合は、私と共有してください。これについてご協力いただき、誠にありがとうございます。
ありがとう
両者は本質的に異なります。リレーショナル モデルはセットベースです。XML は階層的です。
1 つの方法は、タグ名をテーブルの名前にすることです。タグに複数の子と葉の孫がある場合。子タグ名が列になり、孫テキストが値になります。
子にリーフ以外の孫がいる場合は、これらを親テーブルと子テーブルの間の 1 対多の関係としてモデル化します。
「XML スキーマからリレーショナル スキーマへ」を Google で検索すると、次のような論文がいくつかあります。
XML形式の例がなければ、答えを出すのは難しいでしょう。非常に単純なXML形式は変換が簡単ですが、より複雑な構造や階層は簡単ではなく、ある程度の考慮が必要です。そのため、ツールは実際には機能しません。
一般に、オブジェクトデータベース(OODBMS)とリレーショナルデータベース(RDBMS)の使用についても話し合います。オブジェクトデータベースの調査は順調かもしれませんが、リレーショナルデータベースを使用する必要がある場合(はるかに成熟している場合)、マッピング作業を自分で行う必要があります。
これは.NETでは非常に簡単です。
データセットを作成します。
DataSet.ReadXML()を実行して、XMLファイルを読み込みます。
DataSet.Tables()のリストを循環し、テーブルごとに列を循環してフィールド名を取得します。
私はそれを行うためのテストアプリを持っていました...私はコードを見つけることができるかどうかを確認します。
PS-それを見つけることができませんでした..それで私はhttp://dot-dash-dot.com/files/wtfxml.zipでそれを書きました
WTFXMLSetup_1_6_0.msi ...Windowsボックスのインストーラー..。
スキーマはどのくらい複雑ですか? スキーマによって定義された構造によっては、リレーショナル テーブルへの便利な変換がない場合があります。
データをどのように使用するつもりかは述べていませんが、一部のリレーショナル データベースは xml 型の列をサポートしています。たとえば、Microsoft SQL Server 2005 以降では、xml ドキュメントを xml 型の列に格納できます。クエリでは、xml データ型用に定義された組み込みメソッドを使用できます。