(57)【要約】【課題】本発明では、Ｗｅｂ型アプリケーションシステムに対し、データベースの更新履歴において実際に操作したユーザ等の情報を照会できる仕組みを提供することを目的とする。【解決手段】  クライアント端末からの要求に従ってデータベースを更新するためにアプリケーションがデータベースにログインする時にＤＢ接続情報記録テーブルに接続情報を記録し、クラアプリケーションがデータベースを更新する時にデータベースの更新内容を記録テーブルに記録し、ＤＢ接続情報記録テーブルと記録テーブルを結合して検索することにより、実際に操作を実施したユーザ等の情報を照会する。【選択図】図１
2017134636.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末からの要求に従ってアプリケーションを実行するアプリケーションサーバと、前記アプリケーションのデータベースを管理するデータベースサーバとを含む情報処理システムであって、
前記アプリケーションサーバは、
前記アプリケーションによる前記データベースへのアクセス時に、前記クライアント端末から当該アプリケーションサーバへの接続に関する接続情報を生成する生成手段と、
前記生成した接続情報をデータベースサーバに送信する送信手段と、
を備え、
前記データベースサーバは、
前記送信された前記接続情報を、前記アプリケーションによる前記データベースへの前記アクセスに対応づけたアクセス情報を記録する記録手段と、
を備えることを特徴とする情報処理システム。
【請求項２】
前記接続情報は、前記アプリケーションにログインしているユーザの識別情報と、前記クライアント端末の識別情報とを含む
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記データベースサーバは、更に、
前記データベースの更新内容を記録する更新内容記録手段と、
前記更新内容と前記アクセス情報とを対応付けて出力する出力手段と
を備えることを特徴とする請求項１または２に記載の情報処理システム。
【請求項４】
前記出力手段は、前記更新内容と前記アクセス情報とがそれぞれ持つ時間情報とセッションＩＤにより、前記更新内容と前記アクセス情報とを対応付ける
ことを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記データベースサーバは、更に、
前記データベースが持つテーブルの指定を受け付ける受付手段
を備え、
前記更新内容は、前記指定を受け付けたテーブルのデータに対する追加、更新および削除による更新結果である
ことを特徴とする請求項３または４に記載の情報処理システム。
【請求項６】
クライアント端末からの要求に従ってアプリケーションを実行するアプリケーションサーバと、前記アプリケーションのデータベースを管理するデータベースサーバとを含む情報処理システムの制御方法であって、
前記アプリケーションサーバは、
生成手段が、前記アプリケーションによる前記データベースへのアクセス時に、前記クライアント端末から当該アプリケーションサーバへの接続に関する接続情報を生成する生成ステップと、
送信手段が、前記生成した接続情報をデータベースサーバに送信する送信ステップと、
を備え、
前記データベースサーバは、
記録手段が、前記送信された前記接続情報を、前記アプリケーションによる前記データベースへの前記アクセスに対応づけたアクセス情報を記録する記録ステップと、
を備えることを特徴とする情報処理システムの制御方法。
【請求項７】
クライアント端末からの要求に従ってアプリケーションを実行するアプリケーションサーバと、前記アプリケーションのデータベースを管理するデータベースサーバとを含む情報処理システムにおいて実行可能なプログラムであって、
前記アプリケーションサーバを、
前記アプリケーションによる前記データベースへのアクセス時に、前記クライアント端末から当該アプリケーションサーバへの接続に関する接続情報を生成する生成手段と、
前記生成した接続情報をデータベースサーバに送信する送信手段
として機能させ、
前記データベースサーバを、
前記送信された前記接続情報を、前記アプリケーションによる前記データベースへの前記アクセスに対応づけたアクセス情報を記録する記録手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースサーバで管理されているテーブルに対する更新内容を記録し照会する技術に関する。
【背景技術】
【０００２】
近年のシステムでは、データベースが必須の要素機能となっている。その中でも特に、リレーショナルデータベース（ＲＤＢ）が世の中で広く使用されている。
【０００３】
システムにおけるデータベースの利用用途としては、整合性の取れたデータを保管する器として使用され、アプリケーション等のプログラムから、照会、更新等の要求に対する処理の実行または、結果を提示するサービスを提供している。
【０００４】
ただし、データベースへのアクセスは、ＳＱＬという言語によってアクセスがなされ、データベース内で格納されているデータがどのように更新されているかは、ブラックボックス化され、更新内容を網羅的に把握することは、現状、困難である。
【０００５】
尚、ここで述べる更新内容とは、いつ、だれが（ユーザＩＤやユーザ名）、どこで（コンピュータ名）、どのプログラムが（プログラム名）、どのテーブルに（テーブル名）、どういう操作を（Ｉｎｓｅｒｔ、Ｕｐｄａｔｅ、Ｄｅｌｅｔｅ）、どういう順で（連続番号で管理）、どのレコードに対して（テーブルのレコードデータ）、どのようなデータ項目に登録されている値を、どのような値に更新したか、あるいは更新されたレコードの該当項目以外の項目の値はどのような値であったか、といった事を特定することを示している。
【０００６】
そこで、特許文献１では、業務端末におけるアプリケーションの実行タイミングに合わせて、データベースサーバのアプリケーションテーブルへの更新処理が発生した時に、記録装置によりデータベースの更新内容を記録テーブルに記録し、該記録テーブルに基づいて該アプリケーションテーブルの更新内容を照会する技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−２９８９９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
アプリケーションシステムは現状、スタンドアロン型、クライアント・サーバ型、Ｗｅｂ型に分類される。スタンドアロン型はユーザ操作を受け付ける端末、プログラムを実行する装置、データベースを管理する装置が一体となった一階層構造である。クライアント・サーバ型は、クライアントにてユーザ操作を受け付けてプログラム実行し、サーバにてクライアントからの要求を受けて主にデータベース管理を実行する二階層構造である。Ｗｅｂ型は、クライアントのＷｅｂブラウザからユーザ操作を受け付け、アプリケーションサーバにてプログラム（Ｗｅｂアプリケーション）を実行し、データベースサーバにてデータベース管理を実行する三階層構造、またはそれ以上の数の階層構造を持つ。
【０００９】
特許文献１に記載の技術では、スタンドアロン型、または、クライアント・サーバ型のアプリケーションシステムにおいては、ユーザがアプリケーションプログラムを通じて実施した更新処理に対して、実際に操作したユーザ（ユーザ）や使用したコンピュータ名（ホスト）、直接データベースを更新したプログラム名（プログラム）を記録することができるが、Ｗｅｂ型においては、ユーザが操作したクライアントとデータベースサーバの間にアプリケーションサーバが存在し、Ｗｅｂアプリケーションを介してデータベースの更新を実施するため、実際のユーザやホスト、プログラムの情報を記録することができない。特許文献１に記載の技術では、記録される内容は、ユーザはアプリケーションプログラムがデータベースアクセス用に使用する特定のユーザ、ホストはアプリケーションサーバのコンピュータ名、プログラムはＷｅｂアプリケーションを実行している基盤であるサーバプログラムの名称または種類となる。このため、実際に操作したユーザ等の情報を照会することができない。
【００１０】
そこで本発明では、Ｗｅｂ型アプリケーションシステムに対し、データベースの更新履歴において実際に操作したユーザ等の情報を照会できる仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の情報処理システムは、クライアント端末からの要求に従ってアプリケーションを実行するアプリケーションサーバと、前記アプリケーションのデータベースを管理するデータベースサーバとを含む情報処理システムであって、前記アプリケーションサーバは、前記アプリケーションによる前記データベースへのアクセス時に、前記クライアント端末から当該アプリケーションサーバへの接続に関する接続情報を生成する生成手段と、前記生成した接続情報をデータベースサーバに送信する送信手段と、を備え、前記データベースサーバは、前記送信された前記接続情報を、前記アプリケーションによる前記データベースへの前記アクセスに対応づけたアクセス情報を記録する記録手段と、を備えることを特徴とする。
【００１２】
本発明の制御方法は、クライアント端末からの要求に従ってアプリケーションを実行するアプリケーションサーバと、前記アプリケーションのデータベースを管理するデータベースサーバとを含む情報処理システムの制御方法であって、前記アプリケーションサーバは、生成手段が、前記アプリケーションによる前記データベースへのアクセス時に、前記クライアント端末から当該アプリケーションサーバへの接続に関する接続情報を生成する生成ステップと、送信手段が、前記生成した接続情報をデータベースサーバに送信する送信ステップと、を備え、前記データベースサーバは、記録手段が、前記送信された前記接続情報を、前記アプリケーションによる前記データベースへの前記アクセスに対応づけたアクセス情報を記録する記録ステップと、を備えることを特徴とする。
【００１３】
本発明のプログラムは、クライアント端末からの要求に従ってアプリケーションを実行するアプリケーションサーバと、前記アプリケーションのデータベースを管理するデータベースサーバとを含む情報処理システムにおいて実行可能なプログラムであって、前記アプリケーションサーバを、前記アプリケーションによる前記データベースへのアクセス時に、前記クライアント端末から当該アプリケーションサーバへの接続に関する接続情報を生成する生成手段と、前記生成した接続情報をデータベースサーバに送信する送信手段として機能させ、前記データベースサーバを、前記送信された前記接続情報を、前記アプリケーションによる前記データベースへの前記アクセスに対応づけたアクセス情報を記録する記録手段として機能させることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、Ｗｅｂ型アプリケーションシステムに対し、データベースの更新履歴において実際に操作したユーザ等の情報を照会できるようになる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態における情報処理システムの構成を示す図である。
【図２】本発明の実施形態における情報処理システムを構成する各装置のハードウェア構成を示す図である。
【図３】本発明の実施形態における作業の流れを示すフロー図である。
【図４】本発明の実施形態における全体の概略処理を示すフロー図である。
【図５】本発明の実施形態における記録用テーブルの構成を示す構成図である。
【図６】本発明の実施形態における記録テーブルを生成するための画面の一例を示す構成図である。
【図７】本発明の実施形態における記録装置を生成するための画面の一例を示す構成図である。
【図８】本発明の実施形態における監視対象候補テーブルを一覧表示する際の処理を示すフローチャートである。
【図９】本発明の実施形態における記録装置を生成する処理を示すフローチャートである。
【図１０】本発明の実施形態におけるアプリケーションに記録処理を追加する処理を示すフローチャートである。
【図１１】本発明の実施形態における記録装置の記録処理に関する処理を示すフローチャートである。
【図１２】本発明の実施形態におけるアプリケーションによるデータ追加時の記録テーブル内容を説明するための説明図である。
【図１３】本発明の実施形態におけるアプリケーションによるデータ更新時の記録テーブル内容を説明するための説明図である。
【図１４】本発明の実施形態におけるアプリケーションによるデータ削除時の記録テーブル内容を説明するための説明図である。
【図１５】本発明の実施形態における記録用テーブルのデータの一例を示すデータ構成図である。
【図１６】本発明の実施形態における照会装置における検索条件指定画面の一例を示す構成図である。
【図１７】本発明の実施形態における照会装置の検索結果画面の一例を示す構成図である。
【図１８】本発明の実施形態における照会装置の検索結果を表示する処理に関する処理を示すフローチャートである。
【図１９】本発明の実施形態における照会装置の検索結果について更新前後のデータの相違を識別表示する処理に関するフローチャートである。
【図２０】本発明の実施形態における記録用テーブル検索用ＳＱＬ生成内容を示す構成図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について、図面を参照しながら、詳細に説明する。
【００１７】
まず、本発明の本発明の一実施形態に係る、システム構成、各機能の役割について説明する。
【００１８】
図１は、本発明の実施形態に係る情報処理システムにおけるシステムの構成を示す構成図である。
【００１９】
図１に示すように、情報処理システム１００は、業務端末２００、アプリケーションサーバ６００、データベースサーバ３００、管理端末４００、及び照会端末５００から構成されている。ただし、業務端末２００、管理端末４００、及び照会端末５００が受け持つ機能については、場所を問わない。例えば、データベースサーバ３００上ですべての機能を持つことも可能である。
【００２０】
業務端末２００は、クライアント・サーバ型、Ｗｅｂ型のシステムで役割が変わる。それぞれについて、以下に記載する。
【００２１】
クライアント・サーバ型の場合は、データベースへの更新処理を行うアプリケーション００１が導入されユーザが操作を行うための端末である。この業務端末２００では、アプリケーション００１を操作し、データベースサーバ３００上のＤＢ接続情報記録テーブル０１０、アプリケーションテーブル群００４に対して更新処理を行う。
【００２２】
また、Ｗｅｂ型の場合は、アプリケーションサーバに対し、処理要求を行うアプリケーション００８が導入されユーザが操作を行うための端末である。アプリケーション００８は具体的にはＷｅｂブラウザである。この業務端末２００ではアプリケーション００８を操作し、アプリケーションサーバ上のアプリケーション００９を実行することで、データベースサーバ３００上のＤＢ接続情報記録テーブル０１０、アプリケーションテーブル群００４に対して更新処理を行う。
【００２３】
アプリケーション００１、００９は、データベースへの更新処理を行うソフトウェアを示しており、本発明の提供機能外の位置づけとしており、データベースへの更新処理を行うものであれば、特定しない。
【００２４】
ただし、当アプリケーションは、本発明の提供機能のＤＢ接続情報記録テーブル０１０にＤＢ接続情報を記録する必要があり、プログラムに当該記録処理を追加するためのプログラム更新の仕組みが必要となる。
【００２５】
次にデータベースサーバ３００について説明する。データベースサーバ３００には、データベースとしてＲＤＢ（Ｒｅｌａｔｉｏｎａｌ  Ｄａｔａｂａｓｅ）製品が導入され、各種データベースサービスを提供する役割を担っている。本発明において更新内容の把握対象（監視対象）のデータベースが記憶されている。
【００２６】
データベースサーバ３００は、アプリケーション００１、００９が、参照及び更新するアプリケーションテーブル群００４を有する。本発明の実施においては、予め存在しているものとし、本発明の提供機能外とする。また、本テーブル群のレイアウト等に関する制約はないものとする。また、本テーブル群は、本発明における更新処理を監視し、更新内容を把握する対象（監視対象）のテーブルとなる。
【００２７】
データベースサーバ３００は、ＲＤＢ定義情報００５を備えており、本情報は、ＲＤＢの機能を実現する上で必要な情報群を指しており、本発明では、テーブル定義情報および項目定義情報を必要とする。
【００２８】
テーブル定義情報とは、データベースサーバ３００上で管理されている各テーブルの属性情報を付加したテーブル一覧である。また、項目定義情報とは、先のテーブル一覧に定義されているテーブル毎の項目の属性情報を付加した項目一覧である。また、項目の型情報等の属性情報も保持している。先にも記したように、ＲＤＢ製品には、凡そこれらの情報がＲＤＢの標準機能として保持されている。
【００２９】
本発明では、これらのＲＤＢ定義情報００５を元に記録装置００６を自動生成する。記録装置００６は、アプリケーション００１、００９及びアプリケーションテーブル群００４の実装形態にかかわらず、汎用的かつ網羅的に更新内容を把握する機能が提供できる基礎情報となる。よって、ＲＤＢ上でこれらの情報が採取できない環境では、記録装置００６の自動生成は実現できない。
【００３０】
管理端末４００は、本発明の記録基盤生成装置００２が導入されており、管理者が操作するための端末である。管理端末４００より、記録基盤生成装置００２を用いて、データベースサーバ３００に対して記録装置００６、及び記録テーブル００７、ＤＢ接続情報記録テーブル０１０の生成作業を実施する。
【００３１】
照会端末５００は、本発明の照会装置００３が導入され、ユーザが操作するための端末である。照会端末５００より、照会装置００３を用いて、データベースサーバ３００上の記録テーブル００７、ＤＢ接続情報記録テーブル０１０を照会し、更新内容を照会する。本照会作業を持って、ＲＤＢへの更新内容の把握を行う。
【００３２】
次に、データベースサーバ３００上に存在する記録テーブル００７について説明する。記録テーブル００７は、監視対象とすべくＲＤＢに１つずつ存在する。
【００３３】
記録テーブル００７は、管理端末４００上の記録基盤生成装置００２を操作することで生成する。
【００３４】
記録テーブル００７内にアプリケーションテーブル群００４への更新内容が時系列に記録される。更新内容の記録処理は、記録装置００６が受け持つ。
【００３５】
次に、データベースサーバ３００上に存在するＤＢ接続情報記録テーブル０１０について説明する。ＤＢ接続情報記録テーブル０１０は、監視対象とすべくＲＤＢに１つずつ存在する。
【００３６】
ＤＢ接続情報記録テーブル０１０は、管理端末４００上の記録基盤生成装置００２を操作することで生成する。
【００３７】
ＤＢ接続情報記録テーブル０１０内にアプリケーション００１、００９にてＤＢ接続時にＤＢ接続情報を記録する。
【００３８】
ＤＢ接続情報記録テーブル０１０にアプリケーション００１、００９から記録することで、クライアント・サーバ型、Ｗｅｂ型アプリケーションにかかわらず、ホスト、ユーザ、プログラム情報を収集することが可能となる。
【００３９】
また、ＤＢ接続情報記録テーブル０１０に登録されておらず、記録テーブル００７に更新内容が記録されている場合は、不正なまたは予期しないプログラムからの更新であることが判定可能となる。
【００４０】
次に、記録装置００６を説明する。記録装置００６は、管理端末４００上の記録基盤生成装置００２を操作することで生成し、ＲＤＢに実装されている標準の基盤機能であるトリガー機構によって、データベースサーバ３００上に登録される。記録装置００６は、アプリケーションテーブル群００４に存在するテーブル毎に登録される。
【００４１】
トリガー機構の特徴として、データベースサーバ３００上で、アプリケーションテーブルに対する更新処理（Ｉｎｓｅｒｔ、Ｕｐｄａｔｅ、Ｄｅｌｅｔｅ）が発生した際、その更新タイミングに合わせてレコード単位にトリガー機構を実行することができる。
【００４２】
このトリガー機構を用いて、ＲＤＢの標準機能より、記録装置００６が起動される。記録装置００６では、Ｉｎｓｅｒｔ時、Ｄｅｌｅｔｅ時のデータ、Ｕｐｄａｔｅ時の更新前、更新後のデータを記録テーブル００７に時系列に記録する。
【００４３】
図２には、本発明の実施形態に係る情報処理システムにおける各業務端末２００、データベースサーバ３００、アプリケーションサーバ６００、管理端末４００、及び照会端末５００に組み込まれたコンピュータのハードウェア構成の例を示す図である。
【００４４】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００４５】
ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００４６】
また、入力コントローラ（入力Ｃ）２０５は、キーボード（ＫＢ）２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。ビデオコントローラ２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。表示器はＣＲＴだけでなく、液晶ディスプレイでも構わない。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【００４７】
メモリコントローラ２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるＣＦカード等の外部メモリ２１１へのアクセスを制御する。
【００４８】
通信Ｉ／Ｆコントローラ２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００４９】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００５０】
本発明を実現するためのプログラム類は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルおよび各種情報テーブルは外部メモリ２１１に格納されており、これらについての詳細な説明は後述する。
【００５１】
次に、図３を用いて、本発明におけるＲＤＢの更新履歴の照会を行う迄の作業の流れを説明する。
【００５２】
図３に示すように、作業は、更新内容の記録準備、アプリケーション処理および更新内容記録、及び更新内容記録の照会の順で行われる。
【００５３】
ただし、更新内容の記録準備については、初回のみ実施し、以降は、アプリケーションテーブル群００４の各テーブル構造を変更した場合に実施する必要がある。
【００５４】
変更がない場合は、アプリケーション処理および更新内容記録及び更新内容記録の照会を繰り返し、アプリケーションの更新処理に伴う、更新内容の把握を行う。
【００５５】
まず、更新内容の記録準備では、図１に示す管理端末４００にて、記録基盤生成装置００２を用いて、記録装置００６及び記録テーブル００７およびＤＢ接続情報記録テーブル０１０の生成作業を行う。さらに、アプリケーション００１、００９にＤＢ接続情報記録テーブルへ記録するための処理を追加する。
【００５６】
次に、アプリケーション処理および更新内容記録では、図１に示す業務端末２００にてユーザが操作し、アプリケーション００１が直接実行され、または、アプリケーション００８からの実行要求を受けてアプリケーションサーバ６００のアプリケーション００９が実行され、データベースサーバ３００上のＤＢ接続情報記録テーブル０１０、アプリケーションテーブル群００４への更新処理を行う。
【００５７】
データベースサーバ３００上では、各アプリケーションテーブル群００４が更新されたことを契機に記録装置００６が起動され、記録テーブル００７に更新内容を記録する。
【００５８】
次の更新内容記録の照会では、図１に示す照会端末５００にて、照会装置００３を用い、データベースサーバ３００上の記録テーブル００７、ＤＢ接続情報記録テーブル０１０を参照し、更新内容を照会する。
【００５９】
次に作業の流れと処理のフローを説明し、各機能の詳細な説明を行う。
【００６０】
図４は、本発明の実施形態に係る情報処理システム１００におけるＲＤＢの更新履歴の照会を行う迄の概要処理フローを示す図である。
【００６１】
図４に示す更新内容の記録準備０１０では、管理端末４００にて、記録基盤生成装置００２を用いて、記録テーブル００７、ＤＢ接続情報記録テーブル０１０の生成を行う（０１１）。生成作業について、図４のフローチャート及び図６に示す生成画面例を用いて説明する。
【００６２】
管理端末４００において記録基盤生成装置００２を起動する（起動とともにＲＤＢへの接続が行われている。）。記録基盤生成装置００２の設定画面（図６参照）を表示し、０３０を選択後、０３１の箇所において項目数（ＣｏｌｕｍｎＣｏｕｎｔ）、項目のバイト数（ＣｏｌｕｍｎＢｙｔｅ）を設定する。
【００６３】
項目数については、データベースサーバ３００上のアプリケーションテーブル群００４の中での最大項目数を設定する。また、項目のバイト数については、データベースサーバ３００上のアプリケーションテーブル群００４の項目の中で最大のバイト数を設定する。
【００６４】
また、自立型トランザクション０３１の項目を設定する。ＯＮを設定することで、監視対象のテーブル更新のトランザクションとは独立したトランザクションで記録テーブル００７に記録を行う。
【００６５】
つまり、監視対象のテーブル更新処理がロールバックされた場合でも、記録テーブル００７に記録が残る。また、ＯＦＦを設定することで、監視対象のテーブル更新のトランザクション内の処理として、記録テーブル００７に記録する。
【００６６】
つまり、監視対象のテーブル更新処理がロールバックされた場合、記録テーブル００７への記録内容についてもロールバックされることとなる。
【００６７】
継続して、記録基盤生成装置００２を用いて、０３２の箇所において、記録テーブル生成指示を選択した後、記録テーブル生成スクリプト０３３が生成されるため、その後、コンパイルボタン０３４を押下することによってデータベースサーバ３００上に登録する。
【００６８】
よって、アプリケーションテーブル群００４の構成（最大項目数、項目最大バイト数）が変更された場合は、構成変更後、再度実施する必要がある。
【００６９】
次に、記録テーブル００７について説明する。前述の作業で生成された記録テーブル００７は、監視対象のＲＤＢに１つのみ生成する。記録テーブル００７のレイアウトを図５（ａ）に示す。記録テーブル００７の各項目は、管理項目、テーブル項目に分類することができる。
【００７０】
管理項目０２０には、いつ（日時）、だれが（ユーザ）、どこで（ホスト）、どのプログラムが（プログラム、セッションＩＤ）、どのテーブルに（テーブル名）、どういう操作を（更新種別）、どういう順で（連番）等のデータを記録し、テーブル項目０２１には、監視対象のテーブル（アプリケーションテーブル群００４）のレコードイメージが記録される。
【００７１】
記録テーブル００７は、複数のテーブルのレコードイメージが記録されるため、汎用的な項目名とし、項目１〜監視対象のテーブル群の最大の項目数（ｎ）の範囲内で項目数を持つような態様をとることが可能となる。
【００７２】
また、テーブル項目０２１内では、どのレコードに対して、どのようなデータ項目に登録されている値を、どのような値に更新されたかを記録する。
【００７３】
次に、ＤＢ接続情報記録テーブル０１０について説明する。前述の作業で生成されたＤＢ接続情報記録テーブル０１０は、監視対象のＲＤＢに１つのみ生成する。ＤＢ接続情報記録テーブル０１０のレイアウトを図５（ｂ）に示す。
【００７４】
ＤＢ接続情報記録テーブル０１０には、セッションＩＤ、接続日時、ユーザ、ホスト、プログラムの項目が管理される。
【００７５】
ＤＢ接続情報記録テーブル０１０は、図４の業務端末２００上のアプリケーション００１、アプリケーションサーバ６００上のアプリケーション００９にて、データベースサーバ３００への接続時に、接続情報（図５（ｂ）のＤＢ接続情報記録テーブル０１０のレイアウト）が記録される。当テーブルに記録することで、監視対象のテーブルに対する接続主体を特定することができる。当テーブルに記録されていない接続主体からの更新については、不正なまたは想定外のデータベースへの更新であることを明示することができる。
【００７６】
次に、図４に示す更新内容の記録準備０１０では、管理端末４００にて、記録基盤生成装置００２を用いて、記録装置００６の生成およびアプリケーション００１、００９への処理追加を行う。記録装置００６の生成作業について、図４のフロー及び図６に示す生成画面例を用いて説明する。
【００７７】
図４に示す通り、まず管理端末４００で記録基盤生成装置００２を起動する（起動とともにＲＤＢへの接続が行われている。）。図７に示す記録基盤生成装置００２の監視対象テーブル一覧画面を表示し、０４０を選択後、監視対象候補テーブル一覧０４１を表示する。監視対象候補テーブル一覧０４１は、図４に示すアプリケーションテーブル群００４に該当する。
【００７８】
次に、監視対象候補テーブル一覧０４１の中から監視対象のテーブルをチェックボックス０４２にチェック印を入力することで選択する。
【００７９】
その後、トリガー生成指示０４３を選択した後、記録装置生成スクリプト０４４が生成されるため、その後、コンパイルボタン０４５を押下することによってデータベースサーバ３００上に登録する。
【００８０】
本作業は、アプリケーションテーブル群００４の構成（項目の追加、削除、型の変更、テーブルの削除、追加）が変更された場合は、構成変更後、再度実施する必要がある。
【００８１】
図７に示す監視対象候補のテーブル一覧０４１への表示処理は、図８に示す処理フローにて実施される。本フローチャートにおける各ステップの処理は、管理端末４００から起動され、データベースサーバ３００のＣＰＵ２０１の制御のもと、実行される。
【００８２】
まず、ステップＳ００１では、監視対象のＲＤＢに接続を行った後、次に、ステップＳ００２では、データベースサーバ３００上に存在するＲＤＢ定義情報００５内のテーブル定義情報の集合を読み取る。
【００８３】
そしてステップＳ００３は、ループ開始を示しており、また本ループの終了をステップＳ００６としており、テーブル毎に処理を繰り返す。
【００８４】
ループ内における処理では、ステップＳ００４では、テーブル名を取得し、監視対象候補テーブル一覧０４１に表示すべき対象としてＲＡＭ２０３へ追加で記憶していく。
【００８５】
ステップＳ００２で取得したテーブル定義情報に定義されたテーブルに対して全て処理が完了したならば、ステップＳ００６においてループを終了した後、ステップＳ００７において、管理端末４００のＣＲＴ２１０に表示された図７に示す監視対象候補のテーブル一覧０４１へテーブル名の一覧表示を行う。
【００８６】
その後、監視対象候補のテーブル一覧０４１より、管理者は手動で監視対象テーブルを選択する。
【００８７】
次に、記録装置００６を生成する処理について、図９に示すフローチャートを用いて説明する。
【００８８】
まず、ステップＳ０１１では、監視対象のＲＤＢに接続を行い、次にステップＳ０１２において監視対象候補のテーブル一覧０４１で選択されたテーブル群を取得し、ステップＳ０１３より取得したテーブル毎にループを開始する。
【００８９】
次に、ステップＳ０１４において、データベースサーバ３００上に存在するＲＤＢ定義情報００５内の項目定義情報に対して、ステップＳ０１１において指定されたテーブルを条件にテーブルの項目の一覧を取得しＲＡＭ２０３へ記憶する。
【００９０】
次のステップＳ０１５においてＲＡＭ２０３へ記憶した項目の一覧を元に、項目毎にループを開始する。
【００９１】
次に、ステップＳ０１６において、ループで指定された項目の型情報を取得する。そして次のステップＳ０１７において、項目、型情報毎にキャラクタ型への変換ロジックを生成し、ステップＳ０１８では、ステップＳ０１７において生成された変換ロジックをＲＡＭ２０３に追加で記憶する。これは、記録テーブル００７のテーブル項目０２１を汎用的にキャラクタ型で定義しているため、テーブルの各項目の値を不整合なく登録するために必要な処理である。
【００９２】
ステップＳ０１９は、処理対象項目がなくなれば、項目のループを終了することを示しており、処理対象となる項目が存在すれば、ステップＳ０１５へ処理を進める。
【００９３】
ステップＳ０２０では、ステップＳ０１８においてＲＡＭ２０３へ追加記憶した変換ロジックからプログラム（ＳＱＬ）を生成する。
【００９４】
ステップＳ０１３からステップＳ０２０までテーブル単位で処理し、処理対象のテーブルがなくなれば、テーブルのループを終了する（ステップＳ０２１）。すべてのテーブルに対するプログラム（ＳＱＬ）を図６に示す記録装置生成スクリプト０４４に表示する。
【００９５】
次に、図１０を参照して、アプリケーション００１、００９に、ＤＢ接続情報記録テーブル０１０への記録処理を追加する処理について説明する。本処理は、管理端末４００のＣＰＵ２０１にて実行され、アプリケーション００１の場合は業務端末２００に、アプリケーション００９の場合はアプリケーションサーバ６００に接続して実行され、それぞれの処理は同一である。
【００９６】
ステップＳ０２３では、不図示のアプリケーション一覧画面から監視対象のテーブルを使用しているアプリケーションの指定を受け付ける。ここで、指定を受け付けるのではなく、アプリケーションのプログラム（ソースコード）から監視対象のテーブル名を検索して、自動でアプリケーションを指定してもよい。
【００９７】
ステップＳ０２４では、指定されたアプリケーションのプログラムを取得する。
【００９８】
ステップＳ０２５では、取得したプログラムから、データベースへのログイン処理を示すコードを抽出する。ここでは、データベース固有の関数名で検索して抽出する。
【００９９】
ステップＳ０２６では、ステップＳ２０７からＳ２０８の処理を、抽出したログイン処理を示すコードについて繰り返す。
【０１００】
ステップＳ０２７では、ログイン処理を示すコードから、接続先のＲＤＢを特定する。
【０１０１】
ステップＳ０２８では、特定されたＲＤＢに対応するＤＢ接続情報記録テーブル０１０に対して、ログイン処理によって取得したセッションＩＤ、接続日時、および、当該アプリケーションにログインしているユーザ、ログインを実施したコンピュータ名、当該アプリケーションのプログラムをユーザ、ホスト、プログラムとして記録する処理コード（ＳＱＬ）をログイン処理を示すコードの次に挿入する。
【０１０２】
ステップＳ０２９では、全ての抽出したログイン処理を示すコードについて実行すれば繰り返し処理を終了する。
【０１０３】
ステップＳ０３０では、上記で変更したプログラムで取得元のプログラムを更新する。
【０１０４】
なお、本実施例では、ログイン処理を示すコードの次にＤＢ接続情報記録テーブル０１０に記録する処理コードを挿入しているが、本処理を関数化して、ログイン処理を示すコードを該関数を呼び出すコードで置換してもよい。
【０１０５】
これによって、更新内容の記録を行うための準備が整ったことになる。続いて、図４のアプリケーション処理およびログ記録０１３について説明する。
【０１０６】
まず、業務端末２００のアプリケーション００１、または、アプリケーションサーバ６００のアプリケーション００９からデータベースサーバ３００へのログイン処理が実施された場合に、データベースサーバ３００上のＤＢ接続情報記録テーブル０１０に接続情報を記録する。
【０１０７】
次に、業務端末２００のアプリケーション００１、または、アプリケーションサーバ６００のアプリケーション００９は、アプリケーションテーブル群００４への更新処理を行う。
【０１０８】
業務端末２００のアプリケーション００１、または、アプリケーションサーバ６００のアプリケーション００９が、アプリケーションテーブル群００４への更新処理を行うことにより、ＲＤＢの標準機能が更新のイベントをトリガー機構によって検知し、記録装置００６が起動される。つまり、アプリケーション００１、００９がＲＤＢに接続したセッション内で、記録装置００６が起動され、記録テーブル００７にアプリケーションテーブル群００４に対する更新内容を記録する。記録後、アプリケーション００１に制御が戻ることとなる。
【０１０９】
次に、記録装置００６が起動された後、記録テーブル００７に更新内容が記録される処理について、図１１に示すフローチャートを用いて説明する。
【０１１０】
まず、ステップＳ０３１において、ＲＤＢへの接続情報（セッション情報）を取得する。つまり、先に記したとおり、アプリケーション００９における更新処理に関するセッション情報である。この情報は、図５に示す記録テーブル００７に示すテーブルレイアウトのセッションＩＤに記録するために予め情報を取得する。
【０１１１】
次に、ステップＳ０３２において、シーケンスＮｏ．を取得し、更新処理に対して、ユニークな採番を行い、ＲＡＭ２０３へ記憶した後、ステップＳ０３３において、更新処理に対して、Ｉｎｓｅｒｔ、Ｕｐｄａｔｅ、あるいはＤｅｌｅｔｅかを判別する。
【０１１２】
ＵｐｄａｔｅあるいはＤｅｌｅｔｅの場合は、ステップＳ０３４へ処理を進め、更新前のデータを記録テーブル００７へ記録する。
【０１１３】
次に、ステップＳ０３５において、再度更新の種別を判断し、Ｄｅｌｅｔｅの場合は、処理を終了し、Ｕｐｄａｔｅの場合、ステップＳ０３６へ処理を進める。
【０１１４】
ステップＳ０３６において、更新後のデータを記録テーブル００７へ記録する。つまり、Ｉｎｓｅｒｔ、Ｕｐｄａｔｅの場合は、記録テーブル００７へ記録する。
【０１１５】
アプリケーションの操作からアプリケーションテーブルへの更新、記録テーブルの記録の内容については、図１２〜図１５を用いて詳細に説明する。
【０１１６】
図１２〜図１５では、図４に示すアプリケーション００９を社員マスタメンテナンス画面として想定したものを図示している。
【０１１７】
アプリケーション００９は、図４に示すアプリケーションテーブル群００４の「社員マスタ」に対して追加、更新、削除するプログラムである。それぞれの操作をしたときのアプリケーションの操作、アプリケーションテーブルへの更新、記録テーブルの記録の内容を具体的に説明する。
【０１１８】
図１２では、社員マスタに新しい社員を追加する例を挙げている。
【０１１９】
まず、社員マスタメンテナンス画面０３１を起動する。このときアプリケーションテーブル群００４のテーブルに対しての変更はないため（０３２）、記録テーブル００７への記録は発生しない（０３３）。
【０１２０】
次に社員マスタメンテナンス画面０３１において追加する社員の情報を入力するための入力領域０３４へ入力を行ったタイミングでは、アプリケーションテーブル群００４のテーブルに対しての変更はないため（０３６）、記録テーブル００７への記録は発生しない（０３７）。
【０１２１】
次に、登録ボタン０３５を押下し、登録処理が実行されると、登録処理の結果が社員マスタメンテナンス画面０３１上に表示（０３８）される。登録処理後、アプリケーションテーブル群００４には、社員マスタメンテナンス画面０３１上に入力された情報が追加（０３９）される。このとき、記録テーブル００７に、ホスト、プログラム、テーブル名、種別等の管理項目０２０（図では、例のため、主要項目のみ掲載する。）および社員マスタのデータの内容が記録テーブル００７に記録される。
【０１２２】
図１３では、社員マスタにすでに登録された社員の属性を変更する例を挙げる。
【０１２３】
社員マスタメンテナンス画面０４１を起動し、変更対象の社員を画面上に表示する。このときアプリケーションテーブル群００４のテーブルに対して変更はないので、記録テーブル００７には、前の社員追加時更新内容が保持されているのみである（０４２）。
【０１２４】
次に社員マスタメンテナンス画面０４１で変更する社員の属性を入力するための入力領域０４４に入力を行う。この時点では、アプリケーションテーブル群００４のテーブルに対して変更はない（０４６）ので記録テーブル００７への記録も存在しない（０４７）。
【０１２５】
次に、登録ボタン０４５を押下すると、登録変更処理が実行され、登録変更処理の結果が社員マスタメンテナンス画面０４１に表示される（０４８）。登録変更処理後、アプリケーションテーブル群００４のテーブルは、社員マスタメンテナンス画面０４１に入力された情報に変更される（０４９）。このとき、記録テーブル００７に、ホスト、プログラム、テーブル名、種別等の管理項目０２０（図では、例のため、主要項目のみ掲載する。）および社員マスタのデータの内容が記録される（０５０）。この更新処理の場合は、更新前のデータの内容および更新後のデータの内容の２レコードのデータが記録される。
【０１２６】
図１４では、社員マスタにすでに登録された社員を削除する例を挙げる。
【０１２７】
社員マスタメンテナンス画面０５１を起動し、削除対象の社員を社員マスタメンテナンス画面０５１に表示する。このときアプリケーションテーブル群００４のＲＤＢに対しての変更はない（０５２）。記録テーブル００７には、前の社員追加時、更新時の更新内容が保持されている（０５３）。
【０１２８】
次に社員マスタメンテナンス画面０５１上で削除する社員の情報を確認（０５４）する。このときもアプリケーションテーブル群００４のテーブルの変更はないので（０５６）、記録テーブル００７への記録も発生しない（０５７）。
【０１２９】
次に、登録ボタン０５５を押下し、削除処理が実行され、削除処理の結果が社員マスタメンテナンス画面０５１に表示される（０５８）。削除処理後、アプリケーションテーブル群のテーブルには、社員マスタメンテナンス画面０５１上に表示された情報が削除される。（０５９）
【０１３０】
このとき、記録テーブル００７に、ホスト、プログラム、テーブル名、種別等の管理項目０２０（図では、例のため、主要項目のみ掲載する。）および社員マスタの削除されたデータの内容が記録される（０６０）。
【０１３１】
次に図１５を参照して、記録テーブル００７およびＤＢ接続情報記録テーブル０１０に記録されるデータの一例について説明する。
【０１３２】
まず、ユーザＵＳＥＲ０１がＷｅｂ型の社員マスタメンテナンス画面で社員情報の更新を実施する。社員コードを００１０、社員名を○○太郎、雇用区分を雇用から退職に変更、端末番号をＰＣ００１０とする。この更新を行った際に、使用した社員マスタメンテナンス画面のプログラムは、Ｐ．ｅｘｅとし、アプリケーションサーバ６００にて実行される。データベースの更新に先行してデータベースへのログイン処理が実施され、その結果がＤＢ接続情報記録テーブル０１０にデータ０８６として記録される。更新した結果が、記録テーブル００７に対して０８２に示すようなデータを登録する。ここで、ホストはアプリケーションサーバ６００のコンピュータ名Ｘ、ユーザはデータベース接続用の特定ユーザＹ、プログラムはサーバプログラムＺＺＺが設定される。
【０１３３】
次に、ユーザＵＳＥＲ０５がＷｅｂ型の受注登録画面で受注の登録を実施した場合、受注番号Ｊ０００１に対して、受注ヘッダー情報として、得意先コードをＴＯＫ００１、見積番号をＭ００１、受注部門コードをＢ００１、受注担当者コードを０００１、受注日を０９／０１／０５、納品日を０９／０２／０５、受注金額を２０、０００として記録する。
【０１３４】
また、受注番号Ｊ０００１に対して、受注ディテール情報として、受注品目をＨＩＮ−００１、数量を３個、売単価を６、０００、標準原価を４、０００の１レコードと受注品目をＨＩＮ−０９９、数量を１個、売単価を２、０００、標準原価を１、８００の１レコード、計２レコード記録する。
【０１３５】
この更新を行った際に、使用した受注登録画面のプログラムは、Ｑ．ｅｘｅとし、アプリケーションサーバ６００にて実行される。データベースの更新に先行してデータベースへのログイン処理が実施され、その結果がＤＢ接続情報記録テーブル０１０にデータ０８７として記録される。この更新した結果が、記録テーブル００７に対して０８３に示すようなデータを登録する。ここで、ホストはアプリケーションサーバ６００のコンピュータ名Ｘ、ユーザはデータベース接続用の特定ユーザＹ、プログラムはサーバプログラムＺＺＺが設定される。
【０１３６】
次に、ユーザＵＳＥＲ０１がＷｅｂ型の部門マスタメンテナンス画面で部門の削除を実施した場合、部門番号がＢ００１、部門名がＡ部門、使用開始日が０９／０１／０５、使用終了日が９９／１２／３１のレコードを削除する。
【０１３７】
この削除を行った際に、使用した部門マスタメンテナンス画面のプログラムは、Ｒ．ｅｘｅとし、アプリケーションサーバ６００にて実行される。データベースの更新に先行してデータベースへのログイン処理が実施され、その結果がＤＢ接続情報記録テーブル０１０にデータ０８８として記録される。この更新した結果が、記録テーブル００７に対して０８４に示すようなデータを登録する。ここで、ホストはアプリケーションサーバ６００のコンピュータ名Ｘ、ユーザはデータベース接続用の特定ユーザＹ、プログラムはサーバプログラムＺＺＺが設定される。
【０１３８】
次に、ユーザＵＳＥＲ０２がクライアント・サーバ型の社員マスタメンテナンス画面で社員情報の登録を実施する。社員コードを０１１０、社員名を△△次郎、雇用区分を雇用、端末番号をＰＣ０１１０とする。この更新を行った際に、使用した社員マスタメンテナンス画面のプログラムは、Ｍ．ｅｘｅとし、業務端末２００にて実行される。データベースの更新に先行してデータベースへのログイン処理が実施され、その結果がＤＢ接続情報記録テーブルにデータ０８９として記録される。更新した結果が、記録テーブル００７に対して０８５に示すようなデータを登録する。ここで、ホストは業務端末２００のコンピュータ名ＰＣ０００２、ユーザは実際に操作したユーザＵＳＥＲ０２、プログラムはＭ．ｅｘｅが設定される。
【０１３９】
次に、記録テーブル００７およびＤＢ接続情報記録テーブル０１０の内容を照会装置００３で照会し、更新内容を把握する手段について、図４のフローおよび図１６、図１７に示す画面を用いて説明する。
【０１４０】
図４のログの照会０１４では、照会端末５００に備えられた照会装置００３を用いて、記録テーブル００７およびＤＢ接続情報記録テーブル０１０に記録されたデータの照会を行う。ユーザや管理者が行う照会の作業について、図４のフローおよび図１６、図１７の画面の一例を用いて説明する。
【０１４１】
図４に示す０１５において、照会端末５００で照会装置００３を起動する（０７０）。そして、記録テーブル００７およびＤＢ接続情報記録テーブル０１０が存在する接続先のＲＤＢを指定するために接続先フィールド０７１にテーブルが存在する領域に関する接続先情報を入力する。
【０１４２】
次に、検索ボタン０７２を押下すると、検索条件指定画面０７６が表示される。ここで、指定できる検索条件は、テーブル名、ログ検索開始日時、終了日時、操作（Ｉｎｓｅｒｔ、Ｕｐｄａｔｅ、Ｄｅｌｅｔｅ）、ユーザ、ホスト、プログラム等が対象となり、検索条件入力領域０７８に入力を行うことが可能である。
【０１４３】
検索条件入力領域０７８において検索条件を入力し、検索開始ボタン０７７を押下することで、ＲＤＢ上の記録テーブル００７およびＤＢ接続情報記録テーブル０１０を検索し、図１７に示す検索結果画面に検索結果が表示される。
【０１４４】
検索結果画面では、検索条件に応じた記録テーブル００７およびＤＢ接続情報記録テーブル０１０の内容を表示する。管理項目０９３とテーブル項目０９４が表示される。これらの表示項目は、図５に示す記録テーブル００７の管理項目０２０、テーブル項目０２１に対応している。ただし、管理項目０２０内のユーザ、アプリケーションユーザ、ホスト、プログラムについては、ＤＢ接続情報記録テーブル０１０の項目を表示する。記録テーブル００７およびＤＢ接続情報記録テーブル０１０の相関、結合方法については、後述する。
【０１４５】
記録テーブル００７のテーブル項目０２１は、図５（ａ）で示したように、汎用的な項目名として定義されているが、更新内容を把握する際、各テーブルの項目名が情報として必須となる。よって、シーケンスＮｏ．（記録テーブル００７の連番）の昇順で表示し、テーブルが変更される毎に、ＲＤＢ定義情報内の項目一覧情報から項目名を取得し、実際のテーブルの項目名を表示している（０９５）。
【０１４６】
検索結果画面の表示処理については、以降で説明する。また、Ｕｐｄａｔｅ時については、更新前、更新後のレコードで更新内容を比較し、値が一致しない（＝更新された）項目に対して、着色表示する等の識別表示を行う。
【０１４７】
次に本発明の実施形態に係る照会装置００３において、記録テーブル００７およびＤＢ接続情報記録テーブル０１０に記録されたデータの検索処理について図１８及び図１９に示すフローチャートを用いて説明する。
【０１４８】
まず、ステップＳ０４０では、接続先フィールド０７１に接続先情報が入力されたことを検知し、入力された接続先情報を取得し、ＲＡＭ２０３へ記憶する。次のステップＳ０４１では、ステップＳ０４０においてＲＡＭ２０３へ記憶した接続先情報に基づいてデータベースサーバ３００に備えられたテーブルの存在する領域に接続する。
【０１４９】
同様に、検索条件指定画面０７６の検索条件入力領域０７８に入力した検索条件を取得し、ＲＡＭ２０３へ記憶し、ステップＳ０４３においてステップＳ０４２においてＲＡＭ２０３へ記憶した検索条件に基づいて、記録テーブル００７およびＤＢ接続情報記録テーブル０１０に対する検索用のＳＱＬを生成し、ＲＡＭ２０３へ記憶する。
【０１５０】
記録テーブル００７およびＤＢ接続情報記録テーブル０１０の相関、結合方法について図２０を用いて説明する。ＤＢ接続情報記録テーブル０１０はアプリケーション００１、００９のデータベースへの接続時に記録される。データベース接続時にユニークなセッションＩＤがデータベースサーバ上で発番される。ただし、当セッションＩＤは、同一時間帯に一意であるが、同一ＩＤが再利用される可能性がある。よってセッションＩＤの一意性を特定する必要がある。
【０１５１】
アプリケーション００１、００９からアプリケーションテーブル群００４に更新する際、予めデータベースに接続する必要がある。当接続がセッションとして管理され、接続時のセッションＩＤとアプリケーションテーブル群００４への更新の際のセッションＩＤ、つまり記録テーブル００７に記録されるセッションＩＤと同一の番号となる。ただし、再利用の可能性があるため、記録テーブル００７に記録されている日時よりも前にデータベースに接続されている必要があるため、同一セッションＩＤでかつ、記録テーブル００７に記録されている日時よりも前で一番直近のＤＢ接続情報記録テーブル０１０の接続日時を結合することにより、ユーザ、ホスト、プログラムを取得することが可能となる。
【０１５２】
ステップＳ０４４において、ステップＳ０４３においてＲＡＭ２０３へ記憶したＳＱＬをデータベースサーバ３００へ送信して実行する。
【０１５３】
次にステップＳ０４５では、項目情報を取得するＳＱＬを生成しＲＡＭ２０３へ記憶する。ここでは、ステップＳ０４２においてＲＡＭ２０３へ記憶した検索条件を元に、ＲＤＢ定義情報００５からテーブル一覧および各テーブルの項目一覧を取得し、記録テーブル００７に必要とするテーブル一覧および各テーブルの項目を取得するためのＳＱＬを生成し、ＲＡＭ２０３へ記憶する。
【０１５４】
ステップＳ０４６では、ステップＳ０４５においてＲＡＭ２０３へ記憶したＳＱＬをデータベースサーバ３００へ送信して実行する。
【０１５５】
ステップＳ０４７では、ステップＳ０４４で実行した記録テーブル００７およびＤＢ接続情報記録テーブル０１０の検索結果を検索結果画面に展開する。
【０１５６】
次に、ステップＳ０４８では、ステップＳ０４６で実行した項目情報の検索結果を取得し、ＲＡＭ２０３へ記憶し、ステップＳ０４９では、ステップＳ０４７で展開した記録テーブル００７およびＤＢ接続情報記録テーブル０１０の検索結果を一行毎に処理を開始する。
【０１５７】
ステップＳ０５０では、ステップＳ０４８においてＲＡＭ２０３へ記憶した項目情報に含まれるテーブル一覧からテーブル名を取得し、保管した前回テーブル名と同じかどうかを比較する。尚、前回テーブル名の保管は、ステップＳ０５６で実施する。
【０１５８】
比較した結果、前回のテーブル名と一致しないと判定した場合は、ステップＳ０５２へ処理を進め、一致しないと判定できなかった場合は、ステップＳ０５５へ処理を進める。
【０１５９】
次に、ステップＳ０５２では、ステップＳ０４７で取得した項目情報からステップＳ０５０で指定されたテーブルを特定し、ステップＳ０４８においてＲＡＭ２０３へ記憶した項目情報に基づいて特定したテーブルの項目一覧を取得する。
【０１６０】
次にステップＳ０５３では、検索結果画面の１行追加した後、ステップＳ０５４では、ステップＳ０５２でＲＡＭ２０３へ記憶した項目一覧を展開する。つまり、Ｓ０５１からＳ０５４までの処理で、図１７に示す０９４で示されるデータ項目に実際のテーブルの項目名を記載した行を追加する。尚、追加のタイミングは、テーブル名が変更されるたびに、項目名を記載した行を追加している。
【０１６１】
次に、ステップＳ０５５では、更新処理マーキング処理を実施する。本処理の詳細については、図１９に示すフローチャートを用いて説明する。次に、ステップＳ０５６では、テーブル名を保管する。本処理は、ステップＳ０５１の比較判別のために退避している。つまり、検索結果画面において、０８２に示すような項目情報をテーブル単位で表示するため、すなわちユーザによって視覚的に認識し易いようにするためである。
【０１６２】
ステップＳ０４４において実行した記録テーブル００７の検索内容がなくなれば、ループを終了する（ステップＳ０５７）。
【０１６３】
続いて、図１９に示すフローチャートを用いて更新箇所マーキング処理の説明をする。
【０１６４】
まず、ステップＳ０５８では、ステップＳ０４４においてＳＱＬを実行して得られた記
【０１６５】
録テーブル００７の検索結果の更新種別（Ｉｎｓｅｒｔ、Ｕｐｄａｔｅ、Ｄｅｌｅｔｅ）がＵｐｄａｔｅであるか否かを判定し、Ｕｐｄａｔｅであると判定した場合は、ステップＳ０５９へ処理を進め、Ｕｐｄａｔｅであると判定しできなかった場合は、処理を終了する。
【０１６６】
Ｕｐｄａｔｅの場合は、更新前、更新後の２行のレコードが連続して存在するため、２行のそれぞれの値を比較し、値が一致しない場合にこの値の着色するため、この様な判定を行っている。
【０１６７】
そしてステップＳ０５９以降のステップにおいて、Ｕｐｄａｔｅ時の更新箇所（項目の値）にマーキングを行う処理を実施する。
【０１６８】
ステップＳ０５９は、ステップＳ０５２でＲＡＭ２０３へ記憶したテーブルの項目一覧の項目毎にループ処理の開始を示す。
【０１６９】
ステップＳ０６０において、ステップＳ０５２でＲＡＭ２０３へ記憶した項目一覧より項目の値を取得してＲＡＭ２０３へ記憶した後、ステップＳ０６１において、さらに次行の項目の値も取得し、ＲＡＭ２０３へ記憶する。ステップＳ０６２において、ステップＳ０６０、ステップＳ０６１でＲＡＭ２０３へ記憶した値を比較判定し、値が一致しないと判定した場合は、これらの値を着色等の識別可能なように表示する。
【０１７０】
ステップＳ０５２でＲＡＭ２０３へ記憶した項目一覧に対する項目がなくなれば、ループを終了し（ステップＳ０６４）、ステップＳ０６５では、検索結果の実施対象行を２行進める。
【０１７１】
上記により、Ｗｅｂ型アプリケーションシステムにおいて、データベースへのログイン時に当該アプリケーションにログインしているユーザ、ログイン元のコンピュータ名、当該アプリケーションのプログラム名を記録し、データベース更新時に更新内容を記録することにより、データベース更新履歴において実際に操作したユーザ、ホスト、プログラムを特定することが可能となる。また、本実施例の仕組みは、クライアント・サーバ型アプリケーションシステムにおいても使用することができる。
【０１７２】
以上、各実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１７３】
また、本発明におけるプログラムは、各処理方法をコンピュータが実行可能（読み取り可能）なプログラムであり、本発明の記憶媒体は、各処理方法をコンピュータが実行可能なプログラムが記憶されている。
【０１７４】
なお、本発明におけるプログラムは、各装置の処理方法ごとのプログラムであってもよい。
【０１７５】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読取り実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１７６】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
【０１７７】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることができる。
【０１７８】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１７９】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１８０】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１８１】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１８２】
１００  情報処理システム
２００  業務端末
３００  データベースサーバ
４００  管理端末
５００  照会端末
６００  アプリケーションサーバ
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆコントローラ
２０９  キーボード
２１０  ＣＲＴ
２１１  外部メモリ
【図１】
2017134636.tif 000003
【図２】
2017134636.tif 000004
【図３】
2017134636.tif 000005
【図４】
2017134636.tif 000006
【図５】
2017134636.tif 000007
【図６】
2017134636.tif 000008
【図７】
2017134636.tif 000009
【図８】
2017134636.tif 000010
【図９】
2017134636.tif 000011
【図１０】
2017134636.tif 000012
【図１１】
2017134636.tif 000013
【図１２】
2017134636.tif 000014
【図１３】
2017134636.tif 000015
【図１４】
2017134636.tif 000016
【図１５】
2017134636.tif 000017
【図１６】
2017134636.tif 000018
【図１７】
2017134636.tif 000019
【図１８】
2017134636.tif 000020
【図１９】
2017134636.tif 000021
【図２０】
2017134636.tif 000022