(57)【要約】【課題】レコードデータをコピー元からコピー先へ複写した際に、特別な操作を行うことなく、そのコピー対象となったレコードに対するアクセスを確実に制限できるようにする。【解決手段】コピー実行モジュール２によって、データベース６内のレコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピーレコードであることを示すコピー識別情報を管理表７内に登録される。この状態において、コピー先内のレコードに対して更新が要求された際に、コピーレコード判断モジュール４は、管理表７を参照して、当該更新対象レコードがコピーレコードであるか否かを判断する。その結果、更新処理実行モジュール３は、コピーレコードであれば、当該レコードに対する更新を制限するが、コピーレコードでなければ、当該レコードに対する更新処理を実行する。【選択図】　図１
2004094297.tif 000002
【特許請求の範囲】
【請求項１】
レコードデータをコピー元からコピー先へ複写するレコード処理装置において、
レコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピー対象となったことを示すコピー識別情報を登録する識別情報登録手段と、
レコードデータがアクセスされた際に、前記登録されているコピー識別情報を参照し、当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する判別手段と、
この判別手段によってアクセスレコードがコピー対象となったレコードであることが判別された場合に、当該レコードに対するアクセスを制限するアクセス制限手段と、
を具備したことを特徴とするレコード処理装置。
【請求項２】
レコードデータがコピー元からコピー先へ複写される毎に、前記識別情報登録手段は、そのレコードがコピー対象となったことを示すコピー識別情報を当該レコードデータとは別個に記憶管理する管理表内に登録し、
前記判別手段は、レコードデータがアクセスされた際に、前記管理表を参照して、当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する、
ようにしたことを特徴とする請求項１記載のレコード処理装置。
【請求項３】
レコードデータがコピー元からコピー先へ複写される毎に、前記識別情報登録手段は、そのレコードがコピー対象となったことを示すコピー識別情報を当該レコードデータ内に追加登録し、
前記判別手段は、レコードデータがアクセスされた際に、そのレコード内に前記コピー識別情報が登録されているか否かに基づいて当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する、
ようにしたことを特徴とする請求項１記載のレコード処理装置。
【請求項４】
レコードデータがコピー元からコピー先へ複写された際に、レコードアクセスの制限を解除する条件情報を登録する解除条件登録手段を設け、
前記判別手段は、レコードデータがアクセスされた際に、前記登録されている解除条件を参照し、当該解除条件に合致するか否かを判別し、
前記アクセス制限手段は、アクセスレコードがコピー対象となったレコードであることが判別された場合でも、前記解除条件に合致する場合には、そのレコードに対するアクセスを許可する、
ようにしたことを特徴とする請求項１記載のレコード処理装置。
【請求項５】
前記解除条件登録手段は、レコードアクセスの制限を解除するユーザ情報を解除条件として登録し、
前記判別手段は、レコードデータがアクセスされた際に、前記登録されているユーザ情報を参照し、当該アクセスユーザが登録ユーザであるか否かを判別し、前記アクセス制限手段は、アクセスレコードがコピー対象となったレコードであることが判別された場合でも、当該アクセスユーザが登録ユーザである場合には、そのレコードに対するアクセスを許可する、
ようにしたことを特徴とする請求項４記載のレコード処理装置。
【請求項６】
コンピュータに対して、
レコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピー対象となったことを示すコピー識別情報を登録する機能と、
前記コピー先あるいはコピー元内のレコードデータがアクセスされた際に、前記登録されているコピー識別情報を参照し、当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する機能と、
アクセスレコードがコピー対象となったレコードであることが判別された場合に、当該レコードに対するアクセスを制限する機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、レコードデータをコピー元からコピー先へ複写するレコード処理を行うレコード処理装置およびプログラムに関する。
【０００２】
【従来の技術】
従来、事務処理データベース、人事データベース等の各種のデータベースを管理するデータベース管理システム（ＤＢＭＳ）において、例えば、レコードデータ（行データ）のバックアップを目的として、コピー元表（テーブル）から目的とするレコードを取得して、一時的にコピー先である他の表（テーブル）へ複写するレコードコピーを行った場合には、バックアップデータが誤操作等によって破壊されないようにする為、アプリケーション側でそのバックアップレコードへの更新を制限する為の処理、例えば、ビューを作成する等の処理を行なうようにしていた。
【０００３】
例えば、人事／給与のデータベースにおいて、当月分のレコードを保存しておきながら翌月分の昇給、昇格の考課を行い、最終的に確認の為に当月分と翌月分のレコードデータを比較する場合に、当月分のテーブルをコピー元とし、このコピー元と同じ表定義を持つ新たなテーブルを作成して、これをコピー先のテーブルとした後に、コピー元テーブル内の各レコードをコピー先テーブルへ１レコードずつ複写挿入することによって、バックアップ用のコピーテーブルを作成するようにしている。
この場合、バックアップ用のコピー先テーブルをビューとする処理を行うことによって、コピー先テーブルへの更新を制限することができ、当月分の表（バックアップデータ）を誤操作から保護することが可能となる。
【０００４】
【発明が解決しようとする課題】
しかしながら、レコードコピーを行う毎に、そのバックアップレコードへの更新を制限する為に、ビューを作成する処理を行うことは、ユーザに対して面倒な操作を強要することになり、ユーザに大きな負担をかけるという欠点があった。この発明の課題は、レコードデータをコピー元からコピー先へ複写した際に、特別な操作を行うことなく、そのコピー対象となったレコードに対するアクセスを確実に制限できるようにすることである。
【０００５】
【課題を解決するための手段】
請求項１記載の発明は、レコードデータをコピー元からコピー先へ複写するレコード処理装置において、レコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピー対象となったことを示すコピー識別情報を登録する識別情報登録手段と、前記コピー先あるいはコピー元内のレコードデータがアクセスされた際に、前記登録されているコピー識別情報を参照し、当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する判別手段と、この判別手段によってアクセスレコードがコピー対象となったレコードであることが判別された場合に、当該レコードに対するアクセスを制限するアクセス制限手段とを具備するものである。
更に、コンピュータに対して、上述した請求項１記載の発明に示した主要機能を実現させるためのプログラムを提供する（請求項６記載の発明）。
【０００６】
したがって、請求項１、６記載の発明は、レコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピー対象となったことを示すコピー識別情報を登録しておき、レコードデータがアクセスされた際に、このコピー識別情報を参照することによって、当該アクセスレコードが過去にコピー対象となったレコードであることが判別された場合には、当該レコードに対するアクセスを制限するようにしたから、レコードデータをコピー元からコピー先へ複写した際に、特別な操作を行うことなく、そのレコードに対するアクセスを確実に制限する（更新／読出／削除等を禁止する）ことができ、従来のように、レコードコピーを行う毎に、そのレコードアクセスを制限する為の処理が不用となり、ユーザ負担を大幅に軽減することが可能となる。この場合、アクセスが制限されるレコードは、コピー先内のレコードかコピー元内のレコードかを問わず、そのいずれであってもカード対象（制限対象）とすることができる。
【０００７】
なお、請求項１記載の発明は次のようなものであってもよい。
レコードデータがコピー元からコピー先へ複写される毎に、前記識別情報登録手段は、そのレコードがコピー対象となったことを示すコピー識別情報を当該レコードデータとは別個に記憶管理する管理表内に登録し、前記判別手段は、レコードデータがアクセスされた際に、前記管理表を参照して、当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する（請求項２記載の発明）。
【０００８】
したがって、請求項２記載の発明によれば、請求項１記載の発明と同様の効果を有する他に、例えば、データベース管理システムにおいて、コピー元の表（テーブル）から目的レコード取得して、コピー先の表へ複写するレコードコピーが行われる毎に、そのレコードがコピー対象となったことを示すコピー識別情報を当該レコードデータとは別個に記憶管理する管理表内に登録するようにしたから、レコードのアクセス制限を特定のアプリケーションに限定せず、全てのアプリケーションに対しても有効に機能させることが可能となる。
【０００９】
レコードデータがコピー元からコピー先へ複写される毎に、前記識別情報登録手段は、そのレコードがコピー対象となったことを示すコピー識別情報を当該レコードデータ内に追加登録し、前記判別手段は、レコードデータがアクセスされた際に、そのレコード内に前記コピー識別情報が登録されているか否かに基づいて当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する（請求項３記載の発明）。
【００１０】
したがって、請求項３記載の発明によれば、請求項１記載の発明と同様の効果を有する他に、レコード内にそのレコードがコピー対象となったことを示すコピー識別情報を組み込むようにしたから、対象レコードとの対応関係を明確にすることができる。この場合、例えば、レコードの最後の列に擬似的な項目（擬似列）を設け、この擬似列に識別情報を登録するようにすれば、コピー識別情報として、そのレコードを指定する「行ＩＤ」を使用しないので、データベース管理システムの種類によって識別情報（例えば、行ＩＤ）の取り方が異なっている場合でも、それに依存されることはなく、過去にコピー対象となったレコードか否かを容易に判別することができる。更に、レコードのアクセス制限を特定のアプリケーションに限定せず、全てのアプリケーションに対しても有効に機能させることが可能となる。
【００１１】
レコードデータがコピー元からコピー先へ複写された際に、レコードアクセスの制限を解除する条件情報を登録する解除条件登録手段を設け、前記判別手段は、レコードデータがアクセスされた際に、前記登録されている解除条件を参照し、当該解除条件に合致するか否かを判別し、前記アクセス制限手段は、アクセスレコードがコピー対象となったレコードであることが判別された場合でも、前記解除条件に合致する場合には、そのレコードに対するアクセスを許可する（請求項４記載の発明）。
【００１２】
したがって、請求項４記載の発明によれば、請求項１記載の発明と同様の効果を有する他に、レコードデータがコピー元からコピー先へ複写された際に、レコードアクセスの制限を解除する条件情報を登録し、レコードデータがアクセスされた際に、アクセスレコードがコピー対象となったレコードであっても、解除条件に合致する場合には、そのレコードに対するアクセスを許可するようにしたから、レコードアクセスに対する制限を実際の運用に即したものとすることができ、例えば、有効期間付きガードとすることも可能となり、必要に応じてレコードガードを解除することが可能となる。
【００１３】
前記解除条件登録手段は、レコードアクセスの制限を解除するユーザ情報を解除条件として登録し、前記判別手段は、レコードデータがアクセスされた際に、前記登録されているユーザ情報を参照し、当該アクセスユーザが登録ユーザであるか否かを判別し、前記アクセス制限手段は、アクセスレコードがコピー対象となったレコードであることが判別された場合でも、当該アクセスユーザが登録ユーザである場合には、そのレコードに対するアクセスを許可する（請求項５記載の発明）。
【００１４】
したがって、請求項５記載の発明によれば、請求項１、４記載の発明と同様の効果を有する他に、レコードのアクセス制限として、ユーザ制限も含めるようにしたから、例えば、レコードコピーを行ったユーザがそのレコードをアクセスした場合あるいは特定権限を有するユーザがレコードをアクセスした場合には、そのレコードガードを解除することができる。
【０００１５】
【発明の実施の形態】
（第１実施形態）
以下、図１〜図９を参照してこの発明の第１実施形態を説明する。
図１は、この実施形態におけるレコード処理装置が実行する各機能を示した機能ブロック図である。
レコード処理装置は、データベース管理システム（ＤＢＭＳ）において、コピー元の表（テーブル）から目的とするレコード（行データ）を取得して、コピー先である他の表（テーブル）へ複写するレコードコピーを行うものであり、このレコード処理装置が実行する各種の処理機能として、レコード処理装置には、コマンド解析モジュール１、コピー実行モジュール２、更新処理実行モジュール３、コピーレコード判断モジュール４、全体制御モジュール５が設けられており、全体制御モジュール５の管理下で、他の各種モジュール１〜４が動作する。
なお、レコード処理装置には、その他の各種処理モジュールも存在するが、この実施形態に直接関係しない為、図１においては、それらを図示省略している。
【００１６】
コマンド解析モジュール１は、入力された操作コマンドがコピー処理の実行を指示するコマンドか、レコード更新系の処理の実行を指示するコマンドか、その他の処理の実行を指示するコマンドかを解析する処理モジュールである。
コピー実行モジュール２は、事務処理データベース、人事データベース等を管理するデータベース６内のコピー元の表から目的とするレコードを取得してコピー先である他の表へ複写するレコードコピーを行うと共に、レコードコピーを行った際に、そのレコードがコピー対象となったことを示すコピー識別情報（行ＩＤを含むレコード識別情報）を生成して、後述する管理表７内に登録するようにした本実施形態特有の処理を行う処理モジュールである。
【００１７】
更新処理実行モジュール３は、データベース６内の表内レコードがアクセスされた際に、指定された更新内容に基づいて該当レコードを更新する更新処理（変更／削除／挿入）を行う処理モジュールであり、このレコード更新処理の実行に先だって、更新処理実行モジュール３は、コピーレコード判断モジュール４を起動させる。
コピーレコード判断モジュール４は、レコードがアクセスされた際に、管理表７内に登録されているコピー識別情報を参照することによって、当該アクセスレコードが過去にコピー対象となったレコードか否かを判断する本実施形態特有の処理を行う判断処理モジュールである。
【００１８】
図２は、データベース６において、コピー元であるテーブル６１内のレコード内容と、コピー先であるテーブル６２内のレコード内容とを具体的に示した図である。
この場合、コピー元テーブル６１は、アメリカ本社用の人事テーブルであり、コピー先テーブル６２は、日本支社用の人事テーブルであり、アメリカから日本へ出向する社員に関するレコードを一時的にコピー元テーブル６１からコピー先テーブル６２へ複写した場合を示している。つまり、コピー元テーブル６１（アメリカ本社用のテーブル）において、その５行目の社員レコードをコピー先テーブル６２（日本支社用のテーブル）の５行目にコピーした場合を示している。
【００１９】
図３は、図２で示したレコードコピーが行われた際に、そのレコードがコピー対象となったことを示すコピー識別情報を記憶管理する管理表７の内容を具体的に示した図であり、コピー実行モジュール２は、レコードコピーと共に、コピー識別情報を管理表７内に登録する。
この管理表７は、レコードコピーが行われる毎に、当該レコードに対応して、そのレコードの格納先を示す「データベース名」、「表名称」、「行ＩＤ」の各項目（列）を有する構成となっている。
いま、図２で示したレコードコピーが行われた場合であるから、管理表７内には、「データベース名」が“日本支社”、「表名称」が“社員情報”、「行ＩＤ」が“５”からなるコピー識別情報が格納される。
【００２０】
この場合、コピー先テーブル６２（日本支社用のテーブル）において、その５行目のレコードに対する更新が指示された際に、コピーレコード判断モジュール４は、管理表７を参照して当該レコードが過去にコピー対象となったレコードかの判断を行う。この場合、管理表７内には、コピーされたレコードを識別するコピー識別情報が格納されており、このコピー識別情報を参照することによって、更新が指示されたレコードがコピーレコードであるか否かの判断を行う。いま、コピーされたレコードであることが判別される為、このコピーレコード判断モジュール４による判別結果を受けて、更新処理実行モジュール３は、当該レコードに対する更新処理（変更／削除／挿入）を制限（禁止）するようにしている。
【００２１】
図４は、レコード処理装置の基本的構成要素を示したブロック図である。
ＣＰＵ１１は、記憶装置１２内のオペレーティングシステムや各種アプリケーションソフトにしたがってこのレコード処理装置の全体動作を制御する中央演算処理装置である。記憶装置１２は、プログラム記憶領域とデータ記憶領域とを有し、このプログラム記憶領域内には、オペレーティングシステムの他に、上述したコマンド解析モジュール１、コピー実行モジュール２、更新処理実行モジュール３、コピーレコード判断モジュール４、全体制御モジュール５等の各種アプリケーションプログラムが格納され、また、データ記憶領域には、上述したデータベース６、管理表７等が格納され、磁気的、光学的、半導体メモリ等やその駆動系によって構成されている。この記録装置１２はハードディスク等の固定的なメモリの他、ＣＤ−ＲＯＭ、ＤＶＤ等の着脱自在な記憶媒体を装着可能な構成であってもよい。この記憶装置１２内のプログラムやデータは、必要に応じてＲＡＭ（例えば、スタティックＲＡＭ）１３にロードされたり、ＲＡＭ１３内のデータが記憶装置１２にセーブされる。なお、ＲＡＭ１３内には、プログラム実行領域と作業領域とを有している。
【００２２】
更に、ＣＰＵ１１は通信装置４を介して他の電子機器側のプログラム／データを直接アクセスして使用したり、通信装置１４を介してダウンロード受信することもできる。通信装置１４は、例えば、通信モデムや赤外線モジュールあるいはアンテナ等を含む有線／無線の通信インターフェイスである。
一方、ＣＰＵ１１にはその入出力周辺デバイスである入力装置１５、表示装置１６がバスラインを介して接続されており、入出力プログラムにしたがってＣＰＵ１１はそれらの動作を制御する。入力装置１５はキーボードやタッチパネルあるいはマウスやタッチ入力ペン等のポインティングデバイスを構成する操作部であり、文字列データや各種コマンドを入力する。
【００２３】
次に、この第１実施形態におけるレコード処理装置の動作アルゴリズムを図５〜図９に示すフローチャートを参照して説明する。ここで、これらのフローチャートに記述されている各機能は、読み取り可能なプログラムコードの形態で格納されており、このプログラムコードにしたがった動作を逐次実行する。また、伝送媒体を介して伝送されてきた上述のプログラムコードにしたがった動作を逐次実行することもできる。このことは後述する他の実施形態においても同様であり、記録媒体の他、伝送媒体を介して外部供給されたプログラム／データを利用してこの実施形態特有の動作を実行することもできる。
【００２４】
図５は、全体制御モジュール５の動作を示したフローチャートである。
この全体制御モジュール５は電源投入に伴って実行開始され、先ず、コマンド解析モジュール１を起動させて入力コマンドの解析を行わせる（ステップＡ１）。そして、コマンド解析モジュール１から解析結果を取得してコピー処理が指示されたか（ステップＡ２）、更新系処理が指示されたかを判別する（ステップＡ３）。いま、コピー処理が指示された場合には、コピー実行モジュール２を起動させ（ステップＡ４）、更新系処理が指示された場合には、更新処理実行モジュール３を起動させ（ステップＡ５）、その他の処理が指示された場合には、他の通常の処理モジュール（図示せず）を起動させる（ステップＡ６）。
【００２５】
図６は、コマンド解析モジュール１の動作を示したフローチャートである。
このコマンド解析モジュール１は、全体制御モジュール５からの指示にしたがって実行開始され、先ず、入力コマンドを取得すると（ステップＢ１）、入力コマンドが「ＵＰＤＡＴＥ（変更）」あるいは「ＤＥＬＥＴＥ（削除）」か否かを判別し（ステップＢ２）、「ＵＰＤＡＴＥ」あるいは「ＤＥＬＥＴＥ」であれば、更新系処理が指示されたと判断して、その解析結果を全体制御モジュール５へ回答する（ステップＢ３）。
【００２６】
また、入力コマンドが「ＵＰＤＡＴＥ」あるいは「ＤＥＬＥＴＥ」ではなければ、入力コマンドが「ＩＮＳＥＲＴ（挿入）」か否かを判別する（ステップＢ４）。いま、「ＩＮＳＥＲＴ」であれば、挿入する値が「ＳＥＬＥＣＴ文」内に含まれているかを判別し（ステップＢ５）、挿入する値が「ＳＥＬＥＣＴ文」内に含まれている場合には、コピー処理が指示されたと判断して、その解析結果を全体制御モジュール５へ回答する（ステップＢ６）。
更に、入力コマンドが「ＵＰＤＡＴＥ」、「ＤＥＬＥＴＥ」、「ＩＮＳＥＲＴ」でもない通常の「ＳＥＬＥＣＴ文」であれば、その他の処理が指示されたと判断して、その解析結果を全体制御モジュール５へ回答する（ステップＢ７）。
【００２７】
図７は、コピー実行モジュール２の動作を示したフローチャートである。
このコピー実行モジュール２は、全体制御モジュール５からの指示にしたがって実行開始される。この場合、図２および図３に示した具体例にしたがってコピー実行モジュール２の動作を説明するものとする。
いま、社員の出向に伴ってコピー元テーブル６１（アメリカ本社用のテーブル）からコピー先テーブル６２（日本支社用のテーブル）へ出向社員のレコードをコピーする場合、先ず、コピー実行モジュール２は、コピー元テーブル６１からコピー対象である１レコード分のレコードデータを取得して（ステップＣ１）、コピー先テーブル６２へ挿入コピーする（ステップＣ２）。この場合、図２に示すように、コピー元テーブル６１の５行目の社員レコードがコピー対象として指定され、当該レコードがコピー先テーブル６２の５行目にコピーされる。
【００２８】
このようにレコードコピーが行われると、コピー先テーブル６２からコピー先情報を取得する（ステップＣ３）。すなわち、図２に示すように、コピー先テーブル６２から「データベース名」が“日本支社”、「表名称」が“社員情報”、「行ＩＤ」が“５”からなるコピー先情報を取得する。そして、このコピー先情報を当該レコードがコピーされたデータであることを示す為のコピー識別情報として図３に示すように、管理表７内に追加登録する（ステップＣ４）。
これによって１レコード分のコピー処理が終了すると、コピー終了が入力指示されるまで（ステップＣ５）、１レコード毎に上述の動作が繰り返される結果、管理表７内には、コピーレコード数に相当するコピー先情報（識別情報）が登録される（ステップＣ１〜Ｃ４）。
【００２９】
図８は、更新処理実行モジュール３の動作を示したフローチャートであり、図９は、更新処理実行モジュール３からの指示にしたがって実行開始されるコピーレコード判断モジュール４の動作を示したフローチャートである。
この更新処理実行モジュール３は、全体制御モジュール５からの指示にしたがって実行開始される。先ず、コピーレコード判断モジュール４を起動させることによって（ステップＤ１）、更新対象として指定されたレコードは、コピーされたレコードかを判断させ、その判断結果をコピーレコード判断モジュール４から取得する（ステップＤ２）。
【００３０】
先ず、コピーレコード判断モジュール４が起動されると、更新対象として指定されたレコードの識別子を取得する（図９のステップＥ１）。つまり、更新対象として指定されたレコードに基づいてその格納場所である「データベース名」、「表名称」、「行ＩＤ」をレコード識別子として取得する。そして、このレコード識別子に基づいて管理表７を検索し（ステップＥ２）、更新対象に対応付けられている該当する識別情報の有無をチェックする（ステップＥ３）。ここで、該当する識別情報が管理表７内に登録されていれば（ステップＥ３でＹＥＳ）、更新対象として指定されたレコードは過去にコピーされたレコードである旨の回答を更新処理実行モジュール３へ行うが（ステップＥ４）、該当する識別情報が管理表７内に登録されていなければ（ステップＥ３でＮＯ）、コピーレコードでない旨の回答を更新処理実行モジュール３へ行う（ステップＥ５）。
【００３１】
ここで、更新処理実行モジュール３は、コピーレコード判断モジュール４からの判断結果を取得した後（図８のステップＤ２）、それがコピーレコードであるか否かを判別する（ステップＤ３）。いま、コピー先テーブル６２内の５行目に対して、その更新が要求された場合には、コピーレコードであると判別される為（ステップＤ３でＹＥＳ）、要求された更新処理を禁止する旨のエラー回答を全体制御モジュール５に対して行う（ステップＤ４）。
一方、コピーレコード判断モジュール４からの判断結果がコピーレコードでない場合には（ステップＤ３でＮＯ）、要求された更新処理を行う（ステップＤ４）。
【００３２】
以上のように、この第１実施形態においては、データベース６内のレコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピーレコードであることを示すコピー識別情報を管理表７内に登録しておき、コピー先内のレコードに対して更新要求された際に、管理表７を参照して、当該更新対象レコードがコピーレコードであることが判別された場合に、当該レコードに対する更新を制限するようにしたから、レコードデータを複写した際に、特別な操作を行うことなく、そのレコードに対する更新を確実に制限することができ、従来のように、レコードコピーを行う毎に、そのレコード更新を制限する為の処理が不用となり、ユーザ負担を大幅に軽減することが可能となる。
【００３３】
この場合、データベース６内のレコードデータがコピー元からコピー先へ複写される毎に、そのレコードがコピーレコードであることを示すコピー識別情報をレコードデータとは別個の管理表７内に登録するようにしたから、レコード制限を特定のアプリケーションに限定せず、全てのアプリケーションに対しても有効に機能させることが可能となる。
【００３４】
（第２実施形態）
以下、この発明の第２実施形態について図１０〜図１２を参照して説明する。なお、上述した第１実施形態は、レコードデータとは別個の管理表７を設けたが、この第２実施形態は、管理表７を設けずに、レコードの最後の列に擬似的な項目（擬似列）を設け、この擬似列にコピー識別情報を登録するようにしたものである。
ここで、両実施形態において基本的に同一のものは、同一符号を付して示し、その説明を省略する他、以下、第２実施形態の特徴部分を中心に説明するものとする。
【００３５】
図１０は、データベース６において、コピー元であるテーブル６１内のレコード内容と、コピー先であるテーブル６２内のレコード内容とを具体的に示した図であり、上述した図２と同様に、コピー元テーブル６１（アメリカ本社用のテーブル）の５行目の社員レコードをコピー先テーブル６２（日本支社用のテーブル）の５行目にコピーした場合を示している。
この場合、コピー元テーブル６１およびコピー先テーブル６２を構成する各レコードの最後の列には、擬似的な項目（擬似列）が追加されている。なお、データベース６を構成する全てのテーブル内の各レコードには、「擬似列」がそれぞれ設けられている。
【００３６】
このように各レコードの最後の列に設けた「擬似列」は、ユーザアクセスでは読み出すことができない項目、つまり、システム制御用の項目であり、この擬似列内には、コピーされたレコードか否かを識別する識別フラグがセットされる。この場合、識別フラグの初期値として、各レコードには“０”がセットされているが、コピーされたレコードに対応する擬似列内には、識別フラグとして“１”をセットするようにしている。
【００３７】
図１１は、この第２実施形態におけるコピー実行モジュール２の動作を示したフローチャートである。
このコピー実行モジュール２は、全体制御モジュール５からの指示にしたがって実行開始される。この場合、図１０に示した具体例にしたがってコピー実行モジュール２の動作を説明する。
いま、社員の出向に伴ってコピー元テーブル６１（アメリカ本社用のテーブル）からコピー先テーブル６２（日本支社用のテーブル）へ出向社員のレコードをコピーする場合には、先ず、コピー実行モジュール２は、コピー元テーブル６１から１レコード分のデータを取得して（ステップＦ１）、コピー先テーブル６２へ挿入コピーする（ステップＦ２）。
【００３８】
この場合、図１０に示すように、コピー元テーブル６１の５行目の社員レコードがコピー対象として指定され、当該レコードがコピー先テーブル６２の５行目にコピーされる。このようにレコードコピーが行われると、コピー先テーブル６２内にコピーされた該当レコードの擬似列内には、識別フラグとして“１”がセットされる（ステップＦ３）。
これによって１レコード分のコピー処理が終了すると、コピー終了が入力指示されるまで（ステップＦ４）、１レコード毎に上述の動作が繰り返される結果、コピー先テーブル６２内には、コピーレコードに対応して、その識別フラグとして　“１”がセットされる。
【００３９】
図１２は、この第２実施形態において、更新処理実行モジュール３からの指示にしたがって実行開始されるコピーレコード判断モジュール４の動作を示したフローチャートである。
先ず、コピーレコード判断モジュール４が起動されると、更新対象として指定されたレコード内から識別フラグを取得する（ステップＧ１）。そして、識別フラグが“１”か否かを判別する（ステップＧ２）。この場合、識別フラグが“０”であれば、更新対象として指定されたレコードは、コピーレコードでない旨の回答を更新処理実行モジュール３へ行うが（ステップＧ３）、識別フラグが“１”であれば、コピーレコードである旨の回答を更新処理実行モジュール３へ行う（ステップＧ４）。
【００４０】
これによって、更新処理実行モジュール３は、上述した図８に示したフローチャートにしたがった動作を行い、コピーレコード判断モジュール４からの判断結果を取得し、それがコピーレコードであるか否かを判別する。いま、コピー先テーブル６２内の５行目に対して、その更新が要求された場合には、コピーレコードであると判別される為、要求された更新処理を禁止する旨のエラー回答を全体制御モジュール５に対して行うが、コピーレコードでない場合には、要求された更新処理を行う。
【００４１】
以上のように、この第２実施形態においては、データベース６内のレコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピーレコードであることを示す識別フラグを当該レコード内の擬似列内にセットしておき、コピー先内のレコードに対して更新要求された際に、その擬似列内の識別フラグを参照し、当該更新対象レコードがコピーレコードであれば、そのレコードに対する更新を制限するようにしたから、上述した第１実施形態と同様に、レコードデータを複写した際に、特別な操作を行うことなく、そのレコードに対する更新を確実に制限することができる。
【００４２】
この場合、レコード内にそのレコードがコピー対象となったことを示す識別フラグを組み込むようにしたから、対象レコードとの対応関係が明確となる他、識別情報として、そのレコードを指定する「行ＩＤ」を使用しないので、データベース管理システムの種類によって識別情報（例えば、行ＩＤ）の取り方が異なっている場合でも、それに依存されることはなく、過去にコピー対象となったレコードか否かを容易に判別することができる。更に、レコードのアクセス制限を特定のアプリケーションに限定せず、全てのアプリケーションに対しても有効に機能させることが可能となる。
【００４３】
なお、上述した第２実施形態においては、コピー元テーブル６１およびコピー先テーブル６２を構成する各レコードの最後の列を擬似列として、コピーされたレコードか否かを識別する識別フラグをセットするようにしたが、各レコードの構成を変更せずに、レコードを構成する任意の列、例えば、「行ＩＤ」を格納する列内に、コピーされたレコードか否かを識別する識別フラグを付加するようにしてもよい。
【００４４】
（第３実施形態）
以下、この発明の第３実施形態について図１３および図１４を参照して説明する。なお、上述した第１あよび第２実施形態においては、コピーレコードに対する更新を制限する場合のみ示したが、この第３実施形態は、ユーザ制限を追加したものである。つまり、更新処理を要求したユーザとコピー操作を行ったユーザとを比較し、同一のユーザである場合を条件として、当該ユーザが指定した更新処理の実行を許可するようにしたものである。
ここで、両実施形態において基本的に同一のものは、同一符号を付して示し、その説明は省略するものとする。
【００４５】
図１３は、図２で示したレコードコピーが行われた際において、第３実施形態における管理表７の内容を具体的に示した図である。
この場合、上述した第１実施形態の管理表７内に登録されるコピー識別情報内に、レコードコピーを行ったユーザ名を、アクセスを許可するユーザとして追加した構成となっている。すなわち、コピー元テーブル６１（アメリカ本社用のテーブル）の５行目の社員レコードをコピー先テーブル６２（日本支社用のテーブル）の５行目にコピーした場合には、「人事課」がそのコピー操作を行ったものとすると、そのユーザ名がコピー識別情報内にセットされる。
【００４６】
図１４は、第３実施形態における更新処理実行モジュール３の動作を示したフローチャートである。
この更新処理実行モジュール３は、全体制御モジュール５からの指示にしたがって実行開始される。先ず、コピーレコード判断モジュール４を起動させることによって（ステップＨ１）、更新対象として指定されたレコードは、コピーされたレコードかを判断させ、その判断結果をコピーレコード判断モジュール４から取得する（ステップＨ２）。
【００４７】
コピーレコード判断モジュール４は、図９のフローチャートにしたがった動作を実行する。つまり、更新対象として指定されたレコードの識別子に基づいて管理表７を検索し、該当する識別情報が管理表７内に登録されていれば、更新対象として指定されたレコードはコピーレコードである旨の回答を更新処理実行モジュール３に対して行うが、該当する識別情報が管理表７内に登録されていなければ、コピーレコードでない旨の回答を行う。
ここで、更新処理実行モジュール３は、コピーレコード判断モジュール４からの判断結果を取得した後（１４のステップＨ２）、それがコピーレコードであるか否かを判別する（ステップＨ３）。
【００４８】
いま、更新要求されたレコードがコピーレコードでない場合には、要求された更新処理を行う（ステップＨ４）。
一方、コピー先テーブル６２内の５行目に対して、その更新が要求された場合には、コピーレコードであると判別される。この場合、ステップＨ５に移り、更新対象レコードに対応付けられている管理表７内の「許可ユーザ名」を取得し、今回、更新要求したログインユーザ名と許可ユーザ名とを比較し、両者は一致するかの判別を行う（ステップＨ６）。
この結果、ログインユーザ名と許可ユーザ名が一致する場合には、つまり、更新要求したユーザとコピー操作を行ったユーザとが同一であれば、要求された更新処理の実行を許可するが（ステップＨ４）、ログインユーザ名と許可ユーザ名との不一致の場合には、要求された更新処理を禁止する旨のエラー回答を全体制御モジュール５に対して行う（ステップＨ７）。
【００４９】
以上のように、この第３実施形態においては、データベース６内のレコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピーレコードであることを示すコピー識別情報内に、コピー操作を行ったユーザ名を含めて管理表７内に登録しておき、コピー先内のレコードに対して更新要求された際に、管理表７を参照し、当該更新対象レコードがコピーレコードであっても、更新要求したユーザとコピー操作を行ったユーザとが同一であれば、要求された更新処理の実行を許可するようにしたから、上述した第１実施形態と同様の効果を有する他に、レコードアクセスに対する制限を実際の運用に即したものとすることができ、必要に応じてレコードガードを解除することが可能となる。
【００５０】
なお、登録ユーザ名は、任意であり、コピー操作を行ったユーザに限らず、例えば、特定権限を有する管理ユーザを許可ユーザとして登録しておけば、管理ユーザに対してもレコードガードを解除することができる。更に、登録ユーザ名としては、「組織名」に限らず、「役職名」、「個人名」等であってもよく、また、任意に指定した複数のユーザ名を登録するようにすれば、複数の登録ユーザに対してレコードガードを解除することができる。
【００５１】
なお、上述した第３実施形態においては、管理表７内にレコードコピーを行ったユーザ名を「許可ユーザ名」として追加した場合を例示したが、この「許可ユーザ名」を上述した第２実施形態における擬似列内に追加登録するようにしてもよい。つまり、管理表７を設けずに、レコードの最後の列に設けた「擬似列」内にコピー識別フラグと共に「許可ユーザ名」を登録するようにしてもよい。
この場合、更新処理実行モジュール３は、図１４で示したフローチャートと基本的に同様の処理を実行するが、「許可ユーザ名」を取得する取得先が更新対象レコードである点が相違し（ステップＨ５）、その他は同様の処理によって実現可能である。
【００５２】
また、上述した第３実施形態においては、更新処理を要求したユーザとコピー操作を行ったユーザとが同一ユーザの場合に、当該ユーザが指定した更新処理の実行を許可して、レコードカードを解除するようにしたが、このレコードカードの解除条件としては、ユーザ名に限らず、任意の条件であってもよい。
すなわち、レコードデータがコピー元からコピー先へ複写された際に、レコードアクセスの制限を解除する条件情報を登録しておき、レコード更新が要求された際に、登録解除条件を参照して、当該解除条件に合致するか否かを判別し、更新要求されたレコードがコピーレコードであっても、登録解除条件に合致する場合には、そのレコードに対するアクセスを許可するようにしてもよい。
この場合、登録解除条件として、例えば、有効期限を登録しておけば、この有効期限が過ぎた際に、そのレコードに対するアクセスを許可することができる。
【００５３】
更に、上述した各実施形態においては、コピー先テーブルに対する更新を制限する場合を例示したが、勿論、コピー元テーブル内のレコードが更新要求された際、そのコピー元のレコードがコピー対象となったレコードか否かに基づいてその更新処理を制限するようにしてもよい。この場合、コピー元テーブルに対して上述した各動作を実行するだけで実現可能である。
例えば、上述した図２のように、コピー元テーブル６１（アメリカ本社用のテーブル）の５行目の社員レコードをコピー先テーブル６２（日本支社用のテーブル）の５行目にコピーした場合に、アメリカ本社用のテーブルにおいて、その５行目の社員レコードに対する更新を制限するようにしてもよい。
【００５４】
また、上述した各実施形態においては、レコード更新を制限する場合を例示したが、勿論、レコードの更新が要求された場合に限らず、レコードの読出しが要求された場合でも、その読出しを制限する等、コピー対象となったレコードに対するアクセス制限は、任意である。
更に、データベース管理システムに限らず、各種のファイルを管理するファイル管理システムにも適用可能であると共に、レコードを構成する各項目を一律に制限する場合に限らず、レコード内の特定項目に対するアクセスを制限するようにしてもよい。
【００５５】
上述したレコード処理装置は、スタンド・アローン・タイプに限らず、その各構成要素が２以上の筐体に物理的に分離され、通信回線やケーブル等の有線伝送路あるいは電波、マイクロウエーブ、赤外線等の無線伝送路を介してデータを送受信する分散型のコンピュータシステム、例えば、サーバ・クライアントシステムを構成するものであってもよい。
【００５６】
一方、コンピュータに対して、上述した各手段を実行させるためのプログラムコードをそれぞれ記録した記録媒体（例えば、ＣＤ−ＲＯＭ、フロッピィデスク、ＲＡＭカード等）を提供するようにしてもよい。
すなわち、コンピュータが読み取り可能なプログラムコードを有する記録媒体であって、レコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピー対象となったことを示すコピー識別情報を登録する機能と、前記コピー先あるいはコピー元内のレコードデータがアクセスされた際に、前記登録されているコピー識別情報を参照し、当該アクセスレコードが過去にコピー対象となったレコードか否かを判別する機能と、アクセスレコードがコピー対象となったレコードであることが判別された場合に、当該レコードに対するアクセスを制限する機能とを実現させるためのプログラムを記録したコンピュータが読み取り可能な記録媒体を提供するようにしてもよい。
【００５７】
【発明の効果】
この発明（請求項１記載の発明）によれば、レコードデータがコピー元からコピー先へ複写された際に、そのレコードがコピー対象となったことを示すコピー識別情報を登録しておき、レコードデータがアクセスされた際に、このコピー識別情報を参照することによって、当該アクセスレコードが過去にコピー対象となったレコードであることが判別された場合には、当該レコードに対するアクセスを制限するようにしたから、レコードデータをコピー元からコピー先へ複写した際に、特別な操作を行うことなく、そのレコードに対するアクセスを確実に制限する（更新／読出／削除等を禁止する）ことができ、従来のように、レコードコピーを行う毎に、そのレコードアクセスを制限する為の処理が不用となり、ユーザ負担を大幅に軽減することが可能となる。この場合、アクセスが制限されるレコードは、コピー先内のレコードかコピー元内のレコードかを問わず、そのいずれであってもカード対象（制限対象）とすることができる。
【図面の簡単な説明】
【図１】レコード処理装置が実行する各機能を示した機能ブロック図。
【図２】データベース６において、コピー元であるテーブル６１内のレコード内容と、コピー先であるテーブル６２内のレコード内容とを具体的に示した図。
【図３】図２で示したレコードコピーが行われた際に、そのレコードがコピー対象となったことを示すコピー識別情報を記憶管理する管理表７の内容を具体的に示した図。
【図４】レコード処理装置の基本的構成要素を示したブロック図。
【図５】全体制御モジュール５の動作を示したフローチャート。
【図６】全体制御モジュール５からの指示にしたがって実行開始されるコマンド解析モジュール１の動作を示したフローチャート。
【図７】全体制御モジュール５からの指示にしたがって実行開始されるコピー実行モジュール２の動作を示したフローチャート。
【図８】全体制御モジュール５からの指示にしたがって実行開始される更新処理実行モジュール３の動作を示したフローチャート。
【図９】更新処理実行モジュール３からの指示にしたがって実行開始されるコピーレコード判断モジュール４の動作を示したフローチャート。
【図１０】第２実施形態において、コピー元であるテーブル６１内のレコード内容と、コピー先であるテーブル６２内のレコード内容とを具体的に示した図。
【図１１】第２実施形態におけるコピー実行モジュール２の動作を示したフローチャート。
【図１２】第２実施形態において、更新処理実行モジュール３からの指示にしたがって実行開始されるコピーレコード判断モジュール４の動作を示したフローチャート。
【図１３】図２で示したレコードコピーが行われた際において、第３実施形態における管理表７の内容を具体的に示した図。
【図１４】第３実施形態における更新処理実行モジュール３の動作を示したフローチャート。
【符号の説明】
１　コマンド解析モジュール
２　コピー実行モジュール
３　更新処理実行モジュール
４　コピーレコード判断モジュール
５　全体制御モジュール
６　データベース
７　管理表
６１　コピー元テーブル
６２　コピー先テーブル
１１　ＣＰＵ
１２　記憶装置
１４　通信装置
１５　入力装置
【図１】
2004094297.tif 000003
【図２】
2004094297.tif 000004
【図３】
2004094297.tif 000005
【図４】
2004094297.tif 000006
【図５】
2004094297.tif 000007
【図６】
2004094297.tif 000008
【図７】
2004094297.tif 000009
【図８】
2004094297.tif 000010
【図９】
2004094297.tif 000011
【図１０】
2004094297.tif 000012
【図１１】
2004094297.tif 000013
【図１２】
2004094297.tif 000014
【図１３】
2004094297.tif 000015
【図１４】
2004094297.tif 000016