(57)【要約】      （修正有）【課題】データベースのマスタデータを直接操作できない環境において、運用中のマスタデータを直接変更することなく容易に更新可能なデータベースシステムを提供する。【解決手段】データベース管理システムは、第１のネットワークに接続可能なユーザ端末１０と、第１のネットワークと、第１のネットワークとは異なる第２のネットワークとを利用した相互通信を中継する中継サーバ２０と、第２のネットワークに接続可能であり、且つ保持しているデータベースをマスタデータに基づいて管理するデータベースサーバ３０とを備える。ユーザ端末は、マスタデータに反映されるべきレコードからなるマスタデータファイルを作成し、中継サーバに送信する。データベースサーバは、中継サーバを介して受信したマスタデータファイルの各レコードと、現在運用中のマスタデータの内容とを比較すると共に、比較結果に応じて、そのマスタデータを更新する。【選択図】図３
2012160049.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワークに接続可能なユーザ端末と、
前記第１のネットワークと、前記第１のネットワークとは異なる第２のネットワークとを利用した相互通信を中継する中継サーバと、
前記第２のネットワークに接続可能であり、且つ保持しているデータベースをマスタデータに基づいて管理するデータベースサーバとを備え、
前記ユーザ端末は、
前記マスタデータに反映されるべきレコードからなるマスタデータファイルを作成する作成手段と、
作成されたマスタデータファイルを前記中継サーバに送信する送信手段とを含み、
前記データベースサーバは、
前記中継サーバを介して受信したマスタデータファイルの各レコードと、現在運用中の前記マスタデータの内容とを比較すると共に、比較結果に応じて、そのマスタデータを更新する更新手段を含む
ことを特徴とするデータベース管理システム。
【請求項２】
前記データベースサーバにおいて、前記更新手段は、
前記中継サーバを介して受信したマスタデータファイルの各レコードを、前記マスタデータの内容と比較するのに先だって、該マスタデータファイルの各レコードを、自装置にて保持しているデータベースの、外部情報を表すテーブルとしてリンクを張ったデータに変換する
ことを特徴とする請求項１記載のデータベース管理システム。
【請求項３】
前記ユーザ端末において、前記作成手段は、
前記マスタデータファイルの各レコードに、前記マスタデータに反映される際の処理種別を表す識別情報を付与し、
前記データベースサーバにおいて、前記更新手段は、
前記受信したマスタデータファイルの各レコードに含まれる識別情報に応じて、個々のレコードを、前記マスタデータの内容に対して、追加、更新、或いは削除する処理を行う
ことを特徴とする請求項１または請求項２記載のデータベース管理システム。
【請求項４】
前記ユーザ端末において、前記作成手段は、
前記マスタデータファイルをユーザが作成する際に使用するマンマシンインタフェースを提供すると共に、入力されたデータ項目が前記マスタデータの入力形式に整合するか否かを判断し、整合しない場合には整合しない事項を通知する手段を含む
ことを特徴とする請求項１乃至請求項３の何れかに記載のデータベース管理システム。
【請求項５】
前記データベースサーバにおいて、前記更新手段は、
前記マスタデータの更新を、所定時間毎、或いは前記受信したマスタデータファイルのデータ量に応じた時間間隔にて行う
ことを特徴とする請求項１乃至請求項４の何れかに記載のデータベース管理システム。
【請求項６】
第１のネットワークと、その第１のネットワークとは異なる第２のネットワークとを利用した相互通信を中継する中継サーバを介して、前記第１のネットワークに接続したユーザ端末を、前記第２のネットワークに接続可能であり、且つ保持しているデータベースをマスタデータに基づいて管理するデータベースサーバとのデータの送受信を可能な状態とし、
前記ユーザ端末においては、
前記マスタデータに反映されるべきレコードからなるマスタデータファイルを作成し、
作成されたマスタデータファイルを前記中継サーバに送信し、
前記データベースサーバにおいては、
前記中継サーバを介して受信したマスタデータファイルの各レコードと、現在運用中の前記マスタデータの内容とを比較すると共に、比較結果に応じて、そのマスタデータを更新する
ことを特徴とするデータベースのマスタデータ管理方法。
【請求項７】
前記データベースサーバにおいて、
前記中継サーバを介して受信したマスタデータファイルの各レコードを、前記マスタデータの内容と比較するのに先だって、該マスタデータファイルの各レコードを、自装置にて保持しているデータベースの、外部情報を表すテーブルとしてリンクを張ったデータに変換する
ことを特徴とする請求項６記載のデータベースのマスタデータ管理方法。
【請求項８】
前記ユーザ端末においては、
前記マスタデータファイルの各レコードに、前記マスタデータに反映される際の処理種別を表す識別情報を付与し、
前記データベースサーバにおいては、
前記受信したマスタデータファイルの各レコードに含まれる識別情報に応じて、個々のレコードを、前記マスタデータの内容に対して、追加、更新、或いは削除する処理を行う
ことを特徴とする請求項６または請求項７記載のデータベースのマスタデータ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークに接続されたサーバにおけるデータベースの管理技術に関する。
【背景技術】
【０００２】
一般に、データベースにおけるマスタデータの更新には、マスタデータ管理者がデータベースサーバに接続できる手段（マシン環境）と、マスタデータ管理者によるデータベースへの深い理解が必要である。例えば、データベースサーバは、公共の通信ネットワーク（以下、通信ネットワークを単に「ネットワーク」と略称する）として一般的なインターネット等に接続しない構成を採る。このため、マスタデータ管理者は、データベースサーバが接続しているネットワークに接続できる環境を用意する必要がある。また、データベースに関する知識が不十分なマスタデータ管理者の場合、運用中のマスタデータに、データを直接追加してしまうことによって問題を招く虞もある。
【０００３】
ここで、本願出願に先だって存在する関連技術としては、例えば以下の特許文献がある。
【０００４】
即ち、データベースへのアクセス方法を開示する文献として、例えば特許文献１には、代理アクセスサーバを使用することにより、低速回線で接続されたクライアント／データベースサーバ間においても、ユーザが不便を感じないでデータベースを検索する技術が開示されている。
【０００５】
特許文献２は、主コンピュータのデータベースを利用する複数の端末コンピュータにおいて、当該端末コンピュータ間におけるデータベースを同期する技術が開示されている。
【０００６】
特許文献３は、端末にて実行されているＷｅｂブラウザを利用して、Ｗｅｂサーバを介してデータベースサーバ内のデータを、当該端末のデータベースとして保持する技術が開示されている。
【０００７】
特許文献４は、複数のトランザクションを効率的に実行し、それらトランザクションの結果を、セグメント単位で管理しながらマージする技術を開示する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許第３５６０８０６号公報
【特許文献２】特開平１１−２８８３８３号公報
【特許文献３】特開２００７−２２６５０８号公報
【特許文献４】特開２００６−０１２１５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１に記載されたデータベースへのアクセス方法においては、係る代理アクセスサーバを使用することで、データベースに対する検索に伴う情報量を抑えることができる。しかしながら、データベースのマスタデータを大量に追加・更新するようなメンテナンス作業では、クライアント／サーバ間の通信速度がボトルネックとなる。
【００１０】
また、特許文献２は、ある端末コンピュータからの要求に応じて読み取ったマスタデータを、主コンピュータから各端末コンピュータにどのように提供することによって同期あるいは変更するのか具体的には開示されていない。
【００１１】
そして上記何れの特許文献にも、データベースのマスタデータを変更するに際して、ネットワーク構成に起因して、マスタデータを直接変更できない場合について考慮されていない。
【００１２】
そこで、本発明は、データベースのマスタデータを直接操作できない環境において、運用中のマスタデータを直接変更することなく、そのデータベースのマスタデータ定義に整合性のあるマスタデータを、容易に更新可能なデータベースシステム等の提供を主たる目的とする。
【課題を解決するための手段】
【００１３】
上記の目的を達成すべく、本発明に係るデータベース管理システムは、以下の構成を備えることを特徴とする。
【００１４】
即ち、本発明に係るデータベース管理システムは、
第１のネットワークに接続可能なユーザ端末と、
前記第１のネットワークと、前記第１のネットワークとは異なる第２のネットワークとを利用した相互通信を中継する中継サーバと、
前記第２のネットワークに接続可能であり、且つ保持しているデータベースをマスタデータに基づいて管理するデータベースサーバとを備え、
前記ユーザ端末は、
前記マスタデータに反映されるべきレコードからなるマスタデータファイルを作成する作成手段と、
作成されたマスタデータファイルを前記中継サーバに送信する送信手段とを含み、
前記データベースサーバは、
前記中継サーバを介して受信したマスタデータファイルの各レコードと、現在運用中の前記マスタデータの内容とを比較すると共に、比較結果に応じて、そのマスタデータを更新する更新手段を含むことを特徴とする。
【００１５】
また、同目的を達成すべく、本発明に係るデータベースのマスタデータ管理方法は、以下の構成を備えることを特徴とする。
【００１６】
即ち、本発明に係るデータベースのマスタデータ管理方法は、
第１のネットワークと、その第１のネットワークとは異なる第２のネットワークとを利用した相互通信を中継する中継サーバを介して、前記第１のネットワークに接続したユーザ端末を、前記第２のネットワークに接続可能であり、且つ保持しているデータベースをマスタデータに基づいて管理するデータベースサーバとのデータの送受信を可能な状態とし、
前記ユーザ端末においては、
前記マスタデータに反映されるべきレコードからなるマスタデータファイルを作成し、
作成されたマスタデータファイルを前記中継サーバに送信し、
前記データベースサーバにおいては、
前記中継サーバを介して受信したマスタデータファイルの各レコードと、現在運用中の前記マスタデータの内容とを比較すると共に、比較結果に応じて、そのマスタデータを更新することを特徴とする。
【発明の効果】
【００１７】
上記の本発明によれば、データベースのマスタデータを直接操作できない環境において、運用中のマスタデータを直接変更することなく、そのデータベースのマスタデータ定義に整合性のあるマスタデータを、容易に更新可能なデータベースシステム等の提供が実現する。
【図面の簡単な説明】
【００１８】
【図１】本発明の模範的な実施形態に係るデータベース管理システムの構成を概念的に示すブロック図である。
【図２】本発明の模範的な実施形態に係るデータベース管理システムの構成を例示する図である。
【図３】本発明の実施形態に係るデータベース管理システムによるデータ管理処理の全体構成を示すフローチャートである。
【図４】本発明の実施形態に係るデータベース管理システムにおいて、ユーザ端末１０にて実行される整合性確認機能の手順を説明するフローチャートである。
【図５】本発明の実施形態に係るデータベース管理システムにおいてデータベースサーバ３０が扱うデータベースに格納されているマスタテーブル（データ項目）を例示する図である。
【図６】ユーザが作成するマスタデータファイルのデータ項目を例示する図である。
【図７】アプリケーションを使用してマスタデータファイルを作成する場合に、ユーザ端末１０が表示する画面を例示する図である。
【図８】作成されたマスタデータファイルをアプリケーションを使用してチェックする場合に、ユーザ端末１０が表示する画面を例示する図である。
【図９】整合性が確認されたマスタデータファイルを、アプリケーションを使用して中継サーバ２０に送信する際に、ユーザ端末１０が表示する画面を例示する図である。
【図１０】本実施形態においてデータベースサーバ３０が実行する、マスタデータファイルのマージ処理を示すフローチャートである。
【発明を実施するための形態】
【００１９】
次に、本発明を実施する形態について図面を参照して詳細に説明する。
【００２０】
図１は、本発明の模範的な実施形態に係るデータベース管理システムの構成を概念的に示すブロック図である。図１に示すデータベース管理システムは、ユーザ端末１０、中継サーバ２０、及びデータベースサーバ３０を備える。
【００２１】
ユーザ端末１０は、第１のネットワーク１００に接続可能な端末である。中継サーバ２０は、第１のネットワーク１００と、この第１のネットワークとは異なる第２のネットワーク２００とを利用した相互通信を中継するサーバ装置である。そして、データベースサーバ３０は、第２のネットワーク２００に接続可能であり、且つ保持しているデータベース（ＤＢ）３３を、マスタデータ３２に基づいて管理する装置である。
【００２２】
そして、このような構成をなすデータベース管理システムにおいて、ユーザ端末１０は、マスタデータ３２に反映されるべきレコードからなるマスタデータファイルを作成するマスタデータファイル作成部１１と、作成されたマスタデータファイルを中継サーバ２０に送信する送信部１２とを有する。
【００２３】
また、データベースサーバ３０は、中継サーバ２０を介して受信したマスタデータファイルの各レコードと、現在運用中のマスタデータ３２の内容とを比較すると共に、比較結果に応じて、そのマスタデータを更新するマスタデータ更新部３１を有する。
【００２４】
上記データベース管理システムによれば、データベース３３のマスタデータ３２をユーザ端末１０のユーザが直接操作できない環境において、運用中のマスタデータ３２を直接変更することなく、そのデータベースのマスタデータ定義に整合性のあるマスタデータを、容易に更新することができる。
【００２５】
次に、図１を参照して上述したデータベース管理システムを基本とするより詳細な実施形態について、図２乃至図１０を参照して説明する。
【００２６】
図２は、本発明の模範的な実施形態に係るデータベース管理システムの構成を例示する図である。図２に示すデータベース管理システムは、ユーザ端末１０、中継サーバ２０、データベースサーバ３０、ネットワーク１００及び２００によって構成されている。
【００２７】
係るデータベース管理システムにおいて、ユーザ端末１０、中継サーバ２０およびデータベースサーバ３０は、通信インタフェース（不図示）を備えた情報処理装置（コンピュータ）であって、ソフトウェア・プログラム（コンピュータ・プログラム）を、不図示のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が実行することによって後述する各種機能を実現する。
【００２８】
本実施形態において、ユーザ端末１０は、本データベース管理システムを利用することにより、データベースサーバ３０内のマスタデータ３０１を更新（変更、マージ等）するユーザ（マスタデータ管理者）によって使用される。即ち、ユーザ端末１０は、パーソナルコンピュータ等の情報処理装置であり、データベースサーバ３０に格納されたマスタデータ３０１にマージされるべきファイル（以下、「マスタデータファイル」と称する）を作成する機能、作成したマスタデータファイルの整合性を確認する機能等を備える。
【００２９】
ここで、マスタデータファイルの整合性を確認する機能とは、例えば、作成したマスタデータファイルの項目の文字数、文字の種類、日付などの入力形式が、データベースサーバ３０（データベース）に格納されたマスタデータ３０１の定義と一致していることを確認する機能である。そして、本実施形態において、マスタデータファイルは、ユーザ端末１０のユーザがアプリケーションソフトウェアの機能を利用して、或いは、例えばマイクロソフト社のエクセル（登録商標）等の帳票ソフトウェアをツールとして用いながらユーザ自らが作成することとする（詳細は図６及び図７を参照して後述する）。
【００３０】
ユーザ端末１０と中継サーバ２０とは、インターネット等のネットワーク１００（第１のネットワーク）を介して通信可能に接続されている。また、中継サーバ２０とデータベースサーバ３０とは、ネットワーク１００とは異なるイントラネット等のネットワーク２００（第２のネットワーク）を介して通信可能に接続されている。そして、本実施形態に係るデータベース管理システムの構成の前提として、ユーザ端末１０とデータベースサーバ３０とは、接続されているネットワークがそれぞれ異なるため、直接的な相互通信を行うことができず、データ（情報）の通信には、中継サーバ２０による仲介（中継）が必要であることとする。尚、中継サーバ２０が異なる複数種類のネットワークの間において情報（データ）の送受信を仲介する技術自体は、現在では一般的な技術を採用することができるので、本実施形態における詳細な説明は省略する。
【００３１】
ユーザ端末１０は、作成したマスタデータファイルを、中継サーバ２０へネットワーク１００を介してアクセスすることによって中継サーバ２０へ送信する機能を備える。
【００３２】
ネットワーク１００は、インターネット等の公共の回線を使用する場合があるので、マスタデータファイルを暗号化して送信する機能を備える。尚、暗号化自体は、一般的な手法を採用することができるので、本実施形態における詳細な説明は省略する。
【００３３】
ユーザ端末１０は、中継サーバ２０へアクセスする際に、自端末がユーザ端末１０であることを証明する情報を、中継サーバ２０へ送信する機能を備える。ここで、自端末を証明する情報とは、例えば、中継サーバ２０から事前に配布された、中継サーバ２０へアクセスするための認証鍵等の情報である。
【００３４】
更に、ユーザ端末１０は、送信したマスタデータファイルに対する処理結果情報を、中継サーバ２０から、ネットワーク１００を介して受信する機能を備える。ここで、マスタデータファイルに対する処理結果情報とは、送信したマスタデータファイルの受信結果情報と、データベースサーバ３０で運用中のマスタデータに対する、マスタデータファイルとのマージ処理結果情報である。
【００３５】
中継サーバ２０は、ネットワーク１００とネットワーク２００との両方に接続可能（通信可能）なワークステーション・サーバ等の情報処理装置である。中継サーバ２０は、ユーザ端末１０が送信したマスタデータファイルを受信し、受信したマスタデータファイルを、データベースサーバ３０へ送信する機能を備える。ユーザ端末１０が送信したマスタデータファイルを受信する際、中継サーバ２０は、マスタデータファイルを送信してきた端末がユーザ端末１０であることを確認する機能を備えており、且つ送信されてきたマスタデータファイルの暗号化を解除する機能も備える。尚、暗号化の解除（復号）自体は、一般的な手法を採用することができるので、本実施形態における詳細な説明は省略する。
【００３６】
また、中継サーバ２０は、データベースサーバ３０がネットワーク２００を介して送信してきた処理結果情報を受信し、受信した処理結果情報を、ネットワーク１００を介してユーザ端末１０へ送信する機能を備える。ここで、データベースサーバ３０が送信してくる処理結果情報とは、マスタデータファイルの受信結果情報と、データベースサーバ３０で運用中のマスタデータ３０１に対する、マスタデータファイルとのマージ処理結果情報である。
【００３７】
データベースサーバ３０は、ネットワーク１００等の公共の回線とは隔離された環境に設置されているワークステーション・サーバ等の情報処理装置である。データベースサーバ３０には、不図示の記憶媒体（ハードディスクドライブ等）に構築されたデータベースを運用すべく、マスタデータ３０１と、トランザクションデータ３０２とが読み書き可能に記憶されている。ここで、トランザクションデータ３０２は、マスタデータ３０１に基づいてデータベースサーバ３０の内外で実行された各種アプリケーション（機能）によって発生したデータである。
【００３８】
また、データベースサーバ３０は、中継サーバ２０からネットワーク２００を介して送信されたマスタデータファイルを受信する機能を備える。そして、データベースサーバ３０は、マスタデータファイルを受信するのに応じて、そのマスタデータファイルの受信結果情報を中継サーバ２０へ送信する。
【００３９】
また、データベースサーバ３０は、中継サーバ２０から受信したマスタデータファイルを、外部リンクテーブルとして自装置内のデータベースを参照することにより、その外部リンクテーブルと、現在運用中のマスタデータ３０１との内容を比較し、比較の結果、差異がある場合には当該外部リンクテーブルのデータを、当該運用中のマスタデータ３０１にマージする機能を備える（詳細は図１０等を参照して後述する）。
【００４０】
ここで、「外部リンクテーブル」とは、ユーザ端末１０にて作成されたマスタデータファイルを、データベースサーバ３０で保持しているデータベースの、外部情報を表すテーブルとしてリンクを張ったデータ（即ち、関連付けしたデータ）である。
【００４１】
運用中のマスタデータ３０１と、係る外部リンクテーブルとの内容の比較とは、例えば、外部リンクテーブルのデータが、運用中のマスタデータ３０１内に存在するか否かの判断、存在する場合におけるデータの変更や削除を行うか否か等を表す。マージ処理とは、外部リンクテーブルのデータを、運用中のマスタデータ３０１へ追加・変更・削除処理を実施することである。さらに、データベースサーバ３０は、このマージ処理結果情報を、ネットワーク２００を介して中継サーバ２０へ送信する機能を備えている。
【００４２】
次に、図３乃至図１０を参照して、本実施形態に係るデータベース管理システムの一連の動作について更に詳細に説明する。
【００４３】
図３は、本発明の実施形態に係るデータベース管理システムによるデータ管理処理の全体構成を示すフローチャートであり、ユーザ端末１０、中継サーバ２０、データベースサーバ３０がそれぞれ実行する処理の流れを表す。
【００４４】
まず、マスタデータ管理者は、ユーザ端末１０より、データベースサーバ３０で運用中のマスタデータに対する追加・修正・削除用のマスタデータファイルを作成する（ステップＳ１１）。係るマスタデータファイルを作成する際には、ユーザ端末１０が備えているマスタデータファイルの整合性確認機能を使用することにより、作成したマスタデータファイルの整合性を確認する（ステップＳ１２）。
【００４５】
図４は、本発明の実施形態に係るデータベース管理システムにおいて、ユーザ端末１０にて実行される整合性確認機能の手順を説明するフローチャートである。まず、ステップＳ５１において、ユーザ（マスタデータ管理者）は、図６及び図７を参照して後述する手段を利用してマスタデータファイルを作成する。
【００４６】
ここで、図５は、本発明の実施形態に係るデータベース管理システムにおいてデータベースサーバ３０が扱うデータベースに格納されているマスタテーブル（データ項目）を例示する図である。本実施形態では、一例として、教育機関において開設されている複数の講座を管理することを想定している。このため、図５に例示するマスタテーブルは、個々の講座を識別する識別番号（識別ＩＤ）に対して、「講座名」、「年度」、及び「講師名」なる各項目を含む。
【００４７】
図６は、ユーザが作成するマスタデータファイルのデータ項目を例示する図である。例えば、ＣＳＶ形式のマスタデータファイルを、一般的な帳票ソフトウェアを用いて手動で作成する場合、図６に示すように、各レコードの先頭にフラグＦＬを付け、それに続けて、変更対象のマスタの各項目（この場合、講座ＩＤ、講座名、年度、講師名）を記述する。
【００４８】
このフラグＦＬは、マスタデータファイルの各レコードがマスタデータ３０１に反映される際の処理種別を表す識別情報として機能する。即ち、新規でマスタデータを登録する際には、フラグＦＬを０に設定する。既存のマスタデータを更新する際には、フラグＦＬを０に設定する。そして、既存のマスタデータを削除する際には、フラグＦＬを１に設定する。フラグＦＬに続く各項目を記述する際には、各項目をカンマ”，”で区切る。これにより、マスタデータファイルとしての講座マスタデータを得る。
【００４９】
図７は、アプリケーションを使用してマスタデータファイルを作成する場合に、ユーザ端末１０が表示する画面を例示する図である。この表示画面は、マスタデータファイルをユーザが作成するに際してマンマシンインタフェース（ユーザインタフェース）として機能する。係るアプリケーションは、ユーザ端末１０にて実行されても、所謂Ｗｅｂアプリケーション等のような実行形式であってもよい。
【００５０】
マスタデータファイルとしての講座マスタデータをアプリケーションを用いて自動で作成する場合、図７（ａ）に例示するメインメニュー画面において、ユーザは、「講座マスタ」ボタン（ソフトウェアボタン）を押下する。これに応じて、ユーザ端末１０は、図７（ｂ）に例示する講座マスタ画面を表示するので、ユーザは、同画面において「マスタデータファイル作成・修正ボタン」を押下する。これに応じて、ユーザ端末１０は、図７（ｃ）に例示する講座マスタデータファイル作成画面を表示するので、ユーザは、所望の講座マスタの各項目を入力する。その際、「削除」チェックボックスにチェックを入れることで、チェックされた講座の削除を指定することができる。ユーザによる当該各項目の入力の後、同画面において「マスタデータファイル作成」ボタンを押下することで、ユーザ端末１０は、例えば図６と同様なデータ項目を有するマスタデータファイルを作成する。尚、図７（ｃ）に例示する講座マスタデータファイル作成画面において「戻る」ボタンが押下されるのに応じて、講座マスタ画面（図７（ｂ））へ遷移する。
【００５１】
ステップＳ５２において、ユーザ端末１０は、作成されたマスタデータファイルに対して、項目の文字数、文字の種類、日付などの入力形式が、データベースサーバ３０（データベース）に格納されたマスタデータ３０１の定義と一致しているか否かを判断する。この判断で不一致が検出された場合、ステップＳ５１にて当該マスタデータファイルの手直しがユーザによって行われることになる。
【００５２】
図８は、作成されたマスタデータファイルをアプリケーションを使用してチェックする場合に、ユーザ端末１０が表示する画面を例示する図である。
【００５３】
作成されたマスタデータファイルの内容を確認する際、ユーザは、図８（ａ）に例示する講座マスタ画面から「マスタデータファイル確認」ボタンを押下する。これに応じて、ユーザ端末１０は、当該マスタデータファイルを対象として、そのマスタデータファイル内に不具合が無ければ、図８（ａ）に例示する講座マスタ画面の破線枠内に、図８（ｂ）に例示する確認結果を表示し、問題がある場合は図８（ｃ）に例示する確認結果を表示する。マスタデータファイル内の問題の有無の確認は、文字列の形式チェックや、ｎｕｌｌの確認など、必要に応じて確認すればよい。
【００５４】
確認を終えたユーザは、マスタデータファイル内に問題があった場合、講座マスタ画面（図８（ａ））内の「マスタデータファイル作成・修正」ボタンを押下する。これに応じて、ユーザ端末１０は、講座マスタデータファイル作成画面（図７（ｃ））へ遷移する。この画面において、ユーザが「マスタデータファイル取込」ボタンを押下するのに応じて、ユーザ端末１０が既存のマスタデータファイルの内容を取り込むので、ユーザは、表示された画面を参照しながら、当該既存のマスタデータファイルの内容を修正することができる。
【００５５】
そして、作成されたマスタデータファイルの入力形式がマスタデータ３０１の定義と一致する場合、ステップＳ５３において、ユーザ端末１０は、そのマスタデータファイルを、中継サーバ２０に対して送信する。
【００５６】
図９は、整合性が確認されたマスタデータファイルを、アプリケーションを使用して中継サーバ２０に送信する際に、ユーザ端末１０が表示する画面を例示する図である。
【００５７】
上記の如く整合性が確認されたマスタデータファイルを、データベースサーバ３０のマスタデータ３０１にマージすることを希望するユーザは、ユーザ端末１０に表示された講座マスタ画面（図７（ｂ））において、「マスタデータファイル送付」ボタンを押下する。この「マスタデータファイル送付」ボタンは、マスタデータファイルの確認の結果、問題が無かった場合のみ押下することができることとする。そしてユーザ端末１０は、同ボタンの押下を検出するのに応じて、当該整合性が確認されたマスタデータファイルを、中継サーバ２０に送信する。この送信に応じて、中継サーバ２０は、ユーザ端末１０に受信結果情報を送信する（ステップＳ２２）ので、ユーザ端末１０は、受信した受信結果情報に応じて、図９（ｂ）に例示するようなメッセージ（送信に成功した場合）、或いは、図９（ｃ）に例示するようなメッセージ（送信に失敗した場合）を表示する。
【００５８】
即ち、マスタデータファイル（入力形式の整合性が確認されたマスタデータファイル）を受信した中継サーバ２０は、そのマスタデータファイルを、ネットワーク２００を介して、データベースサーバ３０へ送信する（ステップＳ２１）。係るマスタデータファイルを受信したデータベースサーバ３０は、マスタデータファイルの受信結果情報を、ネットワーク２００を介して、中継サーバ２０へ送信する（ステップＳ３１）。ステップＳ３１にて当該マスタデータファイルの受信結果情報を受信した中継サーバ２０は、その受信結果情報を、ネットワーク１００を介して、ユーザ端末１０へ送信する（ステップＳ２２）。
【００５９】
マスタデータ管理者（ユーザ）は、上述した図９（ｂ）または図９（ｃ）に例示するメッセージにより、当該マスタデータファイルのデータベースサーバ３０への送信結果を確認することができる。失敗だった場合、ユーザは、上記の如く当該マスタデータファイルの修正を行う（図７（ｃ））。
【００６０】
マスタデータファイルを受信したデータベースサーバ３０は、受信したマスタデータファイルを、外部リンクテーブルとして、データベースサーバ３０で保持しているデータベースに登録する（ステップＳ３２）。これにより、係るマスタデータファイルは、データベースサーバ３０で保持しているデータベースの、外部情報を表すテーブルとして、データベースサーバ３０の内部において関連付けされることになる。
【００６１】
データベースサーバ３０は、運用中のマスタデータ３０１と、係る外部リンクテーブルとのデータ内容を比較し、運用中のマスタデータ３０１に対して、係る外部リンクテーブルを構成するデータのマージ処理を実施する（ステップＳ３３）。マージ処理が成功した場合、ユーザ端末１０で作成されたマスタデータファイルは、データベースサーバ３０の記憶域に記憶され、一方、マージ処理が失敗した場合、ユーザ端末１０で作成されたマスタデータは、データベースサーバ３０の記憶域には記憶されない。
【００６２】
また、データベースサーバ３０は、ステップＳ３３にて実施したマージ処理の結果情報を、ネットワーク回線２００を介して中継サーバ２０へ送信する（ステップＳ３４）。マージ処理結果情報を受信した中継サーバ２０は、そのマージ処理結果情報を、ネットワーク１００を介してユーザ端末１０へ送信する（ステップＳ２３）。マスタデータ管理者（ユーザ）は、ステップＳ２３でユーザ端末１０に対して送信されてきたマージ処理結果情報により、先に送信したところの、入力形式の整合性が確認されたマスタデータファイルに対するマージ処理結果を確認する。このマージ処理結果が失敗であった場合、マスタデータ管理者は、マスタデータファイルの作成や修正（ステップＳ１１）を再度行うことになる。
【００６３】
ここで、データベースサーバ３０による上記ステップＳ３２からステップＳ３４までの処理の詳細について、図１０を参照して詳細に説明する。図１０は、本実施形態においてデータベースサーバ３０が実行する、マスタデータファイルのマージ処理を示すフローチャートである。
【００６４】
データベースサーバ３０は、入力形式の整合性が確認されたマスタデータファイルを、外部リンクテーブルとして、データベースサーバ３０で保持しているデータベースに登録する（ステップＳ１０１）。
【００６５】
次に、データベースサーバ３０は、運用中のマスタデータ３０１と、外部リンクテーブル（受信したマスタデータファイル）とのデータ内容を比較し、比較の結果、両者に差異がある場合は、運用中のマスタデータ３０１に対して、当該外部リンクテーブルのデータをマージする処理を行う。この処理のために、データベースサーバ３０は、ステップＳ１０２からステップＳ１０９までの各ステップの処理を、当該マスタデータファイルを構成するレコード（データ）の件数分だけ繰り返す。
【００６６】
即ち、データベースサーバ３０は、まず、外部リンクテーブル内のデータを一件づつ抽出し、抽出したデータのフラグＦＬの状態を確認する（ステップＳ１０１）。この確認の結果、フラグＦＬが”１”の場合、データベースサーバ３０は、運用中のマスタデータ３０１から、対象データを削除する（削除処理：ステップＳ１０７）。
【００６７】
一方、フラグＦＬが”０”の場合、データベースサーバ３０は、運用中のマスタデータ３０１の中に、外部リンクテーブルから抽出した対象データが存在するか否かを確認する（ステップＳ１０４）。この確認の結果、運用中のマスタデータ３０１内に、当該対象データが存在した場合、運用中のマスタデータ３０１に対して、当該対象データを上書きすることによってアップデートする（更新処理：ステップＳ１０５）。
【００６８】
一方、運用中のマスタデータ３０１内に、当該対象データが存在しない場合、データベースサーバ３０は、運用中のマスタデータ３０１に対して、当該対象データを新たに挿入する（挿入処理：ステップＳ１０６）。
【００６９】
そして、データベースサーバ３０は、ステップＳ１０５乃至ステップＳ１０７の処理結果を確認し、処理が成功している場合には外部リンクテーブルから次に処理対象とするデータを抽出し、上述したステップＳ１０３移行の処理ループを続行する。一方、係る処理結果の確認の結果、処理が失敗したことが確認された場合、データベースサーバ３０は、処理結果（マージ処理結果情報）を、中継サーバ２０に送信する（ステップＳ１１１）。
【００７０】
ステップＳ１０８の判断において処理結果が成功であって、且つ外部リンクテーブル内に次に処理対象とするデータが無くなった場合、データベースサーバ３０は、一連のループ処理を終了して、ステップＳ１１０を実行する。ステップＳ１１０において、データベースサーバ３０は、当該外部リンクテーブル（マスタデータファイル）内のデータを全て削除する。これにより、同一のマージ処理を何度も実施することを防ぐことができる。そして、データベースサーバ３０は、処理結果（マージ処理結果情報）を、中継サーバ２０に送信する（ステップＳ１１１）。
【００７１】
ここで、データベースサーバ３０にて運用中のマスタデータ３０１と、中継サーバ２０を介して受信したマスタデータファイルとを比較及びマージする処理のタイミングとしては、当該マスタデータファイルの受信後の所定の時間毎（例えば、１時間毎、本データベース管理システムが休止している夜間の指定時刻等）に実行すればよい。或いは、係る比較及びマージする処理のタイミングは、マスタデータファイルに記述されているデータ量に応じて、データベースサーバ３０が自動的に調整してもよい。係る比較及びマージする処理は、トランザクションデータ３０２に対してではなく、マスタデータ３０１に対する処理であるため、本データベース管理システムやデータベースサーバ３０が参照される各種サービスが休止するのを待つ必要は無い。但し、マスタデータ３０１内の数値を利用してトランザクションデータ３０２を作成する等のサービス（処理）が行われている場合、図１０を参照して上述した一連の処理は行うべきではない。
【００７２】
以上説明した本実施形態によれば、データベースのマスタデータ管理者は、インターネット経由でマスタデータの更新を実施することができ、運用中のマスタデータを直接変更せずに、マスタデータ定義との整合性を確認しながら、マスタデータを更新することができる。即ち、運用中のマスタデータを直接変更できない通信環境におかれているマスタデータ管理者であっても、本実施形態に係るデータベース管理システムによれば、マスタデータ３０１の更新作業を、インターネット等の一般的なネットワーク１００に接続可能なユーザ端末１０を用いて容易に行うことができる。
【００７３】
また、本実施形態におて、マスタデータ管理者がマスタデータファイルをデータベースサーバへ送信する際に接続するネットワークは、公共なインターネットでも可能である。このため、データベースのマスタデータを管理するだけのために、データベースサーバが接続しているネットワークに、マスタデータ管理者のユーザ端末を接続する回線を用意する必要がないので経済的である。
【符号の説明】
【００７４】
１０    ユーザ端末
１１    マスタデータファイル作成部
１２    送信部
２０    中継サーバ
３０    データベースサーバ
３１    マスタデータ更新部
３２    マスタデータ
３３    データベース（ＤＢ）
１００    通信ネットワーク（インターネット）
２００    通信ネットワーク（イントラネット）
３０１    マスタデータ
３０２    トランザクションデータ
【図１】
2012160049.tif 000003
【図２】
2012160049.tif 000004
【図３】
2012160049.tif 000005
【図４】
2012160049.tif 000006
【図５】
2012160049.tif 000007
【図６】
2012160049.tif 000008
【図７】
2012160049.tif 000009
【図８】
2012160049.tif 000010
【図９】
2012160049.tif 000011
【図１０】
2012160049.tif 000012