0

さまざまなスキーマを使用して XML で書かれた技術文書を扱ったり書いたりしています。私は、現在オフィスでワークフロー システムとして使用している、かなり単純な Windows フォーム アプリケーションを開発しました。プログラムは、チェックイン、チェックアウト、および検証プロセスを移動できます。このプログラムは、共通の「data.xml」ファイルを使用して読み取りと書き込みを行い、メモ、作成者、ステータス、およびその他のさまざまなものを追跡します。

ただし、現時点では、アプリケーションは、各プロジェクトにあるすべての xml ファイルと、プログラムのプロジェクト データを保持する data.xml ファイルを含む共有ドライブ上のフォルダー構造を指しています。したがって、誰かがファイルをチェックアウトすると、アプリはファイルをあるフォルダーから別のフォルダーに移動し (ユーザーには表示されません)、data.xml ファイルを更新して、UI の listViews を更新します。

もちろん、複数の人が同じプロジェクトで作業していて、クライアント アプリケーションが同時に data.xml ファイルに書き込もうとしない限り、これは問題なく機能します。

そこで、私がやりたいことは、システム全体をデータベースに移行することだと考えました。そのため、XML ファイルをフォルダーに保存する代わりに、SQL などのデータベースに保存します。今、私はデータベースの経験が全くないので、正しい方向に私をキックオフするためのポインターを望んでいました. 理想的には、データベース内の xml ドキュメントをクエリできるようにする必要があるため、Xquery を使用し、理想的にはすべてのファイルに対して一度にプロセスを実行できるようにしたいと考えています。たとえば、現時点ではプロジェクト全体で XSLT を実行できます。

私の質問は、この種の機能を保持するために、どのタイプの DB を検討する必要があるかということです。SQL のようなリレーショナルですか、それとも xml データベースですか?

注: xml ファイルは、それぞれ最大で数百 Kb です。

4

3 に答える 3

0

xml ドキュメントをデータベースに保存する代わりに、プロジェクトや顧客固有のデータにデータベースを使用することをお勧めします。ほとんどの xml ファイルがあまり遅延しない場合は、xml テンプレートを使用し、XSLT を使用してこれらのテンプレートをプレゼンテーション前に有用なデータで更新するポイントに戻ることができます。私の xml テンプレートはどこに行きますか? これは、ファイル システムまたはデータベースにあります。これにより、大量の xml ドキュメントを格納することを回避し、データベース内での xml コードの重複を回避できます。

于 2013-04-24T11:34:51.543 に答える
0

すべてのモンキー ビジネスの代わりに、一度に 1 人だけがファイルをチェックアウトできるソース コントロール システムを見つけることができますか? または、ある種のファイル ロック メカニズムを使用して、一度に 1 人だけにアクセスを制限します。

于 2013-04-24T13:23:03.920 に答える