(57)【要約】【課題】他の情報処理装置との間で、データベースの編集内容を互いに反映し合うことを正常に行うことが可能な情報処理装置を提供すること。【解決手段】この情報処理装置１００は、データを記憶装置に記憶させることにより第１のデータベースを構築する。更に、装置１００は受け付けた編集情報に基づいて第１のデータベースを編集する。加えて、装置１００は他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する。また、装置１００は受信された編集履歴情報に基づいて第１のデータベースを編集する。そして、装置１００は第１のデータベースの編集が編集情報に基づいて行われた場合にその編集内容を表す編集履歴情報を他の情報処理装置へ送信し、一方、第１のデータベースの編集が編集履歴情報に基づいて行われた場合にその編集内容を表す編集履歴情報を送信しない。【選択図】図１２
2010079617.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築手段と、
前記第１のデータベースを編集するための編集情報を受け付ける編集情報受付手段と、
前記受け付けた編集情報に基づいて前記第１のデータベースを編集するデータベース編集手段と、
前記データベース編集手段が前記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信手段と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信手段と、
を備えるとともに、
前記データベース編集手段は、前記受信された編集履歴情報に基づいて前記第１のデータベースを編集するように構成され、
前記編集履歴情報送信手段は、前記データベース編集手段による前記第１のデータベースの編集が前記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成された情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記データベース編集手段が前記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を前記記憶装置に記憶させる編集履歴情報記憶処理手段を備え、
前記編集履歴情報送信手段は、前記記憶されている編集履歴情報を他の情報処理装置へ送信するように構成された情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記編集履歴情報記憶処理手段は、前記データベース編集手段が前記編集情報に基づいて前記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を前記記憶装置に記憶させるように構成された情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記編集履歴情報記憶処理手段は、
前記データベース編集手段が前記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を含むデータを前記第１のデータベースに追加する処理をトランザクション処理の少なくとも一部として実行するとともに、
前記データベース編集手段による前記第１のデータベースの編集が前記編集情報に基づいて行われた場合には前記トランザクション処理の実行結果を前記第１のデータベースに反映させるコミット処理を実行し、一方、前記データベース編集手段による前記第１のデータベースの編集が前記編集履歴情報に基づいて行われた場合には前記トランザクション処理にて前記第１のデータベースに追加されたデータを当該第１のデータベースから削除する処理を当該トランザクション処理の一部として実行しその後当該トランザクション処理の実行結果を前記第１のデータベースに反映させるコミット処理を実行するように構成され、
前記編集履歴情報送信手段は、前記第１のデータベース内のデータに含まれる編集履歴情報を他の情報処理装置へ送信するように構成された情報処理装置。
【請求項５】
請求項３に記載の情報処理装置であって、
前記編集履歴情報記憶処理手段は、
前記データベース編集手段が前記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を含むデータを前記第１のデータベースに追加する処理をトランザクション処理の少なくとも一部として実行するとともに、
前記データベース編集手段による前記第１のデータベースの編集が前記編集情報に基づいて行われた場合には前記トランザクション処理の実行結果を前記第１のデータベースに反映させるコミット処理を実行し、一方、前記データベース編集手段による前記第１のデータベースの編集が前記編集履歴情報に基づいて行われた場合には前記トランザクション処理の実行結果を前記第１のデータベースに反映させることなく破棄するロールバック処理を実行するように構成され、
前記編集履歴情報送信手段は、前記第１のデータベース内のデータに含まれる編集履歴情報を他の情報処理装置へ送信するように構成された情報処理装置。
【請求項６】
請求項２に記載の情報処理装置であって、
前記編集履歴情報記憶処理手段は、
前記データベース編集手段が前記第１のデータベースを編集する毎にその編集内容を表す編集履歴情報を前記記憶装置に記憶させるとともに、前記データベース編集手段による前記第１のデータベースの編集が前記編集履歴情報に基づいて行われた場合に、その編集内容を表し且つ前記記憶装置に記憶されている編集履歴情報を当該記憶装置から削除するように構成された情報処理装置。
【請求項７】
請求項２乃至請求項６のいずれか一項に記載の情報処理装置であって、
前記記憶されている編集履歴情報のうちの、前記編集履歴情報送信手段により送信された編集履歴情報を前記記憶装置から削除する編集履歴情報削除手段を備える情報処理装置。
【請求項８】
請求項１乃至請求項７のいずれか一項に記載の情報処理装置であって、
前記編集情報は、少なくとも１つのデータを含むレコードを前記データベースに新たに追加する旨を表す情報、当該データベースからレコードを削除する旨を表す情報、及び、当該データベース内のレコードを変更する旨を表す情報のうちの少なくとも１つを含む情報である情報処理装置。
【請求項９】
第１の情報処理装置と第２の情報処理装置とを含む情報処理システムであって、
前記第１の情報処理装置は、
少なくとも１つのデータを第１の記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築する第１のデータベース構築手段と、
前記第１のデータベースを編集するための編集情報を受け付ける第１の編集情報受付手段と、
前記受け付けた編集情報に基づいて前記第１のデータベースを編集する第１のデータベース編集手段と、
前記第１のデータベース編集手段が前記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を前記第２の情報処理装置へ送信する第１の編集履歴情報送信手段と、
前記第２の情報処理装置から編集履歴情報を受信する第１の編集履歴情報受信手段と、
を備え、
前記第２の情報処理装置は、
少なくとも１つのデータを第２の記憶装置に記憶させることにより当該記憶されたデータからなる第２のデータベースを構築する第２のデータベース構築手段と、
前記第２のデータベースを編集するための編集情報を受け付ける第２の編集情報受付手段と、
前記受け付けた編集情報に基づいて前記第２のデータベースを編集する第２のデータベース編集手段と、
前記第２のデータベース編集手段が前記第２のデータベースを編集した場合に、その編集内容を表す編集履歴情報を前記第１の情報処理装置へ送信する第２の編集履歴情報送信手段と、
前記第１の情報処理装置から編集履歴情報を受信する第２の編集履歴情報受信手段と、
を備え、
前記第１のデータベース編集手段は、前記受信された編集履歴情報に基づいて前記第１のデータベースを編集するように構成され、
前記第１の編集履歴情報送信手段は、前記第１のデータベース編集手段による前記第１のデータベースの編集が前記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を前記第２の情報処理装置へ送信しないように構成され、
前記第２のデータベース編集手段は、前記受信された編集履歴情報に基づいて前記第２のデータベースを編集するように構成され、
前記第２の編集履歴情報送信手段は、前記第２のデータベース編集手段による前記第２のデータベースの編集が前記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を前記第１の情報処理装置へ送信しないように構成された情報処理システム。
【請求項１０】
請求項９に記載の情報処理システムであって、
前記第１の情報処理装置は、
前記第１のデータベース編集手段が前記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を前記第１の記憶装置に記憶させる第１の編集履歴情報記憶処理手段を備え、
前記第１の編集履歴情報送信手段は、前記第１の記憶装置に記憶されている編集履歴情報を前記第２の情報処理装置へ送信するように構成され、
前記第２の情報処理装置は、
前記第２のデータベース編集手段が前記第２のデータベースを編集した場合に、その編集内容を表す編集履歴情報を前記第２の記憶装置に記憶させる第２の編集履歴情報記憶処理手段を備え、
前記第２の編集履歴情報送信手段は、前記第２の記憶装置に記憶されている編集履歴情報を前記第１の情報処理装置へ送信するように構成された情報処理システム。
【請求項１１】
請求項９又は請求項１０に記載の情報処理システムであって、
前記第１の編集履歴情報記憶処理手段は、前記第１のデータベース編集手段が前記編集情報に基づいて前記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を前記第１の記憶装置に記憶させるように構成され、
前記第２の編集履歴情報記憶処理手段は、前記第２のデータベース編集手段が前記編集情報に基づいて前記第２のデータベースを編集する毎に、その編集内容を表す編集履歴情報を前記第２の記憶装置に記憶させるように構成された情報処理システム。
【請求項１２】
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築工程と、
前記第１のデータベースを編集するための編集情報を受け付ける編集情報受付工程と、
前記受け付けた編集情報に基づいて前記第１のデータベースを編集するデータベース編集工程と、
前記データベース編集工程にて前記第１のデータベースが編集された場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信工程と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信工程と、
を含むとともに、
前記データベース編集工程は、前記受信された編集履歴情報に基づいて前記第１のデータベースを編集するように構成され、
前記編集履歴情報送信工程は、前記データベース編集工程にて前記第１のデータベースの編集が前記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成された情報処理方法。
【請求項１３】
請求項１２に記載の情報処理方法であって、
前記データベース編集工程にて前記第１のデータベースが編集された場合に、その編集内容を表す編集履歴情報を前記記憶装置に記憶させる編集履歴情報記憶処理工程を含み、
前記編集履歴情報送信工程は、前記記憶されている編集履歴情報を他の情報処理装置へ送信するように構成された情報処理方法。
【請求項１４】
請求項１３に記載の情報処理方法であって、
前記編集履歴情報記憶処理工程は、前記データベース編集工程にて前記編集情報に基づいて前記第１のデータベースが編集される毎に、その編集内容を表す編集履歴情報を前記記憶装置に記憶させるように構成された情報処理方法。
【請求項１５】
情報処理装置に、
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築手段と、
前記第１のデータベースを編集するための編集情報を受け付ける編集情報受付手段と、
前記受け付けた編集情報に基づいて前記第１のデータベースを編集するデータベース編集手段と、
前記データベース編集手段が前記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信手段と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信手段と、
を実現させるとともに、
前記データベース編集手段は、前記受信された編集履歴情報に基づいて前記第１のデータベースを編集するように構成され、
前記編集履歴情報送信手段は、前記データベース編集手段による前記第１のデータベースの編集が前記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成されたプログラム。
【請求項１６】
請求項１５に記載のプログラムであって、
前記情報処理装置に、更に、
前記データベース編集手段が前記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を前記記憶装置に記憶させる編集履歴情報記憶処理手段を実現させるとともに、
前記編集履歴情報送信手段は、前記記憶されている編集履歴情報を他の情報処理装置へ送信するように構成されたプログラム。
【請求項１７】
請求項１６に記載のプログラムであって、
前記編集履歴情報記憶処理手段は、前記データベース編集手段が前記編集情報に基づいて前記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を前記記憶装置に記憶させるように構成されたプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースを構築するとともに構築されたデータベースを編集する情報処理装置に関する。
【背景技術】
【０００２】
第１の情報処理装置により構築された（第１の情報処理装置が有する）第１のデータベースが編集された（データベースにレコードが追加された、データベースからレコードが削除された、又は、データベース内のレコードが変更された）場合に、その編集内容を第２の情報処理装置により構築された（第２の情報処理装置が有する）第２のデータベースに反映する情報処理システムが知られている（例えば、特許文献１を参照）。
【０００３】
この情報処理システムにおいて、第１の情報処理装置は、第１のデータベースが編集された場合に、その編集内容を表す編集履歴情報を記憶する。そして、第１の情報処理装置は、記憶されている編集履歴情報を第２の情報処理装置へ送信する。第２の情報処理装置は、受信した編集履歴情報に基づいて第２のデータベースを編集する。これによれば、第１のデータベースの編集内容を第２のデータベースに反映することができる。
【特許文献１】特開平１０−７４１５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、上記情報処理システムにおいては、第２のデータベースが編集された場合に、その編集内容を第１のデータベースに反映することができない。そこで、上記第１の情報処理装置の機能及び第２の情報処理装置の機能の両方を第１の情報処理装置及び第２の情報処理装置のそれぞれが有するように、上記情報処理システムを構成することが考えられる。
【０００５】
しかしながら、このように構成された情報処理システムにおいては、例えば、第１の情報処理装置が第２の情報処理装置から受信した編集履歴情報に基づいて、その編集履歴情報が表す編集内容を第１のデータベースに反映した場合にも、第１の情報処理装置は、その編集内容を表す編集履歴情報を記憶する。
【０００６】
従って、第１の情報処理装置は、第２の情報処理装置から受信した編集履歴情報が表す編集内容と同一の編集内容を表す編集履歴情報を第２の情報処理装置へ送信してしまう。その結果、第２の情報処理装置は、既に編集を行った内容と同一の内容にて再び第２のデータベースを編集する。具体的には、例えば、第２の情報処理装置が、レコードを追加するように第２のデータベースを編集していた場合に、再び同一のレコードが第２のデータベースに追加される。
【０００７】
即ち、上記情報処理システムにおいては、情報処理装置が他の情報処理装置との間で、データベースの編集内容を互いに反映し合うことを正常に行うことができないという問題があった。
【０００８】
このため、本発明の目的は、上述した課題である「情報処理装置が他の情報処理装置との間で、データベースの編集内容を互いに反映し合うことを正常に行うことができないこと」を解決することが可能な情報処理装置を提供することにある。
【課題を解決するための手段】
【０００９】
かかる目的を達成するため本発明の一形態である情報処理装置は、
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築手段と、
上記第１のデータベースを編集するための編集情報を受け付ける編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集するデータベース編集手段と、
上記データベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信手段と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信手段と、
を備える。
更に、上記データベース編集手段は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記編集履歴情報送信手段は、上記データベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成される。
【００１０】
また、本発明の他の形態である情報処理システムは、第１の情報処理装置と第２の情報処理装置とを含むシステムである。
【００１１】
更に、上記第１の情報処理装置は、
少なくとも１つのデータを第１の記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築する第１のデータベース構築手段と、
上記第１のデータベースを編集するための編集情報を受け付ける第１の編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集する第１のデータベース編集手段と、
上記第１のデータベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記第２の情報処理装置へ送信する第１の編集履歴情報送信手段と、
上記第２の情報処理装置から編集履歴情報を受信する第１の編集履歴情報受信手段と、
を備える。
【００１２】
加えて、上記第２の情報処理装置は、
少なくとも１つのデータを第２の記憶装置に記憶させることにより当該記憶されたデータからなる第２のデータベースを構築する第２のデータベース構築手段と、
上記第２のデータベースを編集するための編集情報を受け付ける第２の編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第２のデータベースを編集する第２のデータベース編集手段と、
上記第２のデータベース編集手段が上記第２のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記第１の情報処理装置へ送信する第２の編集履歴情報送信手段と、
上記第１の情報処理装置から編集履歴情報を受信する第２の編集履歴情報受信手段と、
を備える。
【００１３】
更に、上記第１のデータベース編集手段は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記第１の編集履歴情報送信手段は、上記第１のデータベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を上記第２の情報処理装置へ送信しないように構成され、
上記第２のデータベース編集手段は、上記受信された編集履歴情報に基づいて上記第２のデータベースを編集するように構成され、
上記第２の編集履歴情報送信手段は、上記第２のデータベース編集手段による上記第２のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を上記第１の情報処理装置へ送信しないように構成される。
【００１４】
また、本発明の他の形態である情報処理方法は、
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築工程と、
上記第１のデータベースを編集するための編集情報を受け付ける編集情報受付工程と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集するデータベース編集工程と、
上記データベース編集工程にて上記第１のデータベースが編集された場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信工程と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信工程と、
を含む。
【００１５】
更に、上記データベース編集工程は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記編集履歴情報送信工程は、上記データベース編集工程にて上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成される。
【００１６】
また、本発明の他の形態であるプログラムは、
情報処理装置に、
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築手段と、
上記第１のデータベースを編集するための編集情報を受け付ける編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集するデータベース編集手段と、
上記データベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信手段と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信手段と、
を実現させるとともに、
上記データベース編集手段は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記編集履歴情報送信手段は、上記データベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成される。
【発明の効果】
【００１７】
本発明は、以上のように構成されることにより、他の情報処理装置との間で、データベースの編集内容を互いに反映し合うことを正常に行うことができる。
【発明を実施するための最良の形態】
【００１８】
本発明の一形態である情報処理装置は、
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築手段と、
上記第１のデータベースを編集するための編集情報を受け付ける編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集するデータベース編集手段と、
上記データベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信手段と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信手段と、
を備える。
【００１９】
更に、上記データベース編集手段は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記編集履歴情報送信手段は、上記データベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成される。
【００２０】
これによれば、情報処理装置は、受け付けた編集情報に基づいて第１のデータベースを編集した場合にその編集内容を表す編集履歴情報を他の情報処理装置へ送信し、一方、受信された編集履歴情報に基づいて第１のデータベースを編集した場合にその編集内容を表す編集履歴情報を他の情報処理装置へ送信しない。
【００２１】
これにより、情報処理装置が、他の情報処理装置から受信した編集履歴情報が表す編集内容と同一の編集内容を表す編集履歴情報をその情報処理装置へ送信することを防止することができる。この結果、他の情報処理装置が、既に編集を行った内容と同一の内容にて再び第２のデータベースを編集することを防止することができる。従って、情報処理装置が他の情報処理装置との間で、データベースの編集内容を互いに反映し合うことを正常に行うことができる。
【００２２】
この場合、上記情報処理装置は、
上記データベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記記憶装置に記憶させる編集履歴情報記憶処理手段を備え、
上記編集履歴情報送信手段は、上記記憶されている編集履歴情報を他の情報処理装置へ送信するように構成されることが好適である。
【００２３】
この場合、
上記編集履歴情報記憶処理手段は、上記データベース編集手段が上記編集情報に基づいて上記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を上記記憶装置に記憶させるように構成されることが好適である。
【００２４】
この場合、上記編集履歴情報記憶処理手段は、
上記データベース編集手段が上記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を含むデータを上記第１のデータベースに追加する処理をトランザクション処理の少なくとも一部として実行するとともに、
上記データベース編集手段による上記第１のデータベースの編集が上記編集情報に基づいて行われた場合には上記トランザクション処理の実行結果を上記第１のデータベースに反映させるコミット処理を実行し、一方、上記データベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合には上記トランザクション処理にて上記第１のデータベースに追加されたデータを当該第１のデータベースから削除する処理を当該トランザクション処理の一部として実行しその後当該トランザクション処理の実行結果を上記第１のデータベースに反映させるコミット処理を実行するように構成される。
【００２５】
更に、上記編集履歴情報送信手段は、上記第１のデータベース内のデータに含まれる編集履歴情報を他の情報処理装置へ送信するように構成されることが好適である。
【００２６】
ところで、情報処理装置が、編集履歴情報を含むデータを第１のデータベースに追加する処理を行うことにより、その処理の実行結果を直ちに第１のデータベースに反映させるように構成されている場合、上記データを追加する処理（追加処理）を行った後にそのデータを削除する処理（削除処理）を行った場合であっても、削除処理の実行までの間に削除されるべきデータに含まれる編集履歴情報が他の情報処理装置に送信されてしまう虞がある。
【００２７】
これに対し、上記構成によれば、情報処理装置が追加したデータを削除する場合には、削除処理を行った後に、追加処理及び削除処理の実行結果が第１のデータベースに反映される。これにより、削除されるべきデータに含まれる編集履歴情報が他の情報処理装置に送信されることを確実に防止することができる。
【００２８】
また、上記情報処理装置の他の態様において、
上記編集履歴情報記憶処理手段は、
上記データベース編集手段が上記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を含むデータを上記第１のデータベースに追加する処理をトランザクション処理の少なくとも一部として実行するとともに、
上記データベース編集手段による上記第１のデータベースの編集が上記編集情報に基づいて行われた場合には上記トランザクション処理の実行結果を上記第１のデータベースに反映させるコミット処理を実行し、一方、上記データベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合には上記トランザクション処理の実行結果を上記第１のデータベースに反映させることなく破棄するロールバック処理を実行するように構成される。
【００２９】
更に、上記編集履歴情報送信手段は、上記第１のデータベース内のデータに含まれる編集履歴情報を他の情報処理装置へ送信するように構成されることが好適である。
【００３０】
ところで、情報処理装置が、編集履歴情報を含むデータを第１のデータベースに追加する処理を行うことにより、その処理の実行結果を直ちに第１のデータベースに反映させるように構成されている場合、上記データを追加する処理（追加処理）を行った後にそのデータを削除する処理（削除処理）を行った場合であっても、削除処理の実行までの間に削除されるべきデータに含まれる編集履歴情報が他の情報処理装置に送信されてしまう虞がある。
【００３１】
これに対し、上記構成によれば、情報処理装置は、第１のデータベースの編集が編集履歴情報に基づいて行われた場合、追加処理の実行結果を第１のデータベースに反映することなく破棄する。これにより、削除されるべきデータに含まれる編集履歴情報が他の情報処理装置に送信されることを確実に防止することができる。
【００３２】
また、上記情報処理装置の他の態様において、
上記編集履歴情報記憶処理手段は、
上記データベース編集手段が上記第１のデータベースを編集する毎にその編集内容を表す編集履歴情報を上記記憶装置に記憶させるとともに、上記データベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表し且つ上記記憶装置に記憶されている編集履歴情報を当該記憶装置から削除するように構成されることが好適である。
【００３３】
この場合、上記情報処理装置は、
上記記憶されている編集履歴情報のうちの、上記編集履歴情報送信手段により送信された編集履歴情報を上記記憶装置から削除する編集履歴情報削除手段を備えることが好適である。
【００３４】
これによれば、他の情報処理装置へ一度送信された編集履歴情報が、再度送信されることを確実に防止することができる。
【００３５】
この場合、
上記編集情報は、少なくとも１つのデータを含むレコードを上記データベースに新たに追加する旨を表す情報、当該データベースからレコードを削除する旨を表す情報、及び、当該データベース内のレコードを変更する旨を表す情報のうちの少なくとも１つを含む情報であることが好適である。
【００３６】
また、本発明の他の形態である情報処理システムは、第１の情報処理装置と第２の情報処理装置とを含むシステムである。
【００３７】
更に、上記第１の情報処理装置は、
少なくとも１つのデータを第１の記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築する第１のデータベース構築手段と、
上記第１のデータベースを編集するための編集情報を受け付ける第１の編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集する第１のデータベース編集手段と、
上記第１のデータベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記第２の情報処理装置へ送信する第１の編集履歴情報送信手段と、
上記第２の情報処理装置から編集履歴情報を受信する第１の編集履歴情報受信手段と、
を備える。
【００３８】
更に、上記第２の情報処理装置は、
少なくとも１つのデータを第２の記憶装置に記憶させることにより当該記憶されたデータからなる第２のデータベースを構築する第２のデータベース構築手段と、
上記第２のデータベースを編集するための編集情報を受け付ける第２の編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第２のデータベースを編集する第２のデータベース編集手段と、
上記第２のデータベース編集手段が上記第２のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記第１の情報処理装置へ送信する第２の編集履歴情報送信手段と、
上記第１の情報処理装置から編集履歴情報を受信する第２の編集履歴情報受信手段と、
を備える。
【００３９】
加えて、上記第１のデータベース編集手段は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記第１の編集履歴情報送信手段は、上記第１のデータベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を上記第２の情報処理装置へ送信しないように構成され、
上記第２のデータベース編集手段は、上記受信された編集履歴情報に基づいて上記第２のデータベースを編集するように構成され、
上記第２の編集履歴情報送信手段は、上記第２のデータベース編集手段による上記第２のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を上記第１の情報処理装置へ送信しないように構成される。
【００４０】
この場合、上記第１の情報処理装置は、
上記第１のデータベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記第１の記憶装置に記憶させる第１の編集履歴情報記憶処理手段を備え、
上記第１の編集履歴情報送信手段は、上記第１の記憶装置に記憶されている編集履歴情報を上記第２の情報処理装置へ送信するように構成され、
上記第２の情報処理装置は、
上記第２のデータベース編集手段が上記第２のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記第２の記憶装置に記憶させる第２の編集履歴情報記憶処理手段を備え、
上記第２の編集履歴情報送信手段は、上記第２の記憶装置に記憶されている編集履歴情報を上記第１の情報処理装置へ送信するように構成されることが好適である。
【００４１】
この場合、
上記第１の編集履歴情報記憶処理手段は、上記第１のデータベース編集手段が上記編集情報に基づいて上記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を上記第１の記憶装置に記憶させるように構成され、
上記第２の編集履歴情報記憶処理手段は、上記第２のデータベース編集手段が上記編集情報に基づいて上記第２のデータベースを編集する毎に、その編集内容を表す編集履歴情報を上記第２の記憶装置に記憶させるように構成されることが好適である。
【００４２】
また、本発明の他の形態である情報処理方法は、
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築工程と、
上記第１のデータベースを編集するための編集情報を受け付ける編集情報受付工程と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集するデータベース編集工程と、
上記データベース編集工程にて上記第１のデータベースが編集された場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信工程と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信工程と、
を含む。
【００４３】
更に、上記データベース編集工程は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記編集履歴情報送信工程は、上記データベース編集工程にて上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成される。
【００４４】
この場合、上記情報処理方法は、
上記データベース編集工程にて上記第１のデータベースが編集された場合に、その編集内容を表す編集履歴情報を上記記憶装置に記憶させる編集履歴情報記憶処理工程を含み、
上記編集履歴情報送信工程は、上記記憶されている編集履歴情報を他の情報処理装置へ送信するように構成されることが好適である。
【００４５】
この場合、
上記編集履歴情報記憶処理工程は、上記データベース編集工程にて上記編集情報に基づいて上記第１のデータベースが編集される毎に、その編集内容を表す編集履歴情報を上記記憶装置に記憶させるように構成されることが好適である。
【００４６】
また、本発明の他の形態であるプログラムは、
情報処理装置に、
少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなる第１のデータベースを構築するデータベース構築手段と、
上記第１のデータベースを編集するための編集情報を受け付ける編集情報受付手段と、
上記受け付けた編集情報に基づいて上記第１のデータベースを編集するデータベース編集手段と、
上記データベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する編集履歴情報送信手段と、
他の情報処理装置により構築された第２のデータベースの編集内容を表す編集履歴情報を当該情報処理装置から受信する編集履歴情報受信手段と、
を実現させるとともに、
上記データベース編集手段は、上記受信された編集履歴情報に基づいて上記第１のデータベースを編集するように構成され、
上記編集履歴情報送信手段は、上記データベース編集手段による上記第１のデータベースの編集が上記編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しないように構成される。
【００４７】
この場合、上記プログラムは、
上記情報処理装置に、更に、
上記データベース編集手段が上記第１のデータベースを編集した場合に、その編集内容を表す編集履歴情報を上記記憶装置に記憶させる編集履歴情報記憶処理手段を実現させるとともに、
上記編集履歴情報送信手段は、上記記憶されている編集履歴情報を他の情報処理装置へ送信するように構成されることが好適である。
【００４８】
この場合、
上記編集履歴情報記憶処理手段は、上記データベース編集手段が上記編集情報に基づいて上記第１のデータベースを編集する毎に、その編集内容を表す編集履歴情報を上記記憶装置に記憶させるように構成されることが好適である。
【００４９】
上述した構成を有する、情報処理システム、情報処理方法、又は、プログラム、の発明であっても、上記情報処理装置と同様の作用を有するために、上述した本発明の目的を達成することができる。
【００５０】
以下、本発明に係る、情報処理装置、情報処理システム、情報処理方法、及び、プログラム、の実施形態について図１〜図１２を参照しながら説明する。
【００５１】
＜実施形態＞
図１に示したように、実施形態に係る情報処理システム１は、管理サーバ１０と、第１の情報処理装置としての第１のデータベースサーバ２０と、第２の情報処理装置としての第２のデータベースサーバ３０と、を含む。
【００５２】
管理サーバ１０、第１のデータベースサーバ２０及び第２のデータベースサーバ３０は、通信回線（本例では、インターネット）ＮＷを介して、互いに通信可能に接続されている。
【００５３】
管理サーバ１０は、サーバ装置である。管理サーバ１０は、図示しない中央処理装置（ＣＰＵ；Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、記憶装置（メモリ及びハードディスク駆動装置（ＨＤＤ））、入力装置及び出力装置を備える。
【００５４】
出力装置は、ディスプレイを有する。出力装置は、ＣＰＵから出力された画像情報に基づいて、文字及び図形等からなる画像をディスプレイに表示させる。入力装置は、キーボード及びマウスを有する。管理サーバ１０は、キーボード及びマウスを介して、ユーザの操作に基づく情報が入力されるように構成されている。
【００５５】
管理サーバ１０は、記憶装置に記憶されているプログラムをＣＰＵが実行することにより、後述する機能を実現するように構成されている。
【００５６】
第１のデータベースサーバ２０及び第２のデータベースサーバ３０のそれぞれは、管理サーバ１０と同様のサーバ装置である。第１のデータベースサーバ２０及び第２のデータベースサーバ３０のそれぞれは、管理サーバ１０と同様に、図示しないＣＰＵ及び記憶装置を備える。第１のデータベースサーバ２０及び第２のデータベースサーバ３０のそれぞれは、管理サーバ１０と同様に、記憶装置に記憶されているプログラムをＣＰＵが実行することにより、後述する機能を実現するように構成されている。
【００５７】
図２は、上記のように構成された情報処理システム１の機能を表すブロック図である。この機能は、第１のデータベースサーバ２０のＣＰＵ及び第２のデータベースサーバ３０のＣＰＵが後述する図３及び図４に示したフローチャートにより表されるプログラム等を実行するとともに、管理サーバ１０のＣＰＵが所定のプログラム等を実行することにより、実現される。
【００５８】
この管理サーバ１０の機能は、複製対象特定情報記憶部４１と、複製対象特定情報送信部４２と、を含む。
【００５９】
複製対象特定情報記憶部４１は、複製対象特定情報を管理サーバ１０の記憶装置に記憶させる。複製対象特定情報は、データベースサーバを特定するサーバ特定情報と、データベース内のテーブル（表）を特定するテーブル特定情報と、編集履歴情報を送信する周期である送信周期（本例では、１０分）を表す送信周期情報と、を含む。本例では、複製対象特定情報は、管理サーバ１０のユーザが入力装置を介して入力した情報である。ここで、サーバ特定情報は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを表す情報と、ポート番号を表す情報と、を含む。
【００６０】
本例では、サーバ特定情報は、第１のデータベースサーバ２０を特定する情報と、第２のデータベースサーバ３０を特定する情報と、を含む。また、テーブル特定情報は、後述する社員氏名テーブルを特定する情報である。
【００６１】
複製対象特定情報送信部４２は、第１のデータベースサーバ２０（又は、第２のデータベースサーバ３０）から送信要求を受信する。複製対象特定情報送信部４２は、受信した送信要求に応じて、複製対象特定情報記憶部４１に記憶されている複製対象特定情報を、送信要求を送信してきた第１のデータベースサーバ２０（又は、第２のデータベースサーバ３０）へ送信する。
【００６２】
第１のデータベースサーバ２０の機能は、第１のデータベース構築部（第１のデータベース構築手段）５１と、第１の編集情報受付部（第１の編集情報受付手段）５２と、第１の編集履歴情報受信部（第１の編集履歴情報受信手段）５３と、第１のデータベース編集部（第１のデータベース編集手段）５４と、第１の編集履歴情報記憶処理部（第１の編集履歴情報記憶処理手段）５５と、第１の編集履歴情報送信部（第１の編集履歴情報送信手段）５６と、第１の編集履歴情報削除部（第１の編集履歴情報削除手段）５７と、を含む。
【００６３】
第１のデータベース構築部５１は、少なくとも１つのデータを第１のデータベースサーバ２０が備える記憶装置（第１の記憶装置）に記憶させることにより、当該記憶されたデータからなる第１のデータベースＤＢ１を構築する。
【００６４】
本例では、第１のデータベースＤＢ１は、社員氏名テーブルと、編集履歴テーブルと、を含む。
社員氏名テーブルは、図５に示したように、社員番号（プライマリーキー）を表すデータと、氏を表すデータと、名を表すデータと、からなるレコードを編集（追加、削除、又は、変更）可能なテーブルである。
【００６５】
また、編集履歴テーブルは、図６に示したように、編集履歴識別情報（プライマリーキー）を表すデータと、編集種別を表すデータと、編集前の社員番号を表すデータと、編集前の氏を表すデータと、編集前の名を表すデータと、編集後の社員番号を表すデータと、編集後の氏を表すデータと、編集後の名を表すデータと、からなるレコードを編集可能なテーブルである。なお、編集履歴テーブルに含まれるレコードは、編集履歴情報を構成している。
【００６６】
第１の編集情報受付部５２は、第１のデータベースＤＢ１に含まれる社員氏名テーブル（内のレコード）を編集するための編集情報を受け付ける。ここで、編集情報は、レコードを社員氏名テーブルに新たに追加する旨を表す情報、社員氏名テーブルからレコードを削除する旨を表す情報、及び、社員氏名テーブル内のレコードを変更（更新）する旨を表す情報、のうちの少なくとも１つを含む情報である。また、本例では、編集情報は、第１のデータベースサーバ２０のＣＰＵが実行するアプリケーションプログラムによって生成された情報（例えば、ＳＱＬ文を含む命令）である。
【００６７】
第１の編集履歴情報受信部５３は、第２のデータベースサーバ３０により構築された第２のデータベースＤＢ２に含まれる社員氏名テーブルの編集内容を表す編集履歴情報を第２のデータベースサーバ３０から受信する。
【００６８】
第１のデータベース編集部５４は、第１の編集情報受付部５２により受け付けられた編集情報に基づいて第１のデータベースＤＢ１に含まれる社員氏名テーブルを編集する。
更に、第１のデータベース編集部５４は、第１の編集履歴情報受信部５３により受信された編集履歴情報に基づいて第１のデータベースＤＢ１に含まれる社員氏名テーブルを編集する。
【００６９】
第１の編集履歴情報記憶処理部５５は、第１のデータベース編集部５４が編集情報に基づいて第１のデータベースＤＢ１に含まれる社員氏名テーブルを編集する毎に、その編集内容を表す編集履歴情報を含むデータからなるレコードを、第１のデータベースＤＢ１に含まれる編集履歴テーブルに追加する。即ち、第１の編集履歴情報記憶処理部５５は、第１のデータベース編集部５４による第１のデータベースＤＢ１の編集が編集情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を第１の記憶装置に記憶させる。
【００７０】
一方、第１の編集履歴情報記憶処理部５５は、第１のデータベース編集部５４が編集履歴情報に基づいて第１のデータベースＤＢ１に含まれる社員氏名テーブルを編集する場合、その編集内容を表す編集履歴情報を含むデータからなるレコードを、第１のデータベースＤＢ１に含まれる編集履歴テーブルに追加しない。即ち、第１の編集履歴情報記憶処理部５５は、第１のデータベース編集部５４による第１のデータベースＤＢ１の編集が編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を第１の記憶装置に記憶させない。
【００７１】
第１の編集履歴情報送信部５６は、管理サーバ１０へ送信要求を送信する。送信要求は、複製対象特定情報を送信する旨を要求する情報である。第１の編集履歴情報送信部５６は、送信した送信要求に応じて管理サーバ１０から送信された複製対象特定情報を受信する。
【００７２】
第１の編集履歴情報送信部５６は、受信した複製対象特定情報に含まれる送信周期情報が表す送信周期が経過する毎に、複製対象特定情報に含まれるサーバ特定情報により特定されるデータベースサーバ（本例では、第２のデータベースサーバ３０）へ編集履歴情報を送信する。この編集履歴情報は、上記受信した複製対象特定情報に含まれるテーブル特定情報により特定されるテーブルに対応付けられた編集履歴情報（本例では、第１のデータベースＤＢ１に含まれる編集履歴テーブル内のすべてのレコード）である。
【００７３】
即ち、第１の編集履歴情報送信部５６は、第１のデータベース編集部５４による第１のデータベースＤＢ１の編集が編集情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を第２のデータベースサーバ３０へ送信する。一方、第１の編集履歴情報送信部５６は、第１のデータベース編集部５４による第１のデータベースＤＢ１の編集が編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を第２のデータベースサーバ３０へ送信しない。
【００７４】
第１の編集履歴情報削除部５７は、第１の編集履歴情報送信部５６により編集履歴情報が送信された後に、第１のデータベースＤＢ１に含まれる編集履歴テーブル内のレコード（編集履歴情報）のうちの、第１の編集履歴情報送信部５６により送信されたレコード（本例では、すべてのレコード）を、編集履歴テーブルから削除する。即ち、第１の編集履歴情報削除部５７は、第１の記憶装置に記憶されている編集履歴情報のうちの、第１の編集履歴情報送信部５６により送信された編集履歴情報を第１の記憶装置から削除（消去）する。
【００７５】
また、第２のデータベースサーバ３０の機能は、第１のデータベースサーバ２０の機能と同様である。即ち、第２のデータベースサーバ３０の機能は、第１のデータベース構築部５１と同様の第２のデータベース構築部（第２のデータベース構築手段）６１と、第１の編集情報受付部５２と同様の第２の編集情報受付部（第２の編集情報受付手段）６２と、第１の編集履歴情報受信部５３と同様の第２の編集履歴情報受信部（第２の編集履歴情報受信手段）６３と、第１のデータベース編集部５４と同様の第２のデータベース編集部（第２のデータベース編集手段）６４と、第１の編集履歴情報記憶処理部５５と同様の第２の編集履歴情報記憶処理部（第２の編集履歴情報記憶処理手段）６５と、第１の編集履歴情報送信部５６と同様の第２の編集履歴情報送信部（第２の編集履歴情報送信手段）６６と、第１の編集履歴情報削除部５７と同様の第２の編集履歴情報削除部（第２の編集履歴情報削除手段）６７と、を含む。
【００７６】
即ち、第２のデータベース構築部６１は、少なくとも１つのデータを第２のデータベースサーバ３０が備える記憶装置（第２の記憶装置）に記憶させることにより、当該記憶されたデータからなる第２のデータベースＤＢ２を構築する。本例では、第２のデータベースＤＢ２は、第１のデータベースＤＢ１と同様に、社員氏名テーブルと、編集履歴テーブルと、を含む。
【００７７】
次に、上述した情報処理システム１の作動について具体的に述べる。
第１のデータベースサーバ２０のＣＰＵは、図３にフローチャートにより示したデータベース編集プログラムを、第１のデータベースサーバ２０の起動時に１度だけ実行するようになっている。
【００７８】
具体的に述べると、第１のデータベースサーバ２０のＣＰＵは、データベース編集プログラムの処理を開始すると、ステップ３０５にて、編集情報を受け付けるまで、又は、編集履歴情報を第２のデータベースサーバ３０から受信するまで、待機する。
【００７９】
いま、第１のデータベースサーバ２０のＣＰＵが実行中のアプリケーションプログラムから編集情報を受け付けた場合を想定して説明を続ける。更に、編集情報が、図５の（Ａ）に示した３つのレコードを社員氏名テーブルに新たに追加する旨を表す情報である場合を想定する。
【００８０】
この場合、ＣＰＵは、ステップ３０５にて「Ｙｅｓ」と判定してステップ３１０に進み、ステップ３０５にて受け付けた編集情報に基づいて第１のデータベースＤＢ１に含まれる社員氏名テーブルを編集する。具体的には、ＣＰＵは、編集情報に含まれる３つのレコードを社員氏名テーブルに新たに追加する。この結果、第１のデータベースＤＢ１に含まれる社員氏名テーブルの状態は、図５の（Ａ）に示したように、社員番号が「Ａ００００１」〜「Ａ００００３」の３つのレコードを含んだ状態となる。
【００８１】
そして、ＣＰＵは、ステップ３１５にて、トランザクション処理を開始する。トランザクション処理は、当該処理の実行結果を、後述するコミット処理が行われるまで、第１のデータベースＤＢ１に反映しない処理である。
【００８２】
次いで、ＣＰＵは、上記ステップ３１０にて行われた社員氏名テーブルの編集の内容（編集内容）を表す編集履歴情報を含むデータからなるレコードを、編集履歴テーブルに新たに追加する処理（追加処理）を上記トランザクション処理の少なくとも一部として行う（ステップ３２０）。
【００８３】
そして、ＣＰＵは、上記ステップ３１０にて行われた社員氏名テーブルの編集が、編集履歴情報に基づいて行われたか否かを判定する（ステップ３２５）。上記仮定に従えば、ＣＰＵは、「Ｎｏ」と判定してステップ３３０に進み、コミット処理を実行する。コミット処理は、トランザクション処理の実行結果をデータベースに反映させる処理である。これにより、上記追加処理の実行結果が第１のデータベースＤＢ１に反映される。
【００８４】
従って、第１のデータベースＤＢ１に含まれる編集履歴テーブルの状態は、図６の（Ａ）に示したように、社員番号が「Ａ００００１」〜「Ａ００００３」の３つのレコードが社員氏名テーブルに追加された旨を表すレコードを含んだ状態となる。なお、このレコードは、追加（挿入（ＩＮＳＥＲＴ））を表す「Ｉ」を、編集種別を表すデータとして含む。
【００８５】
そして、ＣＰＵは、ステップ３０５へ戻り、上述したステップ３０５〜ステップ３３０の処理を繰り返し実行する。
【００８６】
この状態において、更に、第２のデータベースサーバ３０のＣＰＵが実行中のアプリケーションプログラムから編集情報を受け付けた場合を想定して説明を続ける。更に、編集情報が、図５の（Ｂ）に示した３つのレコードを社員氏名テーブルに新たに追加する旨を表す情報である場合を想定する。
【００８７】
この場合、第２のデータベースサーバ３０のＣＰＵも、第１のデータベースサーバ２０のＣＰＵと同様に作動する。即ち、ＣＰＵは、上記ステップ３０５〜ステップ３３０の処理を実行する。この結果、第２のデータベースＤＢ２に含まれる社員氏名テーブルの状態は、図５の（Ｂ）に示したように、社員番号が「Ｂ００００１」〜「Ｂ００００３」の３つのレコードを含んだ状態となる。
【００８８】
更に、第２のデータベースＤＢ２に含まれる編集履歴テーブルの状態は、図６の（Ｂ）に示したように、社員番号が「Ｂ００００１」〜「Ｂ００００３」の３つのレコードが社員氏名テーブルに追加された旨を表すレコードを含んだ状態となる。
【００８９】
一方、第１のデータベースサーバ２０のＣＰＵは、送信周期が経過する毎に、図４にフローチャートにより示した編集履歴情報送信プログラムを繰り返し実行するようになっている。
【００９０】
具体的に述べると、第１のデータベースサーバ２０のＣＰＵは、編集履歴情報送信プログラムの処理を開始すると、ステップ４０５にて、編集履歴情報を取得する。具体的には、ＣＰＵは、第１のデータベースＤＢ１に含まれる編集履歴テーブル（図６の（Ａ））内のすべてのレコードを編集履歴情報として取得する（読み出す）。
【００９１】
そして、ＣＰＵは、取得した編集履歴情報を第２のデータベースサーバ３０へ送信する（ステップ４１０）。次いで、ＣＰＵは、編集履歴テーブル内のレコードのうちの、送信したレコードを編集履歴テーブルから削除する（ステップ４１５）。即ち、本例では、ＣＰＵは、編集履歴テーブル内のすべてのレコードを編集履歴テーブルから削除する。
そして、ＣＰＵは、この編集履歴情報送信プログラムの実行を終了する。
【００９２】
これにより、第２のデータベースサーバ３０は、第１のデータベースサーバ２０から編集履歴情報を受信する。従って、第２のデータベースサーバ３０のＣＰＵがステップ３０５に進んだとき、ＣＰＵは、「Ｙｅｓ」と判定してステップ３１０に進む。
【００９３】
次いで、第２のデータベースサーバ３０のＣＰＵは、ステップ３０５にて受信された編集履歴情報に基づいて第２のデータベースＤＢ２に含まれる社員氏名テーブルを編集する。具体的には、ＣＰＵは、編集履歴情報に含まれる３つのレコード（図６の（Ａ））に基づいて、社員番号が「Ａ００００１」〜「Ａ００００３」の３つのレコードを第２のデータベースＤＢ２に含まれる社員氏名テーブルに追加する。
【００９４】
この結果、第２のデータベースＤＢ２に含まれる社員氏名テーブルの状態は、図７に示したように、社員番号が「Ａ００００１」〜「Ａ００００３」の３つのレコード、及び、社員番号が「Ｂ００００１」〜「Ｂ００００３」の３つのレコード、を含んだ状態となる。
【００９５】
そして、ＣＰＵは、ステップ３１５にて、トランザクション処理を開始する。次いで、ＣＰＵは、上記ステップ３１０にて行われた社員氏名テーブルの編集の内容（編集内容）を表す編集履歴情報を含むデータからなるレコードを、第２のデータベースＤＢ２内の編集履歴テーブルに新たに追加する処理（追加処理）を上記トランザクション処理の少なくとも一部として行う（ステップ３２０）。
【００９６】
そして、ＣＰＵは、上記ステップ３１０にて行われた社員氏名テーブルの編集が、編集履歴情報に基づいて行われたか否かを判定する（ステップ３２５）。上記仮定に従えば、ＣＰＵは、「Ｙｅｓ」と判定してステップ３３５に進み、上記トランザクション処理にて編集履歴テーブルに追加されたレコードを編集履歴テーブルから削除する処理を当該トランザクション処理の一部として行う。
【００９７】
次いで、ＣＰＵは、ステップ３３０にてコミット処理を実行する。この結果、上記ステップ３１０にて行われた社員氏名テーブルの編集内容を表す編集履歴情報を含むデータからなるレコードは、編集履歴テーブルに追加されない。
【００９８】
即ち、第２のデータベースＤＢ２内の社員氏名テーブルの編集が編集履歴情報に基づいて行われた場合には、その編集内容を表す編集履歴情報は、第２の記憶装置に記憶されない。従って、第２のデータベースＤＢ２内の社員氏名テーブルの編集が編集履歴情報に基づいて行われた場合には、その編集内容を表す編集履歴情報は、第１のデータベースサーバ２０へ送信されない。
【００９９】
そして、ＣＰＵは、ステップ３０５へ戻り、上述したステップ３０５〜ステップ３３５の処理を繰り返し実行する。
【０１００】
また、同様に、第２のデータベースサーバ３０のＣＰＵは、送信周期が経過する毎に、図４にフローチャートにより示した編集履歴情報送信プログラムを繰り返し実行するようになっている。
【０１０１】
即ち、第２のデータベースサーバ３０のＣＰＵは、第２のデータベースＤＢ２に含まれる編集履歴テーブル（図６の（Ｂ））内のすべてのレコードを編集履歴情報として取得し（ステップ４０５）、取得した編集履歴情報を第１のデータベースサーバ２０へ送信する（ステップ４１０）。更に、ＣＰＵは、編集履歴テーブル内のレコードのうちの、送信したレコードを編集履歴テーブルから削除する（ステップ４１５）。
【０１０２】
これにより、第１のデータベースサーバ２０は、第２のデータベースサーバ３０から編集履歴情報を受信する。そして、第２のデータベースサーバ３０と同様に、第１のデータベースサーバ２０のＣＰＵは、受信された編集履歴情報に基づいて第１のデータベースＤＢ１に含まれる社員氏名テーブルを編集する。具体的には、ＣＰＵは、編集履歴情報に含まれる３つのレコード（図６の（Ｂ））に基づいて、社員番号が「Ｂ００００１」〜「Ｂ００００３」の３つのレコードを第１のデータベースＤＢ１に含まれる社員氏名テーブルに追加する。
【０１０３】
この結果、第１のデータベースＤＢ１に含まれる社員氏名テーブルの状態は、図７に示したように、社員番号が「Ａ００００１」〜「Ａ００００３」の３つのレコード、及び、社員番号が「Ｂ００００１」〜「Ｂ００００３」の３つのレコード、を含んだ状態となる。
【０１０４】
更に、第１のデータベースサーバ２０のＣＰＵは、ステップ３１５〜ステップ３３５の処理を実行する。この結果、上記ステップ３１０にて行われた社員氏名テーブルの編集内容を表す編集履歴情報を含むデータからなるレコードは、編集履歴テーブルに追加されない。
【０１０５】
即ち、第１のデータベースＤＢ１内の社員氏名テーブルの編集が編集履歴情報に基づいて行われた場合には、その編集内容を表す編集履歴情報は、第１の記憶装置に記憶されない。従って、第１のデータベースＤＢ１内の社員氏名テーブルの編集が編集履歴情報に基づいて行われた場合には、その編集内容を表す編集履歴情報は、第２のデータベースサーバ３０へ送信されない。
【０１０６】
以上においては、編集情報が、社員氏名テーブルにレコードを新たに追加する旨を表す情報である場合の情報処理システム１の作動について説明したが、編集情報が社員氏名テーブル内のレコードを変更（更新）する旨を表す情報である場合、及び、編集情報が社員氏名テーブルからレコードを削除する旨を表す情報である場合、の情報処理システム１の作動についても同様に説明される。
【０１０７】
例えば、第１のデータベースサーバ２０が、社員番号が「Ａ００００１」であるレコードの氏を「佐藤」から「高木」に変更（更新）する旨を表す編集情報を受け付けた場合、第１のデータベースサーバ２０は、第１のデータベースＤＢ１内の社員氏名テーブルを図８の（Ａ）に示したように編集するとともに、第１のデータベースＤＢ１内の編集履歴テーブルに、図８の（Ｂ）に示したように新たにレコードを追加する。なお、このレコードは、変更（更新（ＵＰＤＡＴＥ））を表す「Ｕ」を、編集種別を表すデータとして含む。
【０１０８】
そして、第１のデータベースサーバ２０は、そのレコードを表す編集履歴情報を第２のデータベースサーバ３０へ送信し、そのレコードを第１のデータベースＤＢ１内の編集履歴テーブルから削除する。
【０１０９】
一方、第２のデータベースサーバ３０は、第１のデータベースサーバ２０から編集履歴情報を受信すると、その編集履歴情報に基づいて第２のデータベースＤＢ２内の社員氏名テーブルを編集する。なお、第２のデータベースサーバ３０は、その編集の内容を表す編集履歴情報を表すレコードを第２のデータベースＤＢ２内の編集履歴テーブルに追加しない。
【０１１０】
同様に、第２のデータベースサーバ３０が、社員番号が「Ｂ００００３」であるレコードを第２のデータベースＤＢ２内の社員氏名テーブルから削除する旨を表す編集情報を受け付けた場合、第２のデータベースサーバ３０は、第２のデータベースＤＢ２内の社員氏名テーブルを図９の（Ａ）に示したように編集するとともに、第２のデータベースＤＢ２内の編集履歴テーブルに、図９の（Ｂ）に示したように新たにレコードを追加する。なお、このレコードは、削除（ＤＥＬＥＴＥ）を表す「Ｄ」を、編集種別を表すデータとして含む。
【０１１１】
そして、第２のデータベースサーバ３０は、そのレコードを表す編集履歴情報を第１のデータベースサーバ２０へ送信し、そのレコードを第２のデータベースＤＢ２内の編集履歴テーブルから削除する。
【０１１２】
一方、第１のデータベースサーバ２０は、第２のデータベースサーバ３０から編集履歴情報を受信すると、その編集履歴情報に基づいて第１のデータベースＤＢ１内の社員氏名テーブルを編集する。なお、第１のデータベースサーバ２０は、その編集の内容を表す編集履歴情報を表すレコードを第１のデータベースＤＢ１内の編集履歴テーブルに追加しない。
【０１１３】
以上、説明したように、本発明による情報処理システム１の実施形態によれば、第１のデータベースサーバ２０は、受け付けた編集情報に基づいて第１のデータベースＤＢ１を編集した場合にその編集内容を表す編集履歴情報を他の情報処理装置（本例では、第２のデータベースサーバ３０）へ送信し、一方、受信された編集履歴情報に基づいて第１のデータベースＤＢ１を編集した場合にその編集内容を表す編集履歴情報を第２のデータベースサーバ３０へ送信しない。
【０１１４】
これにより、第１のデータベースサーバ２０が、第２のデータベースサーバ３０から受信した編集履歴情報が表す編集内容と同一の編集内容を表す編集履歴情報を第２のデータベースサーバ３０へ送信することを防止することができる。この結果、第２のデータベースサーバ３０が、既に編集を行った内容と同一の内容にて再び第２のデータベースＤＢ２を編集することを防止することができる。
【０１１５】
同様に、第２のデータベースサーバ３０は、受け付けた編集情報に基づいて第２のデータベースＤＢ２を編集した場合にその編集内容を表す編集履歴情報を他の情報処理装置（本例では、第１のデータベースサーバ２０）へ送信し、一方、受信された編集履歴情報に基づいて第２のデータベースＤＢ２を編集した場合にその編集内容を表す編集履歴情報を第１のデータベースサーバ２０へ送信しない。
【０１１６】
これにより、第２のデータベースサーバ３０が、第１のデータベースサーバ２０から受信した編集履歴情報が表す編集内容と同一の編集内容を表す編集履歴情報を第１のデータベースサーバ２０へ送信することを防止することができる。この結果、第１のデータベースサーバ２０が、既に編集を行った内容と同一の内容にて再び第１のデータベースＤＢ１を編集することを防止することができる。
【０１１７】
従って、第１のデータベースサーバ２０が第２のデータベースサーバ３０との間で、データベースの編集内容を互いに反映し合うことを正常に行うことができる。
【０１１８】
ところで、第１のデータベースサーバ２０が、編集履歴情報を含むデータ（レコード）を第１のデータベースＤＢ１に追加する処理を行うことにより、その処理の実行結果を直ちに第１のデータベースＤＢ１に反映させるように構成されている場合、上記レコードを追加する処理（追加処理）を行った後にそのレコードを削除する処理（削除処理）を行った場合であっても、削除処理の実行までの間に削除されるべきレコードに含まれる編集履歴情報が第２のデータベースサーバ３０に送信されてしまう虞がある。
【０１１９】
これに対し、上記実施形態によれば、第１のデータベースサーバ２０が追加したレコードを削除する場合には、削除処理を行った後に、追加処理及び削除処理の実行結果が第１のデータベースＤＢ１に反映される。これにより、削除されるべきレコードに含まれる編集履歴情報が第２のデータベースサーバ３０に送信されることを確実に防止することができる。
【０１２０】
同様に、上記実施形態によれば、第２のデータベースサーバ３０が追加したレコードを削除する場合には、削除処理を行った後に、追加処理及び削除処理の実行結果が第２のデータベースＤＢ２に反映される。これにより、削除されるべきレコードに含まれる編集履歴情報が第１のデータベースサーバ２０に送信されることを確実に防止することができる。
【０１２１】
更に、上記実施形態においては、第１のデータベースサーバ２０（又は、第２のデータベースサーバ３０）は、第１の記憶装置（又は、第２の記憶装置）に記憶されている編集履歴情報のうちの、第２のデータベースサーバ３０（又は、第１のデータベースサーバ２０）へ送信された編集履歴情報を第１の記憶装置（又は、第２の記憶装置）から削除するように構成されている。これによれば、第２のデータベースサーバ３０（又は、第１のデータベースサーバ２０）へ一度送信された編集履歴情報が、再度送信されることを確実に防止することができる。
【０１２２】
＜第１変形例＞
次に、本発明の実施形態の第１変形例に係る情報処理システムについて説明する。第１変形例に係る情報処理システムは、上記実施形態に係る情報処理システムに対して、データベース編集部によるデータベースの編集が編集履歴情報に基づいて行われた場合に、削除処理及びコミット処理の実行に代えて、トランザクション処理の実行結果をデータベースに反映させないロールバック処理を実行する点において相違している。従って、以下、かかる相違点を中心として説明する。
【０１２３】
この第１変形例に係る第１のデータベースサーバ２０のＣＰＵは、図３にフローチャートにより示したデータベース編集プログラムに代えて、図１０にフローチャートにより示したデータベース編集プログラムを実行する。このデータベース編集プログラムは、図３のステップ３３０及びステップ３３５の処理に代わる、ステップ１００５及びステップ１０１０の処理を含む。
【０１２４】
このデータベース編集プログラムを実行するＣＰＵがステップ３２５に進んだとき、ＣＰＵは、ステップ３１０にて行われた社員氏名テーブルの編集が、編集履歴情報に基づいて行われたか否かを判定する。
【０１２５】
そして、ステップ３１０にて行われた社員氏名テーブルの編集が、編集履歴情報に基づいて行われた場合、ＣＰＵは、「Ｙｅｓ」と判定してステップ１００５に進み、ロールバック処理を実行する。ロールバック処理は、トランザクション処理の実行結果をデータベースに反映させることなく破棄する処理である。なお、ロールバック処理は、アボート処理と呼ばれてもよい。これにより、追加処理の実行結果は、第１のデータベースＤＢ１に反映されない。
【０１２６】
一方、ステップ３１０にて行われた社員氏名テーブルの編集が、編集情報に基づいて行われた場合、ＣＰＵは、「Ｎｏ」と判定してステップ１０１０に進み、コミット処理を実行する。これにより、追加処理の実行結果が第１のデータベースＤＢ１に反映される。
【０１２７】
同様に、第２のデータベースサーバ３０のＣＰＵも、図３にフローチャートにより示したデータベース編集プログラムに代えて、図１０にフローチャートにより示したデータベース編集プログラムを実行する。
【０１２８】
この第１変形例によっても、上記実施形態と同様の作用及び効果を奏することができる。更に、上記第１変形例によれば、第１のデータベースサーバ２０（又は、第２のデータベースサーバ３０）は、第１のデータベースＤＢ１（又は、第２のデータベースＤＢ２）の編集が編集履歴情報に基づいて行われた場合、追加処理の実行結果を第１のデータベースＤＢ１（又は、第２のデータベースＤＢ２）に反映することなく破棄する。これにより、削除されるべきデータ（レコード）に含まれる編集履歴情報が第２のデータベースサーバ３０（又は、第１のデータベースサーバ２０）に送信されることを確実に防止することができる。
【０１２９】
＜第２変形例＞
次に、本発明の実施形態の第２変形例に係る情報処理システムについて説明する。第２変形例に係る情報処理システムは、上記実施形態に係る情報処理システムに対して、編集履歴情報を含むレコードを編集履歴テーブルに追加する処理を行うことにより、その処理の実行結果を直ちにデータベースに反映させるように構成されている点において相違している。従って、以下、かかる相違点を中心として説明する。
【０１３０】
この第２変形例に係る第１のデータベースサーバ２０のＣＰＵは、図３にフローチャートにより示したデータベース編集プログラムに代えて、図１１にフローチャートにより示したデータベース編集プログラムを実行する。このデータベース編集プログラムは、図３のステップ３１５及びステップ３３０を含まない。
【０１３１】
このデータベース編集プログラムを実行するＣＰＵがステップ３２０に進んだとき、ＣＰＵは、ステップ３１０にて行われた社員氏名テーブルの編集の内容（編集内容）を表す編集履歴情報を含むデータからなるレコードを、編集履歴テーブルに新たに追加する（ステップ３２０）。
【０１３２】
そして、ＣＰＵは、ステップ３１０にて行われた社員氏名テーブルの編集が、編集履歴情報に基づいて行われたか否かを判定する（ステップ３２５）。次いで、ステップ３１０にて行われた社員氏名テーブルの編集が、編集履歴情報に基づいて行われた場合、ＣＰＵは、「Ｙｅｓ」と判定してステップ３３５に進み、上記ステップ３２０にて編集履歴テーブルに追加されたレコードを編集履歴テーブルから削除する。そして、ＣＰＵは、ステップ３０５に戻る。
【０１３３】
一方、ステップ３１０にて行われた社員氏名テーブルの編集が、編集情報に基づいて行われた場合、ＣＰＵは、ステップ３２５にて「Ｎｏ」と判定して、追加されたレコードを編集履歴テーブルから削除することなく、ステップ３０５に戻る。
【０１３４】
この第２変形例によっても、上記実施形態と同様の作用及び効果を奏することができる。
【０１３５】
なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。
【０１３６】
例えば、上記実施形態の他の変形例において、図１２に示したように、データベースサーバ（情報処理装置）１００の機能は、データベース構築部１０１と、編集情報受付部１０２と、編集履歴情報受信部１０３と、データベース編集部１０４と、編集履歴情報送信部１０５と、を含む。
【０１３７】
データベース構築部１０１は、少なくとも１つのデータを記憶装置に記憶させることにより当該記憶されたデータからなるデータベース（第１のデータベース）ＤＢを構築する。
編集情報受付部１０２は、データベースＤＢを編集するための編集情報を受け付ける。
編集履歴情報受信部１０３は、他の情報処理装置（例えば、データベースサーバ）により構築されたデータベース（第２のデータベース）の編集内容を表す編集履歴情報を当該情報処理装置から受信する。
【０１３８】
データベース編集部１０４は、編集情報受付部１０２により受け付けられた編集情報に基づいて第１のデータベースＤＢを編集する。更に、データベース編集部１０４は、編集履歴情報受信部１０３により受信された編集履歴情報に基づいてデータベースＤＢを編集する。
【０１３９】
編集履歴情報送信部１０５は、データベース編集部１０４によるデータベースＤＢの編集が編集情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信する。一方、編集履歴情報送信部１０５は、データベース編集部１０４によるデータベースＤＢの編集が編集履歴情報に基づいて行われた場合に、その編集内容を表す編集履歴情報を他の情報処理装置へ送信しない。
【０１４０】
これによれば、情報処理装置１００が、他の情報処理装置から受信した編集履歴情報が表す編集内容と同一の編集内容を表す編集履歴情報をその情報処理装置へ送信することを防止することができる。この結果、他の情報処理装置が、既に編集を行った内容と同一の内容にて再び第２のデータベースを編集することを防止することができる。従って、情報処理装置１００が他の情報処理装置との間で、データベースの編集内容を互いに反映し合うことを正常に行うことができる。
【０１４１】
また、上記実施形態においては、管理サーバ１０が複製対象特定情報を記憶し、第１のデータベースサーバ２０及び第２のデータベースサーバ３０が管理サーバ１０から複製対象特定情報を取得するように構成されていたが、第１のデータベースサーバ２０及び第２のデータベースサーバ３０のそれぞれが複製対象特定情報を予め記憶するように構成されていてもよい。この場合、情報処理システム１は、管理サーバ１０を含まないことが好適である。
【０１４２】
更に、上記実施形態においては、編集履歴情報は、データベース内のテーブルにレコードとして追加されることにより記憶装置に記憶されるように構成されていたが、データベースを用いることなく記憶装置に記憶されるように構成されていてもよい。
【０１４３】
また、上記実施形態においては、情報処理システム１は、２つのデータベースサーバを含むように構成されていたが、３つ以上のデータベースサーバを含むように構成されていてもよい。この場合、データベースサーバは、自サーバ以外のすべてのデータベースサーバへ編集履歴情報を送信した後にその編集履歴情報を記憶装置から削除するように構成されることが好適である。
【０１４４】
また、上記実施形態の他の変形例として、上述した実施形態及び変形例の任意の組み合わせが採用されてもよい。
【産業上の利用可能性】
【０１４５】
本発明は、データベースを互いに反映し合う複数のデータベースサーバを含む情報処理システム等に適用可能である。
【図面の簡単な説明】
【０１４６】
【図１】本発明の第１実施形態に係る情報処理システムの概略構成を表す図である。
【図２】図１に示した情報処理システムの機能の概略を表すブロック図である。
【図３】図１に示した第１のデータベースサーバのＣＰＵ及び第２のデータベースサーバのＣＰＵのそれぞれが実行するデータベース編集プログラムを示したフローチャートである。
【図４】図１に示した第１のデータベースサーバのＣＰＵ及び第２のデータベースサーバのＣＰＵのそれぞれが実行する編集履歴情報送信プログラムを示したフローチャートである。
【図５】第１のデータベース内の社員氏名テーブル、及び、第２のデータベース内の社員氏名テーブルを示した図である。
【図６】第１のデータベース内の編集履歴テーブル、及び、第２のデータベース内の編集履歴テーブルを示した図である。
【図７】第１のデータベース内の社員氏名テーブル、及び、第２のデータベース内の社員氏名テーブルを示した図である。
【図８】第１のデータベース内の社員氏名テーブル及び編集履歴テーブルを示した図である。
【図９】第２のデータベース内の社員氏名テーブル及び編集履歴テーブルを示した図である。
【図１０】本発明の実施形態の第１変形例に係る、第１のデータベースサーバのＣＰＵ及び第２のデータベースサーバのＣＰＵのそれぞれが実行するデータベース編集プログラムを示したフローチャートである。
【図１１】本発明の実施形態の第２変形例に係る、第１のデータベースサーバのＣＰＵ及び第２のデータベースサーバのＣＰＵのそれぞれが実行するデータベース編集プログラムを示したフローチャートである。
【図１２】本発明の他の変形例に係る情報処理装置の機能の概略を表すブロック図である。
【符号の説明】
【０１４７】
１      情報処理システム
１０    管理サーバ
２０    第１のデータベースサーバ（第１の情報処理装置）
３０    第２のデータベースサーバ（第２の情報処理装置）
４１    複製対象特定情報記憶部
４２    複製対象特定情報送信部
５１    第１のデータベース構築部
５２    第１の編集情報受付部
５３    第１の編集履歴情報受信部
５４    第１のデータベース編集部
５５    第１の編集履歴情報記憶処理部
５６    第１の編集履歴情報送信部
５７    第１の編集履歴情報削除部
６１    第２のデータベース構築部
６２    第２の編集情報受付部
６３    第２の編集履歴情報受信部
６４    第２のデータベース編集部
６５    第２の編集履歴情報記憶処理部
６６    第２の編集履歴情報送信部
６７    第２の編集履歴情報削除部
１００  データベースサーバ（情報処理装置）
１０１  データベース構築部
１０２  編集情報受付部
１０３  編集履歴情報受信部
１０４  データベース編集部
１０５  編集履歴情報送信部
ＤＢ    データベース
ＤＢ１  第１のデータベース
ＤＢ２  第２のデータベース
【図１】
2010079617.tif 000003
【図２】
2010079617.tif 000004
【図３】
2010079617.tif 000005
【図４】
2010079617.tif 000006
【図５】
2010079617.tif 000007
【図６】
2010079617.tif 000008
【図７】
2010079617.tif 000009
【図８】
2010079617.tif 000010
【図９】
2010079617.tif 000011
【図１０】
2010079617.tif 000012
【図１１】
2010079617.tif 000013
【図１２】
2010079617.tif 000014