私のアプリケーションでは、人々は履歴書をアップロードし、私が保存している履歴書を更新できます。履歴書は、データベース内のファイル ストリームを使用します。それはうまくいっています。しかし今は、アップロードされた履歴書のバージョンを追跡して、最新および以前の履歴書を見つけたいと考えています。
これを行う最善の方法は何ですか?
私のアプリケーションでは、人々は履歴書をアップロードし、私が保存している履歴書を更新できます。履歴書は、データベース内のファイル ストリームを使用します。それはうまくいっています。しかし今は、アップロードされた履歴書のバージョンを追跡して、最新および以前の履歴書を見つけたいと考えています。
これを行う最善の方法は何ですか?
私があなただったら、versionNumber 列をテーブルに追加し、「更新」が再開されたら、データベースに新しいエントリを書き込むだけです。次に、ResumeActive という名前の列、またはビット フィールドに似た列が必要です。最新の履歴書をアクティブとしてマークし、他のすべてを非アクティブとしてマークするだけです。
履歴書を以前のバージョンにロールバックしたい場合は、それをアクティブとしてマークし、他のすべてを非アクティブとしてマークするだけです。これが役に立ち、あなたの質問を正しく理解できたことを願っています。
ドキュメントのバージョンを認識するストレージ エンジンを使用することもできます。これにより、バージョンを追跡できるだけでなく、それらをすばやく切り替えて相違点を表示することもできます。ソリューションに Windows を使用している場合は、Sharepoint ($) またはSharePoint Portal Services (無料)を調べることができます。
通常の差分またはバイナリ差分を使用し、変更のたびに差分の結果をバージョン番号とともにデータベースに保存します。したがって、ユーザーが元に戻したい場合は、そのバージョンまでのすべての差分を適用してください。これは、ファイル全体の各バージョンを保存するよりも少ないスペースで済みます。