(57)【要約】【課題】異なるテーブル間で同一のデータを更新する処理を、正確に、且つ容易に行えることができるデータベース処理システムを提供する。【解決手段】本発明のデータベース処理システムは、テーブルのデータを更新すると（ステップＳ１０１）、更新されたデータと同一のデータがあるか否かを判断し（ステップＳ１０２）、同一のデータがあると判断した場合には（ステップＳ１０２；Ｙｅｓ）、そのデータを更新されたデータと同一になるように更新する（ステップＳ１０６）。【選択図】図４
2009053821.tif 000002
【特許請求の範囲】
【請求項１】
データをデータ項目に対応付けて記憶する複数のテーブルを格納するデータベースに通信を介して接続されたデータベース処理システムであって、
前記データベースに格納されている複数のテーブルの同一のデータ項目同士を関連付ける関連付情報を記憶する関連付情報記憶手段と、
前記データベースに格納された一のテーブルのデータを更新する更新手段と、
前記更新手段によりデータが更新されたことに応答して、前記関連付情報記憶手段に記憶されている関連付情報を参照して、前記一のテーブルで更新されたデータのデータ項目に関連付けられたデータ項目が他のテーブルに存在するか否かを判別する判別手段と、
前記判別手段により、関連付けられたデータ項目が他のテーブルに存在すると判別された場合に、該他のテーブルのデータ項目の該当するデータを、前記更新手段により更新されたデータと同一のデータに更新する関連データ更新手段と、
を備えることを特徴とする、データベース処理システム。
【請求項２】
各前記テーブルはローとコラムで構成されるマトリクス構造を有し、各ローにデータ属性が、各コラムにデータ項目がそれぞれ割り当てられており、
前記関連付情報記憶手段は、各テーブルのデータ属性同士とデータ項目同士をそれぞれ関連付ける情報を記憶し、
前記判別手段は、前記更新手段によりデータが更新されたことに応答して、前記関連付情報を参照して、更新されたデータと属性及びデータ項目が一致するデータが他のテーブルに存在するか否かを判別し、
前記関連データ更新手段は、前記判別手段により、更新されたデータと属性及びデータ項目とが一致するデータが他のテーブルに存在すると判別された場合に、該属性及び項目が一致すると判別されたデータを、更新されたデータと同一のデータに更新する、
ことを特徴とする請求項１に記載のデータベース処理システム。
【請求項３】
データをデータ項目に対応付けて記憶する複数のテーブルを格納するデータベースと、
前記データベースに格納されている複数のテーブルの対応するデータ項目同士を関連付ける関連付情報を記憶する関連付情報記憶手段と、
前記データベースに格納された前記テーブル上のデータを更新する更新手段と、
前記更新手段によりデータが更新されたことに応答して、前記関連付情報記憶手段に記憶されている関連付情報を参照して、更新されたデータのデータ項目に関連付けられているデータ項目が他テーブルに存在するか否かを判別する判別手段と、
前記判別手段により、関連付けられているデータ項目が他テーブルに存在すると判別された場合に、関連すると判別されたデータ項目の対応するデータを、更新されたデータと同一のデータに更新する関連データ更新手段と、
を備えることを特徴とする、データベースシステム。
【請求項４】
データをデータ項目と対応付けて格納する複数のテーブルを格納するデータベースのコンピュータを用いたデータベース処理方法であって、
前記データベースに格納されている複数のテーブルの対応するデータ項目同士を関連付ける関連付情報を記憶する関連付情報記憶ステップと、
前記データベースに格納された一のテーブルのデータを更新する更新ステップと、
前記更新ステップによりデータが更新されたことに応答して、前記関連付情報記憶ステップで記憶された関連付情報を参照して、更新されたデータのデータ項目に関連付けられたデータ項目が他テーブルに存在するか否かを判別する判別ステップと、
前記判別ステップにより、関連付けられたデータ項目が他テーブルにあると判別された場合に、関連すると判別されたデータ項目の該当するデータを、更新されたデータと同一のデータに更新する関連データ更新ステップと、
を備えることを特徴とする、データベース処理方法。
【請求項５】
コンピュータを、
複数のテーブルのデータ項目同士を関連付ける関連付情報を管理する関連付情報管理手段と、
データベースに格納された一のテーブルのデータを更新する更新手段と、
前記更新手段により更新されたデータに関し、前記関連付情報記憶手段に記憶されている関連付情報を参照して、更新されたデータのデータ項目に関連付けられたデータ項目を有する他のテーブルの有無を判別する判別手段と、
前記判別手段により、他のテーブルがあると判別された場合に、該他のテーブルの関連すると判別されたデータ項目の該当するデータを、更新されたデータと同一のデータに更新する関連データ更新手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベース処理システム等に関する。
【背景技術】
【０００２】
特許文献１は、データベースに格納されているテーブルに対する各種処理（データの更新・削除・挿入等）を、ユーザが比較的容易に実施することを可能にするデータベース処理システムを開示している。
【特許文献１】特開２００３−３３０７７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
データベースのうちには、複数のテーブルが同一のデータ項目を有するものがある。特許文献１に開示されている技術を用いて、この種のデータベースに記憶されているデータを更新した際には、更新対象のデータを格納する全てのテーブルを特定して、個別に更新する必要がある。
【０００４】
しかし、更新したデータ項目と同一のデータを記憶するデータ項目を特定することは、当該データベースのテーブルの設計を熟知していない限り困難である。そのため、従来のデータベースシステムでは、一部のテーブルのデータのみが更新され、他のテーブルのデータが更新されず、データの齟齬が発生する。即ち、更新が誤って行われる可能性がある。
また、同一のデータを記憶する複数のテーブルを全て更新しなければならないため、更新作業が面倒である。
【０００５】
本発明は、上記実情に鑑みてなされたものであり、複数のテーブルに共通に記憶されているデータに対する更新処理を、正確に、且つ容易に行えることができるデータベース処理システム等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の第１の観点に係るデータベース処理システムは、
データをデータ項目に対応付けて記憶する複数のテーブルを格納するデータベースに通信を介して接続されたデータベース処理システムであって、
前記データベースに格納されている複数のテーブルの同一のデータ項目同士を関連付ける関連付情報を記憶する関連付情報記憶手段と、
前記データベースに格納された一のテーブルのデータを更新する更新手段と、
前記更新手段によりデータが更新されたことに応答して、前記関連付情報記憶手段に記憶されている関連付情報を参照して、前記一のテーブルで更新されたデータのデータ項目に関連付けられたデータ項目が他のテーブルに存在するか否かを判別する判別手段と、
前記判別手段により、関連付けられたデータ項目が他のテーブルに存在すると判別された場合に、該他のテーブルのデータ項目の該当するデータを、前記更新手段により更新されたデータと同一のデータに更新する関連データ更新手段と、
を備えることを特徴とする。
【０００７】
また、各前記テーブルはローとコラムで構成されるマトリクス構造を有し、各ローにデータ属性が、各コラムにデータ項目がそれぞれ割り当てられており、
前記関連付情報記憶手段は、各テーブルのデータ属性同士とデータ項目同士をそれぞれ関連付ける情報を記憶し、
前記判別手段は、前記更新手段によりデータが更新されたことに応答して、前記関連付情報を参照して、更新されたデータと属性及びデータ項目が一致するデータが他のテーブルに存在するか否かを判別し、
前記関連データ更新手段は、前記判別手段により、更新されたデータと属性及びデータ項目とが一致するデータが他のテーブルに存在すると判別された場合に、該属性及び項目が一致すると判別されたデータを、更新されたデータと同一のデータに更新してもよい。
【０００８】
上記目的を達成するため、本発明の第２の観点に係るデータベースシステムは、
データをデータ項目に対応付けて記憶する複数のテーブルを格納するデータベースと、
前記データベースに格納されている複数のテーブルの対応するデータ項目同士を関連付ける関連付情報を記憶する関連付情報記憶手段と、
前記データベースに格納された前記テーブル上のデータを更新する更新手段と、
前記更新手段によりデータが更新されたことに応答して、前記関連付情報記憶手段に記憶されている関連付情報を参照して、更新されたデータのデータ項目に関連付けられているデータ項目が他テーブルに存在するか否かを判別する判別手段と、
前記判別手段により、関連付けられているデータ項目が他テーブルに存在すると判別された場合に、関連すると判別されたデータ項目の対応するデータを、更新されたデータと同一のデータに更新する関連データ更新手段と、
を備えることを特徴とする。
【０００９】
上記目的を達成するため、本発明の第３の観点に係るデータベース処理方法は、
データをデータ項目と対応付けて格納する複数のテーブルを格納するデータベースのコンピュータを用いたデータベース処理方法であって、
前記データベースに格納されている複数のテーブルの対応するデータ項目同士を関連付ける関連付情報を記憶する関連付情報記憶ステップと、
前記データベースに格納された一のテーブルのデータを更新する更新ステップと、
前記更新ステップによりデータが更新されたことに応答して、前記関連付情報記憶ステップで記憶された関連付情報を参照して、更新されたデータのデータ項目に関連付けられたデータ項目が他テーブルに存在するか否かを判別する判別ステップと、
前記判別ステップにより、関連付けられたデータ項目が他テーブルにあると判別された場合に、関連すると判別されたデータ項目の該当するデータを、更新されたデータと同一のデータに更新する関連データ更新ステップと、
を備えることを特徴とする。
【００１０】
上記目的を達成するため、本発明の第４の観点に係るプログラムは、
コンピュータを、
複数のテーブルのデータ項目同士を関連付ける関連付情報を管理する関連付情報管理手段と、
データベースに格納された一のテーブルのデータを更新する更新手段と、
前記更新手段により更新されたデータに関し、前記関連付情報記憶手段に記憶されている関連付情報を参照して、更新されたデータのデータ項目に関連付けられたデータ項目を有する他のテーブルの有無を判別する判別手段と、
前記判別手段により、他のテーブルがあると判別された場合に、該他のテーブルの関連すると判別されたデータ項目の該当するデータを、更新されたデータと同一のデータに更新する関連データ更新手段、
として機能させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、あるテーブルのデータが更新された際に、関連付情報に基づいて、他テーブルの対応するデータも更新される。従って、複数のテーブルに格納されている同一のデータを正確に且つ容易に更新することができる。
【発明を実施するための最良の形態】
【００１２】
（第１の実施の形態）
本発明の第１の実施の形態に係るデータベース処理システムについて図面を参照して説明する。
【００１３】
本発明の第１の実施の形態に係るデータベース処理システムは、ＤＢ（データベース）管理サーバ１と、各種情報を記憶するデータベース２と、を備え、これらはＬＡＮ（Local Area Network）等のネットワークにより接続されている。
【００１４】
データベース２は、複数のテーブルを記憶する。各テーブルは、図２に示すように、１又は複数のエントリ（レコード）を含む。各エントリのデータは、複数のデータ項目に分割されている。
【００１５】
図１に戻り、ＤＢ管理サーバ１は、制御部１１と、主記憶部１２と、入力部１３と、表示部１４と、通信Ｉ／Ｆ（インタフェース）１５と、外部記憶部１６と、を備える。
【００１６】
制御部１１は、ＣＰＵ（Central Processing Unit）等より構成され、外部記憶部１６に記憶されているプログラムを読込み、各種処理を実行する。例えば、制御部１１は、データベース２に記憶されているデータを更新する処理を実行する。
【００１７】
主記憶部１２は、ＲＡＭ（Random Access Memory）等から構成され、制御部１１の作業領域となる。
【００１８】
入力部１３は、キーボードやマウス等の入力装置を備え、入力された情報を制御部１１へ供給する。
【００１９】
表示部１４は、ＣＲＴ、液晶ディスプレイ等からなり、制御部１１の指示に従った画像を表示する。
【００２０】
通信Ｉ／Ｆ１５は、ＬＡＮ（Local Area Network）等のネットワークを介して
他の装置（データベース２等）と通信を行うためのものである。
【００２１】
外部記憶部１６は、ハードディスク装置等から構成され、制御部１１が実行するプログラム及び各種データを記憶する。また、外部記憶部１６は、データ項目関連付けテーブル１６１を備える。
【００２２】
データ項目関連付テーブル１６１は、複数のテーブルに記憶（格納）されている同一のデータ項目を特定する関連付情報（テーブル名、データ項目名）を記憶する。なお、関連付情報で特定されるデータ項目に記憶されているデータは、全てのエントリで同一でなければならない。
【００２３】
例えば、図３（ａ）に示すようなデータ項目Ａ、Ｂ、Ｃを有するテーブルαと、図３（ｂ）に示すようなデータ項目Ｄ、Ｅ、Ｆを有するテーブルβとがデータベース２に格納されている場合を考える。ここで、データ項目Ｂに記憶されているデータと、データ項目Ｅに記憶されているデータは、同一のデータである。また、データ項目Ｂおよびデータ項目Ｅに記憶されているデータは、全てのエントリで同一となっている。この場合、データ項目関連付テーブル１６１は、図３（ｃ）に示すように、データ項目Ｂを特定する情報（テーブル名「テーブルα」、データ項目名「データ項目Ｂ」）と、データ項目Ｅを特定する情報（テーブル名「テーブルβ」、データ項目名「データ項目Ｅ」）とを対応付けて記憶する。なお、この関連付情報は、例えば、データベース２の設計者が、設計内容に基づいて作成し、外部記憶部１６に格納する。
【００２４】
次に、データベース処理システムで、データベース２に格納されているテーブルに記憶されているデータを更新する処理について説明する。
【００２５】
ユーザは、入力部１３を操作する等して、データベース２に格納されているテーブルのデータを更新するための情報を入力する。そして、該入力情報が制御部１１に送信されたとき、制御部１１は図４のフローチャートに示すテーブルデータ更新処理を行う。
【００２６】
まず、制御部１１は、ユーザからの入力情報に基づいて、任意のテーブル（例えば、表示部１４に表示さているテーブル）に記憶されている（含まれている）データを更新する（ステップＳ１０１）。
具体的には、制御部１１は、ユーザの入力情報から更新処理をするためのＳＱＬ（Structured Query Language）等のデータベース用の操作言語による命令を生成し、この命令を実行することによりデータを更新する。
【００２７】
次に、制御部１１は、ステップＳ１０１で更新したデータのデータ項目を特定する関連付情報（テーブル名、データ項目名）が、データ項目関連付テーブル１６１に記憶されているか否かを判別する（ステップＳ１０２）。
【００２８】
該当する関連付情報が記憶されていないと判別した場合は（ステップＳ１０２；Ｎｏ）、追加更新すべきデータが存在しないので、制御部１１は、テーブルデータ更新処理を終了する。
【００２９】
一方、該当する関連付情報が記憶されていると判別した場合（ステップＳ１０２；Ｙｅｓ）、制御部１１は、ステップＳ１０１で更新したデータを記憶するテーブル（更新されたテーブル）に複数のエントリがあるか否かを判別する（ステップＳ１０３）。
【００３０】
複数のエントリがない、即ち、エントリ数が１であると判別した場合（ステップＳ１０３；Ｎｏ）、制御部１１は、処理をステップＳ１０５に移す。
【００３１】
一方、更新されたテーブルに複数のエントリがあると判別した場合（ステップＳ１０３；Ｙｅｓ）、制御部１１は、ステップＳ１０１でデータが更新されたエントリ以外の他のエントリの対応するデータ項目のデータを、更新されたデータと同一のデータに更新し（ステップＳ１０４）、ステップＳ１０５に処理を移す。
【００３２】
ステップＳ１０５で、制御部１１は、ステップＳ１０２で記憶されていると判別した関連付情報に基づいて、データが更新されたデータ項目に対応付けられている他のテーブルのデータ項目を特定する（ステップＳ１０５）。
【００３３】
続いて、制御部１１は、ステップＳ１０５で特定したテーブルの各エントリの該当するデータ項目のデータを、ステップＳ１０１で更新したデータと同一のデータに更新する（ステップＳ１０６）。
以上でテーブルデータ更新処理を終了する。
この処理により、ユーザが一のテーブルの任意のデータを更新すると、そのテーブル内及び他のテーブルの対応するデータも自動的に更新される。従って、更新の漏れなどが無く、更新が正確に且つ容易に行われる。
【００３４】
続いて、上述のテーブルデータ更新処理について具体例を挙げて説明する。
この具体例におけるデータベース処理システムのデータベース２は、社員テーブル２１と会社テーブル２２とを格納している。
【００３５】
社員テーブル２１は、所定の会社に属する社員に関する情報を記憶する。社員テーブル２１は、図５（ａ）に示すように、複数のエントリを含み、各エントリは、氏名、会社名、社員電話番号、社員番号等をデータ項目として持つ。
【００３６】
会社テーブル２２は、エントリ件数が１件のみのテーブルであり、所定の会社に関する情報を記憶する。会社テーブル２２のエントリは、図５（ｄ）に示すように、会社名、会社電話番号、会社ＦＡＸ番号等をデータ項目として持つ。
【００３７】
なお、会社テーブル２２の「会社電話番号」（データ項目）に記憶されているデータと社員テーブルの「社員電話番号」に記憶されているデータとは、同一となるデータである。また、社員テーブル２１の「会社名」と会社テーブル２２の「会社名」に記憶されているデータも、同一となるデータである。
そのため、データ項目関連付テーブル１６１は、図６に示すように、社員テーブル２１の「会社名」と会社テーブル２２の「会社名」とを対応付ける関連付情報と、社員テーブル２１の「社員電話番号」と会社テーブル２２の「会社電話番号」とを対応付ける関連付情報とを記憶している。
なお、社員テーブル２１の「社員電話番号」および「会社名」に記憶されているデータは、全てのエントリで同一である。
【００３８】
以上のような場合において、社員テーブル２１の氏名「鈴木一郎」の社員電話番号「０４５−１２３−４５６７」を、「９９９−９８７−６５４３」に更新する処理について説明する。
【００３９】
まず、ユーザからの入力情報に基づいて、制御部１１は、社員テーブル２１の氏名「鈴木一郎」のエントリの社員電話番号のデータを「９９９−９８７−６５４３」に更新する（ステップＳ１０１）。これにより、社員テーブル２１は、図５（ａ）に示す状態から、図５（ｂ）に示す状態になる。
【００４０】
続いて、更新されたデータのデータ項目（即ち、社員テーブル２１の「社員電話番号」）を特定する関連付情報がデータ項目関連付テーブル１６１に記憶されているか否かを判別する（ステップＳ１０２）。図６のデータ項目関連付テーブル１６１には、「社員テーブル：社員電話番号」が記憶されているので（ステップＳ１０２；Ｙｅｓ）、次に、社員テーブル２１に複数エントリがあるか否かを判別する（ステップＳ１０３）。図５（ａ）に示すように、社員テーブル２１には、複数のエントリがあるため（ステップＳ１０３；Ｙｅｓ）、制御部１１は、更新されたエントリ（氏名「鈴木一郎」）以外のエントリの「社員電話番号」も、「９９９−９８７−６５３４」に更新する（ステップＳ１０４）。これにより、社員テーブルは図５（ｂ）に示す状態から、図５（ｃ）に示す状態になる。
【００４１】
続いて、制御部１１は、関連付情報に基づいて、「社員テーブル：社員電話番号」に対応付けられている「会社テーブル：会社電話番号」を読み出す（ステップＳ１０５）。
【００４２】
続いて、制御部１１は、ステップＳ１０５で読み出したデータに基づいて、会社テーブル２２の「会社電話番号」に記憶されているデータを、ステップＳ１０１で更新した電話番号に更新する（ステップＳ１０６）。すなわち、制御部１１は、会社テーブルの会社電話番号のデータ「０４５−１２３−４５６７」を、データ「９９９−９８７−６５４３」に更新する。これにより、会社テーブル２２は図５（ｄ）に示す状態から、図５（ｅ）に示す状態になる。以上で、テーブルデータの更新は終了する。
【００４３】
なお、この例で社員テーブル２１の「社員名」に記憶されているデータ「鈴木一郎」を更新した場合、「社員テーブル：社員名」がデータ項目関連付テーブル１６１に記憶されていないため（ステップＳ１０２；Ｎｏ）、他のエントリ及び他のテーブルのデータが更新されることは無い。
【００４４】
（第２の実施の形態）
第１の実施の形態では、関連するデータをデータ項目単位で関連付けて更新したが、これに限定されず、個々のデータ同士を関連付けることも可能である。
以下、データ単位、即ち、テーブルとエントリとデータ項目との組み合わせ毎にデータを関連付けて、一括して更新可能なデータベースシステムを第２の実施の形態として説明する。
【００４５】
本実施の形態に係るデータベース処理システムは、外部記憶部１６に、上述したデータ項目関連付テーブル１６１の替わりに、データ項目・エントリ関連付テーブル１６２を記憶する。
【００４６】
データ項目・エントリ関連付テーブル１６２は、異なるテーブル間で同一となるデータのテーブル名とデータ項目とエントリとの組み合わせを関連付ける関連付け情報を記憶する。なお、エントリは、例えば、エントリ中の特定のデータ項目（キー項目）により特定される。なお、エントリを、テーブル中のエントリの番号等で特定することも可能である。
【００４７】
例えば、図７（ａ）に示すようなデータ項目Ｇ、Ｈを有するテーブルγと、図７（ｂ）に示すようなデータ項目Ｉ、Ｊを有するテーブルΩとがデータベース２に格納されている場合を考える。ここで、データ項目ＧとＪに記憶されているデータが同一のエントリに含まれるデータ項目ＨとＩのデータは同一のデータである。
この様な場合、データ項目・エントリ関連付テーブル１６２は、図７（ｃ）に示すように、テーブル名とデータ項目名を特定する情報（「テーブルγ」、「データ項目Ｈ」）とエントリを特定するキー項目名（「データ項目Ｇ」）と、同一のデータのテーブル名とデータ項目名を特定する情報（「テーブルΩ」、「データ項目Ｉ」）とキー項目名（「データ項目Ｊ」）とを対応付けて記憶する。
【００４８】
次に、このデータベース処理システムで、データベース２に格納されているテーブル上のデータを更新する処理の動作について説明する。
【００４９】
ユーザは、入力部１３を操作する等して、データベース２に格納されている任意のテーブル上のデータを更新するための情報を入力する。そして、該入力情報が制御部１１に送信されると、制御部１１は図８のフローチャートに示すテーブルデータ更新処理を行う。
【００５０】
まず、制御部１１は、ユーザからの入力情報に基づいて、指定されたテーブル上のデータを更新する（ステップＳ２０１）。
【００５１】
次に、制御部１１は、ステップＳ２０１で更新したデータのデータ項目を特定する情報（テーブル名、データ項目名）が、データ項目・エントリ関連付テーブル１６２に記憶されているか否かを判断する（ステップＳ２０２）。
【００５２】
データ項目を特定する情報が記憶されていないと判別した場合（ステップＳ２０２；Ｎｏ）、追加更新すべきデータが存在しないので、制御部１１は、テーブルデータ更新処理を終了する。
【００５３】
データ項目を特定する情報が記憶されていると判別した場合（ステップＳ２０２；Ｙｅｓ）、制御部１１は、該データ項目を特定する情報に対応付けられているキー項目名を読み出す（ステップＳ２０３）。
【００５４】
そして、制御部１１は、ステップＳ２０１で更新したデータが属すエントリに含まれるデータであって、ステップＳ２０３で読み出したキー項目名で特定されるキー項目のデータを読み出す（ステップＳ２０４）。
【００５５】
次に、制御部１１は、更新したデータのデータ項目を特定する情報（テーブル名、データ項目名）に対応付けられているデータ項目を特定する情報（テーブル名、データ項目名）を、データ項目・エントリ関連付テーブル１６２から読み出す（ステップＳ２０５）。
【００５６】
そして、制御部１１は、読み出したデータ項目を特定する情報に対応付けられているキー項目名を、データ項目・エントリ関連付テーブル１６２から読み出す（ステップＳ２０６）。
【００５７】
そして、制御部１１は、読み出したキー項目名で特定されるデータ項目のデータのうち、ステップＳ２０４で読み出したデータと一致するものが有るか否かを判別する（ステップＳ２０７）。
【００５８】
一致するデータがないと判別した場合は（ステップＳ２０７；Ｎｏ）、追加更新すべきデータが存在しないので、制御部１１は、テーブルデータ更新処理を終了する。
一致するデータが有ると判別した場合は（ステップＳ２０７；Ｙｅｓ）、制御部１１は、そのデータが属するエントリに含まれているデータであって、ステップＳ２０５で読み出したデータ項目を特定する情報で特定されるデータ項目のデータを、ステップＳ２０１で更新したデータと同一のデータに更新する（ステップＳ２０８）。
以上でテーブルデータ更新処理を終了する。
【００５９】
続いて、上述のテーブルデータ更新処理について具体例を挙げて説明する。
具体例として、所定の会社の業務システム等で使用されるデータベース処理システムを考える。このデータベース処置システムは、図１に示したデータベース処理システムと同様な構成をしており、データベース２には、会社テーブル３１と社員テーブル３２とが格納されている。
【００６０】
会社テーブル３１は、複数の会社に関する情報を記憶する。会社テーブル３１は、図９（ａ）に示すように、「会社名」、「会社電話番号」、「会社ＦＡＸ番号」等をデータ項目として持つ。
【００６１】
社員テーブル３２は、会社テーブル３１に記憶されている各会社に属する社員に関する情報を記憶するテーブルである。社員テーブル３２は、図９（ｃ）に示すように、「氏名」、「会社名」、「社員電話番号」、「社員番号」等をデータ項目として持つ。
【００６２】
なお、会社テーブル３１と社員テーブル３２の「会社名」が一致するエントリ間で、会社テーブル３１の「会社電話番号」と社員テーブル３２の「社員電話番号」とが同一のデータとなる。そのため、データ項目・エントリ関連付テーブル１６２には、図１０に示すように、「会社テーブル」の「会社電話番号」及び「会社名」と、「社員テーブル」の「社員電話番号」及び「会社名」と、が対応付けられて記憶されている。
【００６３】
以上の前提において、図９（ａ）に示す会社テーブル３１の会社名が「Ａ」であるエントリの「会社電話番号」「０４５−１２３−４５６７」を、「９９９−９８７−６５４３」に更新する処理について説明する。
【００６４】
まず、ユーザからの入力情報に基づいて、制御部１１は、会社テーブル３１の会社名が「Ａ」であるエントリ（第１エントリ）の会社電話番号のデータを「９９９−９８７−６５４３」に更新する（ステップＳ２０１）。これにより、会社テーブルは、図９（ａ）に示す状態から、図９（ｂ）に示す状態になる。
【００６５】
更新されたデータのデータ項目を特定する情報（会社テーブル３１の「会社電話番号」）は、図１０に示すように、データ項目・エントリ関連付テーブル１６２に記憶されている。このため、ステップＳ２０２でＹｅｓと判別され、制御部１１は、対応付けられているキー項目名「会社名」を、データ項目関連付テーブル１６２から読み出す（ステップＳ２０３）。
【００６６】
そして、制御部１１は、データを更新したエントリに含まれているデータのうち、読み出したキー項目「会社名」に記憶されている「Ａ」を読み出す（ステップＳ２０４）。
【００６７】
次に制御部１１は、このようにして特定したテーブル名とデータ項目名とキー項目名、即ち、「会社テーブル」と「会社電話番号」と「Ａ」に対応付けられているテーブル名とデータ項目名とキー項目名、即ち、「社員テーブル」と「社員電話番号」と「会社名」とを、データ項目・エントリ関連付テーブル１６２から読み出す（ステップＳ２０５、Ｓ２０６）。
【００６８】
この例では、社員テーブル３２の、ステップＳ２０６で読み出したキー項目「会社名」のデータの中に、ステップＳ２０４で取得したデータ「Ａ」と一致するデータがあるか否かを判別する（ステップＳ２０７）。
図９（ｃ）の例では、社員テーブル３２の第１エントリと第３エントリに、会社名「Ａ」が含まれている。このため、ステップＳ２０７で、Ｙｅｓと判別され、会社名「Ａ」が含まれているエントリのデータのうち、更新データが属すデータ項目に対応する「社員電話番号」のデータを、更新した電話番号と同じ番号に更新する（ステップＳ２０８）。すなわち、会社名が「Ａ」である第１エントリの社員電話番号のデータ「０４５−１２３−４５６７」を「９９９−９８７−６５４３」に更新する。第３エントリについても同様に処理する。従って、社員テーブル３２は図９（ｃ）に示す状態から図９（ｄ）に示す状態になる。
【００６９】
このように、このデータベース処理システムは、あるテーブルのデータが更新されると、同一のデータが他のテーブルにあるか否かを判断し、あると判断した場合には、そのデータを更新されたデータと同一となるように更新する。従って、データを正確に且つ容易に更新することが可能となる。
【００７０】
なお、本発明は上記実施の形態に限定されず、種々の変形および応用が可能である。
【００７１】
例えば、上記実施の形態では、データベース２を１つのデータベースから構成する例を示した。しかし、データベースの数は任意である。データベースが複数存在する場合には、共通のデータを対応付けるため、データ項目関連付テーブル１６１およびデータ項目・エントリ関連付テーブル１６２にデータベース名を記憶すればよい。
【００７２】
上記実施の形態では、関連付情報が２つのテーブルのデータの関連を表す例を示したが、データベースの設計によっては、３つ以上のテーブルのデータの関連を表してもよい。この場合、一のテーブルのデータが更新されると、関連付情報に基づいて、他の２以上の関連するテーブルの対応するデータが更新される。
【００７３】
また、テーブルの構成も任意であり、上記実施形態の各エントリの各データ項目を「セル」として規定してもよい。また、複数のテーブル間で、同一のデータを関連付ける手法及び関連付情報の構造は任意である、例えば、テーブル名＋エントリ名（番号）＋データ項目でデータを特定してもよく、或いは、テーブル名＋セルの番号（行列）で特定する等してもよい。
【００７４】
また、上記実施の形態に係るＤＢ管理サーバ１は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
【００７５】
例えば、上記実施の形態では、ＤＢ管理サーバ１において、動作プログラムがメモリ等に予め記憶されているものとして説明した。しかし、上述の処理動作を実行させるためのプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto-Optical disk）等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の処理動作を実行をする装置を構成してもよい。
【００７６】
また、プログラムをインターネット等の通信ネットワーク上の所定のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するようにしてもよい。さらに、通信ネットワークを介してプログラムを転送しながら起動実行することによっても、上述の処理を達成することができる。
また、上述の機能を、ＯＳ（Operating System）が分担して実現する場合又はＯＳとアプリケーションとの協働により実現する場合等には、ＯＳ以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロード等してもよい。
【図面の簡単な説明】
【００７７】
【図１】本発明の実施の形態に係るデータベース処理システムの構成を示すブロック図である。
【図２】データベースを構成するテーブルの構造を例示する図である。
【図３】データ項目関連付テーブルを説明するための図である。
【図４】本発明の第１の実施の形態に係るデータベース処理システムによる、テーブルデータ更新処理のフローチャートを示した図である。
【図５】図４に示すテーブルデータ更新処理の具体的な例を示すために用いられたテーブルの構成を示した図であり、（ａ）、（ｂ）、（ｃ）は社員テーブルの構成を示した図であり、（ｄ）、（ｅ）は会社テーブルの構成を示した図である。
【図６】図４に示すテーブルデータ更新処理の具体的な例を示すために用いられたデータ項目関連付テーブルの構成を示した図である。
【図７】データ項目・エントリ関連付テーブルを説明するための図である。
【図８】本発明の第２の実施の形態に係るデータベース処理システムによるテーブルデータ更新処理のフローチャートを示した図である。
【図９】図８に示すテーブルデータ更新処理の具体的な例を示すために用いられたテーブルの構成を示した図であり、（ａ）、（ｂ）は会社テーブルの構成を示した図であり、（ｃ）、（ｄ）は社員テーブルの構成を示した図である。
【図１０】図８に示すテーブルデータ更新処理の具体的な例を示すために用いられたデータ項目・エントリ関連付テーブルの構成を示した図である。
【符号の説明】
【００７８】
１  ＤＢ管理サーバ
２  データベース
１１  制御部
１２  主記憶部
１３  入力部
１４  表示部
１５  通信Ｉ／Ｆ
１６  外部記憶部
【図１】
2009053821.tif 000003
【図２】
2009053821.tif 000004
【図３】
2009053821.tif 000005
【図４】
2009053821.tif 000006
【図５】
2009053821.tif 000007
【図６】
2009053821.tif 000008
【図７】
2009053821.tif 000009
【図８】
2009053821.tif 000010
【図９】
2009053821.tif 000011
【図１０】
2009053821.tif 000012