2009-04-08 10 views
0

私は新しいアプローチを使用してdbアプリケーションを設計しています。 (少なくとも私に小説... :)DataRelationをxmlに格納していますか?

私は同じことについていくつかの研究をしています。

私は.NET 3.5 ADO.NETデータセットを使用してデータを処理し、XMLでオフラインで格納します。

最初に、このアプローチは、深刻な(小さなDB、4-5人のユーザー、〜25テーブル〜それぞれ3〜4kレコード)アプリケーションに適していますか?

第2に、オフラインXMLファイルにdatarelationを正確に保存するにはどうすればよいですか?

ありがとうございます!

サウラブ。

答えて

3

25それぞれ3〜4k行のテーブルは、xmlの "small"とは言えません。特に、適切なデータにXML形式でジャンプするのは容易ではありません。

SQL Server Express Editionなどのデータベースを検討しましたか?無料で、この仕事まで以上。


再格納;組み込みシリアル化を使用している場合はDataSet、これは自動的に機能します。もちろん、xmlはDataSetに固有のものになります...私は正直なところ、DataSet/xmlの方法をお勧めしません。

0

I secondマーク提案。 XMLルートには行かないでください。おそらくあなたのアプリがいつ/どのように成長するかは分かりません。 xmlを使用すると、トランザクションのチェックやデータの整合性を保つための制約をチェックすることができます。

データベースは単なるダムストレージではありません。いくつかの無料のエクスプレスDBのバージョンを使用してください。この方法で、より専門的なDBMSバージョンに簡単に移行できます。

1

質問に答えるには(私がMarcに同意しても、XMLをデータストレージレイヤとして使用しないでください)。

IDとhrefsは、XMLで関係を作成するために一般的に使用されます(これは階層型で、リレーショナルではなく、XMLを使用しないでください)。小さな例として

<region name="South Africa" id="region_1"> 
    <manager ref="#employee_1"/> 
</region> 

<employee name="John Doe" id="employee_1" region="#region_1"> 
    <manages> 
     <employee ref="#employee_2" /> 
    </manages> 
</employee> 

<employee name="Cyril Smith" id="employee_2" region="#region_1"> 
    <manages /> <!-- code monkey --> 
</employee> 
+0

私は、他の人がこれを行う方法、つまりXMLを悪用していないかどうかを確認できるように回答しました。 –

0

私は他のポスターが同意するだろう。私はあなたの状況でXMLと一緒に行くつもりはない。異なるものを提案するには、SQLlite:http://www.sqlite.org/と.NET ADO:http://sqlite.phxsoftware.com/を試してみてください。それは超強力なデータベースではありませんが、無料であり、仕事を完了します。

しかし、あなたのアプリケーションのデータベースのサイズが将来的に大きくなるのを見ると、SQLやMySQLのような強力なデータベースを使うべきです。

何らかの理由でXMLに完全に縛られているのなら、私はJonathanの提案に同意します。

関連する問題