(57)【要約】  【課題】  ＷＥＢブラウザをユーザインターフェースとして、複数かつ多くのデータベースにアクセスを行うシステムの設計時において、ある処理を行った際に正常にデータベースへのアクセスが行われ、正しくデータの登録及び更新が行われたことをテストする作業は、非常に多くのＳＱＬを発行しなければならなかったりする等、負担、手間が多く、容易な作業ではなかった。  【解決手段】  本発明は、表示画面のＨＴＭＬソースから、キーとすべき項目とその値を取得し、各種データベースを定義するテーブルと、テーブル間の関連付けを設定するテーブルを参照して、取得した値に対応付けられる全ての値を全てのデータベースから取得して、表示し、データベースシステムの検証作業を支援するものである。【選択図】  図１
2007004447.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、複数のデータベースからデータを取得させるためのプログラムであって、
前記コンピュータに、
入力された１の項目名に基づいて、テーブル名と該テーブルが有する１以上の項目名とを対応付けて記憶しているテーブル定義テーブルを参照して、前記１の項目名を有する第一のテーブル名を抽出する第一テーブル抽出機能と、
共通の項目を有することにより関係付けられている２つのテーブルを対応付けて記憶しているテーブルリンクテーブルを参照して、前記第一のテーブル名に基づいて、対応付けられている関連テーブルを抽出し、さらに該関連テーブルに対応付けられている他の関連テーブルがある場合にはすべての該関連テーブルを抽出する関連テーブル抽出機能と、  
前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得し、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するデータ取得機能と、
を機能させるためのデータベースシステムテストプログラム。
【請求項２】
コンピュータが、複数のデータベースからデータを取得する方法であって、
前記コンピュータは、
入力された１の項目名に基づいて、テーブル名と該テーブルが有する１以上の項目名とを対応付けて記憶しているテーブル定義テーブルを参照して、前記１の項目名を有する第一のテーブル名を抽出する第一テーブル抽出ステップと、
共通の項目を有することにより関係付けられている２つのテーブルを対応付けて記憶しているテーブルリンクテーブルを参照して、前記第一のテーブル名に基づいて、対応付けられている関連テーブルを抽出し、さらに該関連テーブルに対応付けられている他の関連テーブルがある場合にはすべての該関連テーブルを抽出する関連テーブル抽出ステップと、
前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得し、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するデータ取得ステップと
を有することを特徴とするデータベースシステムテスト方法。
【請求項３】
複数のデータベースからデータを取得する装置であって、
入力された１の項目名に基づいて、テーブル名と該テーブルが有する１以上の項目名とを対応付けて記憶しているテーブル定義テーブルを参照して、前記１の項目名を有する第一のテーブル名を抽出する第一テーブル抽出手段と、
共通の項目を有することにより関係付けられている２つのテーブルを対応付けて記憶しているテーブルリンクテーブルを参照して、前記第一のテーブル名に基づいて、対応付けられている関連テーブルを抽出し、さらに該関連テーブルに対応付けられている他の関連テーブルがある場合にはすべての該関連テーブルを抽出する関連テーブル抽出手段と、  
前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得し、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するデータ取得手段と、
を備えることを特徴とするデータベースシステムテスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータに複数のデータベースからデータを取得させるためのプログラムに関する。
【背景技術】
【０００２】
ＷＥＢブラウザをユーザインターフェースとして、複数かつ多くのデータベースにアクセスを行うシステムの設計時において、ある処理を行った際に正常にデータベースへのアクセスが行われ、正しくデータの登録及び更新が行われたことをテストする作業がある。かかるテストを行うに際して、ある処理を行ったときに影響が及ぶ全てのデータベースに対してＳＱＬ（Ｓｔｒｕｃｔｕｒｅ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）を発行してデータの検証を行わなければならないが、ＳＱＬを発行するためにはデータベース検索ツール等により検索をしたり、非常に多くのＳＱＬを発行しなければならなかったりする等、負担、手間が多く、容易な作業ではなかった。
【０００３】
かかる作業を行う方法の類似技術として、例えば特許文献１には、スクリプトとして検索内容を指定するＳＱＬを用いたデータベースの検索を可能にする技術が記載されている。
【特許文献１】特開平１１−３２８１９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来の技術によっては、複数の関連するデータベースから横断的にデータを取得することは不可能である。そこで、本発明は、上記したようなテスト作業において、複数かつ多くのデータベースから関連付けられるすべてのデータを横断的に取得し、システムの検証作業を容易にすることを目的とする。
【課題を解決するための手段】
【０００５】
本発明のデータベースシステムテストプログラムは、入力された１の項目名に基づいて、テーブル名と該テーブルが有する１以上の項目名とを対応付けて記憶しているテーブル定義テーブルを参照して、前記１の項目名を有する第一のテーブル名を抽出する第一テーブル抽出機能と、共通の項目を有することにより関係付けられている２つのテーブルを対応付けて記憶しているテーブルリンクテーブルを参照して、前記第一のテーブル名に基づいて、対応付けられている関連テーブルを抽出し、さらに該関連テーブルに対応付けられている他の関連テーブルがある場合にはすべての該関連テーブルを抽出する関連テーブル抽出機能と、前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得し、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するデータ取得機能とをコンピュータに実現させ、複数のデータベースからデータを取得させるものである。
【発明の効果】
【０００６】
以上説明したように、本発明によれば、複数かつ多くのデータベースにアクセスを行うシステムの設計作業において、ある処理を行った際に影響が及ぶデータベースのすべてのレコード、データ値を取得して表示することが可能になり、当該処理の検証作業が非常に容易になる。
【発明を実施するための最良の形態】
【０００７】
本発明の実施の形態について図面により説明する。
【０００８】
図１に本発明の構成の１例を示す。図１に示される実施の形態は、サーバ５に構成する伝票登録システム６の設計、検証作業をクライアント１から行う場面におけるものである。なお、サーバ５及びクライアント１はいずれもコンピュータにより構成されるものである５及びクライアント１はいずれもコンピュータにより構成されるものである。
【０００９】
クライアント１は、本発明にかかるデータベースシステムテストプログラム２、テーブル定義テーブル３及びテーブルリンクテーブル４を備えている。テーブル定義テーブル３は、検証対象である伝票登録システム６が備えているすべてのテーブルを定義、記憶しているものである。テーブルリンクテーブル４は、伝票登録システム６が備えているすべてのテーブルに関して、テーブル間の関係付けを記憶しているものである。これらのテーブルは検証作業に先立って予め準備、設定しておくものである。
【００１０】
サーバ５は、ネットワーク７を介してクライアント１と接続されており、検証対象である伝票登録システム６を備えている。ここに示す実施の形態においては、検証対象のシステムをサーバ５に構成し、ネットワーク７を介してクライアント１から検証作業を行う構成としたが、検証対象システムと本発明にかかるデータベースシステムテストプログラム２とを同一のコンピュータに備える構成とすることを排除するものではない。伝票登録システム６には、伝票テーブル６１、伝票ステータステーブル６２、仕訳テーブル６３及び管理メッシュテーブル６４を備えているものとする。
【００１１】
図３乃至図５にテーブルの詳細を示す。
【００１２】
図３にテーブル定義テーブル３の例を示す。テーブル定義テーブル３は、検証対象のシステムである伝票登録システム６が備えるすべてのテーブルのテーブル名３１、各テーブルの項目名３２を対応付けて記憶しているものである。例えば、伝票テーブルは、その項目として、会計年月日、受付番号、伝票番号等の項目を有していることを示している。これらの内容は、伝票登録システム６の検証作業に先立って、予め準備しておくものである。
【００１３】
図４にテーブルリンクテーブル４の例を示す。テーブルリンクテーブル４はテーブル間の関連付けを示すものであり、テーブル名４１に記憶されているテーブルは、共通項目４２を介して関連テーブル４３と関連付けられていることを示す。例えば、テーブル名４１に登録されている伝票テーブルは、関連テーブル４３に登録されている伝票ステータステーブルと、共通項目４２の受付番号により関連付けられていることを示している。テーブルリンクテーブル４についても、懸賞作業に先立ち、予め準備しておくものである。
【００１４】
図５には、伝票登録システム６が備える各テーブルの内容の例を示す。
【００１５】
次に、本発明にかかるデータベースシステムテストプログラム２の処理の説明に先立って、検証対象である伝票登録システム６の概要について説明する。
【００１６】
伝票登録システム６は、入力された伝票の内容を登録、管理するものである。図６及び図７に示す登録画面から、操作者が各項目の内容を入力し、登録操作を行うことにより、新規に伝票番号を採番し、入力された内容が図５に示す各テーブルに登録される。
【００１７】
次に、図２に示すデータベースシステムテストプログラムの処理フロー図と併せて、検証作業の流れの詳細を説明する。
【００１８】
図６及び図７に示す入力画面に対して操作者が各項目を入力し、登録操作を行うと伝票登録システムが自動的に新規の伝票番号を採番した上で、図５に示すテーブルに各データを登録し、図８（ａ）に示す画面を操作者に対して表示し、登録が完了した旨を示す。本発明は、この時点において、入力したデータが、検証対象システム、すなわち伝票登録システムの各データベース及びテーブル等に正しく登録されていることを確認するためのものである。従って、かかる目的の達成のために従来技術により入力画面をハードコピーし保存しておき、後に表示する仕組みを併せ持つ構成とすることが効果的である。
【００１９】
図８（ｂ）は、図８（ａ）に示す登録が完了した旨を示す画面を表示するためのＨＴＭＬソースの例である。本発明はこのＨＴＭＬソースを起点として、検証すべき全てのデータを得ることを特徴としている。
【００２０】
図２のステップＳ２１では、図８（ｂ）に示すＨＴＭＬソースから、キーとなる項目名とその値を取得する。具体的には、「ＩＤ」の識別子に対応付けられている「伝票番号」をキーとすべき項目として認識し、伝票番号の値としてシステムが自動的に採番した「１１２４」の値を取得する。
【００２１】
ステップＳ２２では、テーブル定義テーブル３を参照して、ステップＳ２１で取得したキーとする項目を有するテーブル名を取得する。具体的には、ステップＳ２１で「伝票番号」をキーとする項目として取得しているので、テーブル定義テーブル３の項目名３２を検索し、テーブル名３１に記憶されている「伝票テーブル」を、「伝票番号」を項目名３２として有しているテーブルとして取得する。
【００２２】
ステップＳ２３では、ステップＳ２２で取得したテーブルから、ステップＳ２１で取得した項目及び当該項目の値に基づいて、対応付けられている他の項目の全ての値を取得するためのＳＱＬを生成する。具体的には、「伝票テーブル」から、項目「伝票番号」の値が「１１２４」であるレコードの他の項目の全ての値を取得すべく、図９（ａ）に示すＳＱＬを生成する。
【００２３】
ステップＳ２４では、ステップＳ２３で生成したＳＱＬを発行して、データを取得する。具体的には、図５（ａ）に示す「伝票テーブル」から、「伝票番号」の値が「１１２４」であるレコードで対応付けられている他の項目の全ての値、「会計年月日」の値として「２００４０９３０」、「受付番号」の値として「１０２０」、「伝票摘要」の値として「摘要入力項目」等を取得する。
【００２４】
ステップＳ２５では、テーブルリンクテーブル４を参照して、ステップＳ２２で取得したテーブルに共通項目４２を介してリンクしているテーブルを抽出する。具体的には、テーブル名４１の「伝票テーブル」には共通項目４２の「受付番号」を介して関連テーブルとして「伝票ステータステーブル」がリンクされており、同じく共通項目４２の「受付番号」を介して関連テーブル４３の「仕訳テーブル」がリンクされており、さらに、ここで抽出した「仕訳テーブル」には共通番号４２の「受付番号」と「貸借区分」を介して関連テーブル４３の「管理メッシュテーブル」がリンクされており、これらのテーブル全てを抽出する。
【００２５】
ステップＳ２６では、ステップＳ２５で抽出した全てのテーブルから、ステップＳ２１で取得した項目及び値に共通項目４２を介して対応付けられる全ての値を取得するためのＳＱＬを生成する。具体的には図９（ｂ）に示すＳＱＬを抽出する。例えば、伝票ステータステーブル６２は、伝票テーブル６１と「受付番号」を介してリンクしており、伝票テーブル６１の「受付番号」の値が「１０２０」であることから、伝票ステータステーブル６２の「受付番号」が「１０２０」のレコードの他のすべての項目の値を取得するためのＳＱＬを生成する。伝票仕訳テーブル６３及び管理メッシュテーブル６４についても同様である。
【００２６】
ステップＳ２７では、ステップＳ２６で生成したすべてのＳＱＬを発行してデータを取得し、取得したデータをクライアントが備える表示装置の表示画面に表示する。その表示の例を図１０に示す。操作者はこの表示により、本実施の形態の例の伝票登録システムにおいて、登録処理を行った際に所望のデータが各データベースに登録されたか否かを確認することができる。
【００２７】
以上がデータベースシステムテストプログラム２による処理の内容である。かかる機能により、各データベースに登録された値の確認を容易に行うことができるが、例えば、伝票登録システムにおいて、登録した伝票の内容の変更処理を行った場合には、上記したデータベースシステムテストプログラム２による処理を変更前と変更後の２回行い、その結果を合わせて表示することで、変更部分の確認を容易に行うことができる。図１１の例では、伝票ステータステーブル６２の「承認状態」の値と、仕訳テーブル６３の「貸借区分」の値が変更されているのを確認することができる。また、前記したように、入力画面のハードコピーを予め保存しておき、図１０に示す画面の内容と併せて表示することにより、入力した値と登録された値との整合の確認を容易に行うことができる。
【００２８】
なお、図示はしていないが、クライアント１、サーバ５は、ＣＰＵ（Central Processing Unit）によって装置全体が制御されているコンピュータである。ＣＰＵには、バスを介してＲＡＭ（Random Access Memory）、ハードディスク装置（ＨＤＤ）、グラフィック処理部、入力インタフェース、および通信インタフェース等が接続されている。
【００２９】
ＲＡＭには、ＣＰＵに実行させるＯＳ(Operating System)のプログラムやその他のプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭには、ＣＰＵによる処理に必要な各種データが格納される。ＨＤＤには、ＯＳやその他のプログラムおよびデータが格納される。
【００３０】
グラフィック処理部には、モニタ装置が接続されている。グラフィック処理部は、ＣＰＵからの命令に従って入力画面などをモニタ装置に表示させる。入力インタフェースには、キーボードやマウス等が接続されている。入力インタフェースは、キーボードやマウス等から送られてくる信号を、バスを介してＣＰＵに送信する。
【００３１】
通信インタフェースは、ネットワーク７に接続されている。通信インタフェースは、ネットワーク７を介してサーバ５、クライアント１の間で、相互にデータの送受信を行う。
【００３２】
本発明の実施の形態に係るデータベースシステムテストプログラム２を上述のクライアント１のコンピュータで実行させることによって、コンピュータをデータベースシステムテスト装置として機能させることができる。
【００３３】
また、上記のコンピュータが有すべき機能の処理内容は、コンピュータで読み取り可能な記録媒体に記録されたプログラムに記述させておくことができる。このプログラムをコンピュータで実行することにより、上記処理がコンピュータで実現できる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置や半導体メモリなどがある。市場に流通させる場合には、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）やフレキシブルディスクなどの可搬型記録媒体にプログラムを格納して流通させたり、ネットワークを介して接続されたコンピュータの記憶装置に格納しておき、ネットワークを通じて他のコンピュータに転送したりすることもできる。コンピュータで実行する際には、コンピュータ内のハードディスク装置などにプログラムを格納しておき、メインメモリにロードして実行する。
【００３４】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【００３５】
本発明は、以下に記載する付記のような構成が考えられる。
【００３６】
（付記１）コンピュータに、複数のデータベースからデータを取得させるためのプログラムであって、
前記コンピュータに、
入力された１の項目名に基づいて、テーブル名と該テーブルが有する１以上の項目名とを対応付けて記憶しているテーブル定義テーブルを参照して、前記１の項目名を有する第一のテーブル名を抽出する第一テーブル抽出機能と、
共通の項目を有することにより関係付けられている２つのテーブルを対応付けて記憶しているテーブルリンクテーブルを参照して、前記第一のテーブル名に基づいて、対応付けられている関連テーブルを抽出し、さらに該関連テーブルに対応付けられている他の関連テーブルがある場合にはすべての該関連テーブルを抽出する関連テーブル抽出機能と、  
前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得し、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するデータ取得機能と、
を機能させるためのデータベースシステムテストプログラム。（１）
（付記２）  前記１の項目名と該項目名に対応付けられたデータ値として用いるために、ＨＴＭＬ（）言語により記述されたデータベースシステムにおける表示画面を構成するためのソースファイルから、所定の識別子に対応付けられている項目名と、該項目名に対応付けられているデータ値とを抽出する入力データ抽出機能を、さらに機能させることを特徴とする付記１記載のデータベースシステムテストプログラム。
（付記３）前記データ取得機能は、前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得するためのＳＱＬ（）と、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するためのＳＱＬを生成し、発行することを特徴とする付記１又は付記２記載のデータベースシステムテストプログラム。
（付記４）前記データ取得機能により取得したデータを表示する表示機能を、さらに機能させることを特徴とする付記１乃至付記３記載のデータベースシステムテストプログラム。
（付記５）コンピュータが、複数のデータベースからデータを取得する方法であって、
前記コンピュータは、
入力された１の項目名に基づいて、テーブル名と該テーブルが有する１以上の項目名とを対応付けて記憶しているテーブル定義テーブルを参照して、前記１の項目名を有する第一のテーブル名を抽出する第一テーブル抽出ステップと、
共通の項目を有することにより関係付けられている２つのテーブルを対応付けて記憶しているテーブルリンクテーブルを参照して、前記第一のテーブル名に基づいて、対応付けられている関連テーブルを抽出し、さらに該関連テーブルに対応付けられている他の関連テーブルがある場合にはすべての該関連テーブルを抽出する関連テーブル抽出ステップと、
前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得し、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するデータ取得ステップと
を有することを特徴とするデータベースシステムテスト方法。
（付記６）複数のデータベースからデータを取得する装置であって、
入力された１の項目名に基づいて、テーブル名と該テーブルが有する１以上の項目名とを対応付けて記憶しているテーブル定義テーブルを参照して、前記１の項目名を有する第一のテーブル名を抽出する第一テーブル抽出手段と、
共通の項目を有することにより関係付けられている２つのテーブルを対応付けて記憶しているテーブルリンクテーブルを参照して、前記第一のテーブル名に基づいて、対応付けられている関連テーブルを抽出し、さらに該関連テーブルに対応付けられている他の関連テーブルがある場合にはすべての該関連テーブルを抽出する関連テーブル抽出手段と、  
前記１の項目名に対応付けられて入力されたデータ値に、前記第一テーブルにおいて対応付けられているすべての項目のデータ値を取得し、前記関連テーブル抽出機能により抽出した１以上の関連テーブルから、前記共通の項目を介して前記入力されたデータ値に対応づけられているすべてのデータ値を取得するデータ取得手段と、
を備えることを特徴とするデータベースシステムテスト装置。
【図面の簡単な説明】
【００３７】
【図１】本発明を実現するための構成図である。
【図２】データベースシステムテストプログラムの処理を説明するためのフローチャートである。
【図３】テーブル定義テーブルの例を図示したものである。
【図４】テーブルリンクテーブルの例を図示したものである。
【図５】伝票登録システムが備える各種テーブルの例を図示したものである。
【図６】伝票登録システムにおける登録画面の例を図示したものである。
【図７】伝票登録システムにおける登録画面の例を図示したものである。
【図８】伝票登録システムにおける登録完了画面及びそのＨＴＭＬソースの例を図示したものである。
【図９】データベースシステムテストプログラムが生成したＳＱＬの例を図示したものである。
【図１０】データベースシステムテストプログラムが取得したデータを表示する画面の例を図示したものである。
【図１１】データベースシステムテストプログラムが取得したデータを表示する画面の例を図示したものである。
【符号の説明】
【００３８】
１    クライアント
２    データベースシステムテストプログラム
３    テーブル定義テーブル
３１  テーブル名
３２  項目名
４    テーブルリンクテーブル
４１  テーブル名
４２  共通項目
４３  関連テーブル
５    サーバ
６    伝票登録システム
６１  伝票テーブル
６２  伝票ステータステーブル
６３  仕訳テーブル
６４  管理メッシュテーブル
７    ネットワーク
【図１】
2007004447.tif 000003
【図２】
2007004447.tif 000004
【図３】
2007004447.tif 000005
【図４】
2007004447.tif 000006
【図５】
2007004447.tif 000007
【図６】
2007004447.tif 000008
【図７】
2007004447.tif 000009
【図８】
2007004447.tif 000010
【図９】
2007004447.tif 000011
【図１０】
2007004447.tif 000012
【図１１】
2007004447.tif 000013