(57)【要約】【課題】プログラムに記述されたＳＱＬがどのようなアクセス内容を有しているかをシステム上で明示的にサポートし、機能追加によりＳＱＬを変更することになった場合、どのＳＱＬが変更対象かを容易に洗い出せるようにする。【解決手段】アクセスパターン解析部１０により、プログラムソース１に記述されたＳＱＬ文を抽出して解析し、当該ＳＧＬ文のアクセス内容を読み出し、当該ＳＧＬ文の識別情報（アクセスパターンＩＤ）に、当該ＳＧＬ文のアクセス内容を含む解析結果情報を対応付けたアクセスパターン情報を生成して記憶装置に格納し、アクセスパターン検索部４０により、ユーザが入力した検索条件に対応するアクセスパターン情報を記憶装置から抽出し、アクセスパターン表示部５０により、抽出したアクセスパターン情報を表示装置等に表示する。【選択図】図１
2008077285.tif 000002
【特許請求の範囲】
【請求項１】
データを入力する入力手段と、入力手段が入力したデータおよびプログラムを記憶する記憶手段と、記憶手段からプログラムを読み出し該プログラムに基づく処理を実行する処理手段と、処理手段の処理結果を出力する出力手段とを具備し、
上記記憶手段は、リレーショナルデータベースにアクセスするＳＱＬ文が記述されたプログラムソースを記憶し、
上記処理手段は、
上記記憶手段から上記プログラムソースを読み込み該プログラムソースに記述されたＳＱＬ文を抽出し、抽出したＳＱＬ文を解析して該ＳＧＬ文のアクセス内容を読み出し、当該ＳＧＬ文に識別情報を付与し、該識別情報に、読み出した当該ＳＧＬ文のアクセス内容を含む解析結果情報を対応付けたアクセスパターン情報を生成して上記記憶手段に格納する解析機能と、
上記入力手段から入力された検索条件を用いて上記記憶手段に格納されたアクセスパターン情報を検索し、当該検索条件に対応するアクセスパターン情報を抽出する検索機能と、
該検索機能が抽出したアクセスパターン情報を上記出力手段を介して出力する出力機能と
を有することを特徴とするＳＱＬ管理システム。
【請求項２】
請求項１に記載のＳＱＬ管理システムであって、
上記解析機能は、
上記プログラムソースから抽出したＳＱＬ文を上記記憶手段に格納する機能と、
当該プログラムソースの識別情報と該プログラムソースから抽出したＳＱＬ文の上記記憶手段における格納場所情報および当該ＳＱＬ文の識別情報を対応付けた対応表情報を生成して上記記憶手段に格納する機能とを有し、
上記検索機能は、
上記検索条件としてＳＱＬ文のアクセス内容の少なくとも一部が入力されると、上記記憶手段に格納されたアクセスパターン情報を検索し、上記入力されたアクセス内容を含むＳＱＬ文の識別情報を読み出し、当該ＳＱＬ文の識別情報を用いて上記対応表情報を検索し、当該ＳＱＬ文の識別情報に対応付けられたプログラムソースの識別情報と当該ＳＱＬ文の格納場所情報からなる対応表情報を抽出する機能を有し、
上記出力機能は、
上記検索機能が抽出した対応表情報を表示画面に表示する機能と、
表示した対応表情報中の格納場所情報に対する上記入力手段からの選択指示入力に応じて、選択された格納場所情報で特定されるＳＱＬ文を上記記録手段から読み出して表示する機能とを有する
ことを特徴とするＳＱＬ管理システム。
【請求項３】
請求項１もしくは請求項２のいずれかに記載のＳＱＬ管理システムであって、
上記解析機能は、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と、当該テーブルにおける上記ＳＱＬ文の操作句で指定される項目名と条件句で指定される項目名および該条件句に記述された指示情報の少なくともいずれかひとつを対応付けたアクセスパターン表を、上記アクセスパターン情報として生成し、上記記憶手段に格納する機能を有することを特徴とするＳＱＬ管理システム。
【請求項４】
請求項１もしくは請求項２のいずれかに記載のＳＱＬ管理システムであって、
上記解析機能は、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文における操作句を対応付けて登録した第１のアクセスパターン表を生成する機能と、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名を対応付けて登録した第２のアクセスパターン表を生成する機能と、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と当該テーブルにおける当該ＳＱＬ文の操作句で指定される項目名とを対応付けて登録した第３のアクセスパターン表を生成する機能と、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と当該テーブルにおける当該ＳＱＬ文の操作句で指定される項目名および条件句で指定される項目名と該条件句に記述された指示情報を対応付けて登録した第４のアクセスパターン表を生成する機能と
を有し、生成した第１〜第４のアクセスパターン表を、上記アクセスパターン情報として上記記憶手段に格納し、
上記検索機能は、
上記検索条件としてＳＱＬ文のアクセス内容の少なくとも一部が入力されると、上記記憶手段に格納されたアクセスパターン情報を検索し、上記入力されたアクセス内容を含むＳＱＬ文の識別情報を読み出し、当該ＳＱＬ文の識別情報を用いて上記記憶手段に格納されたアクセスパターン情報を検索して、当該ＳＱＬ文の識別情報が登録された第１〜第４のアクセスパターン表を抽出する機能を有し、
上記出力機能は、
上記検索機能が抽出した第１〜第４のアクセスパターン表を表示画面に表示する機能を有する
ことを特徴とするＳＱＬ管理システム。
【請求項５】
請求項１から請求項４のいずれかに記載のＳＱＬ管理システムであって、
上記検索機能は、
上記入力された検索条件から、該検索条件に対応するアクセスパターン情報を抽出するためのＳＱＬ文を生成する機能と、
該生成したＳＱＬを実行して上記入力された検索条件に対応するアクセスパターン情報を抽出する機能と
を有することを特徴とするＳＱＬ管理システム。
【請求項６】
データを入力する入力手段と、入力手段が入力したデータおよびプログラムを記憶する記憶手段と、記憶手段からプログラムを読み出し該プログラムに基づく処理を実行する処理手段と、処理手段の処理結果を出力する出力手段とを具備したコンピュータシステムによる、上記記憶手段に記憶したプログラムソースに記述されたＳＱＬ文のＳＱＬ管理方法であって、
上記記憶手段から上記プログラムソースを読み込み、
読み込んだプログラムソースに記述されたＳＱＬ文を抽出し、
抽出したＳＱＬ文を解析して該ＳＧＬ文のアクセス内容を読み出し、当該ＳＧＬ文に識別情報を付与し、該識別情報に、読み出した当該ＳＧＬ文のアクセス内容を含む解析結果情報を対応付けたアクセスパターン情報を生成して上記記憶手段に格納する第１のステップと、
上記入力手段から入力された検索条件を用いて上記記憶手段に格納されたアクセスパターン情報を検索し、当該検索条件に対応するアクセスパターン情報を抽出する第２のステップと、
抽出したアクセスパターン情報を上記出力手段を介して出力する第３のステップと
を有することを特徴とするＳＱＬ管理方法。
【請求項７】
請求項６に記載のＳＱＬ管理方法であって、
上記第１のステップは、
上記プログラムソースから抽出したＳＱＬ文を上記記憶手段に格納するステップと、
当該プログラムソースの識別情報と該プログラムソースから抽出したＳＱＬ文の上記記憶手段における格納場所情報および当該ＳＱＬ文の識別情報を対応付けた対応表情報を生成して上記記憶手段に格納するステップとを有し、
上記第２のステップは、
上記検索条件としてＳＱＬ文のアクセス内容の少なくとも一部が入力されると、上記記憶手段に格納されたアクセスパターン情報を検索し、上記入力されたアクセス内容を含むＳＱＬ文の識別情報を読み出し、当該ＳＱＬ文の識別情報を用いて上記対応表情報を検索し、当該ＳＱＬ文の識別情報に対応付けられたプログラムソースの識別情報と当該ＳＱＬ文の格納場所情報からなる対応表情報を抽出するステップを有し、
上記第３のステップは、
上記抽出した対応表情報を表示画面に表示すると共に、表示した対応表情報中の格納場所情報に対する上記入力手段からの選択指示入力に応じて、選択された格納場所情報で特定されるＳＱＬ文を上記記録手段から読み出して表示するステップを有する
ことを特徴とするＳＱＬ管理方法。
【請求項８】
請求項６もしくは請求項７のいずれかに記載のＳＱＬ管理方法であって、
上記第１のステップは、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と、当該テーブルにおける上記ＳＱＬ文の操作句で指定される項目名と条件句で指定される項目名および該条件句に記述された指示情報の少なくともいずれかひとつを対応付けたアクセスパターン表を、上記アクセスパターン情報として生成するステップを有することを特徴とするＳＱＬ管理方法。
【請求項９】
請求項６もしくは請求項７のいずれかに記載のＳＱＬ管理方法であって、
上記第１のステップは、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文における操作句を対応付けて登録した第１のアクセスパターン表を生成するステップと、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名を対応付けて登録した第２のアクセスパターン表を生成するステップと、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と当該テーブルにおける当該ＳＱＬ文の操作句で指定される項目名とを対応付けて登録した第３のアクセスパターン表を生成するステップと、
上記ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と当該テーブルにおける当該ＳＱＬ文の操作句で指定される項目名および条件句で指定される項目名と該条件句に記述された指示情報を対応付けて登録した第４のアクセスパターン表を生成するステップと、
生成した第１〜第４のアクセスパターン表を、上記アクセスパターン情報として上記記憶手段に格納するステップとを有し、
上記第２のステップは、
上記検索条件としてＳＱＬ文のアクセス内容の少なくとも一部が入力されると、上記記憶手段に格納されたアクセスパターン情報を検索し、上記入力されたアクセス内容を含むＳＱＬ文の識別情報を読み出し、当該ＳＱＬ文の識別情報を用いて上記記憶手段に格納されたアクセスパターン情報を検索して、当該ＳＱＬ文の識別情報が登録された第１〜第４のアクセスパターン表を抽出するステップを有し、
上記第３のステップは、
上記検索機能が抽出した第１〜第４のアクセスパターン表を表示画面に表示するステップを有する
ことを特徴とするＳＱＬ管理方法。
【請求項１０】
請求項６から請求項９のいずれかに記載のＳＱＬ管理方法であって、
上記第２のステップは、
上記入力された検索条件から、該検索条件に対応するアクセスパターン情報を抽出するためのＳＱＬ文を生成するステップと、
該生成したＳＱＬを実行して上記入力された検索条件に対応するアクセスパターン情報を抽出するステップと
を有することを特徴とするＳＱＬ管理方法。
【請求項１１】
コンピュータに、請求項６から請求項１０のいずれかに記載のＳＱＬ管理方法における各ステップでの処理手順を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リレーショナルデータベース（ＲＤＢ）にアクセスするプログラムに記述されたＳＱＬ（Ｓｔｒｕｃｔｕｒｅｄ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）を管理する技術に係り、特に、プログラムおよびデータベースの維持管理の支援に好適な技術に関するものである。
【背景技術】
【０００２】
リレーショナルデータベースを有するシステムにおいて、データベースに対するアクセスは一般的にＳＱＬが使用される。ＳＱＬは、データの操作（アクセスパターン）をリレーショナル代数に基づく２次元の表の集合として扱い、また、その全てが基本的に１つの完結した文で成り立っている。
【０００３】
しかし、手続き型の条件分岐や繰り返し処理といった論理的な処理を行うことはできないため、システムに組み込む際、通常は他のプログラム言語で記述されたプログラムソース内に埋め込み、データベースが提供するプリコンパイラやプログラム言語製品が提供するコンパイラにより、システムで実行可能なモジュールとなる。
【０００４】
ところで、このようなＳＱＬを記述したプログラムは、プログラムの開発が終了しシステムが稼動した後でも、不具合への対処や、データベース構造の変更への対処等のシステム維持管理のため、プログラムを修正（バージョンアップ）する必要が生じることが多い。
【０００５】
この場合には一般に、システムの設計書やソフトウェア部品ライブラリ管理システムによりバージョンアップの必要があるプログラムを人手により洗い出し、改修作業を行う方法がとられる。
【０００６】
ここで、特許文献１で示されるように、ＳＱＬ文をプログラムと独立して一括管理する機能がある場合、バージョンアップを行うＳＱＬおよびプログラムの人手による洗い出しは比較的容易となる。
【０００７】
また、システムに新たな機能を追加する場合、既に存在するプログラムが使用可能であればそれを利用することになるが、利用できるプログラムが存在するかどうかは、やはりシステムの設計書やソフトウェア部品ライブラリ管理システムより検索することとなる。
【０００８】
ソフトウェア部品ライブラリとは、ソフトウェア部品本体の他、その仕様や利用方法等が説明されたドキュメントを格納するための部品データベースであり、部品管理ツールとしてのソフトウェア部品ライブラリ管理システムを用いて、部品利用ユーザや部品管理ユーザ等に対して各種のサービスが提供されるようになっている。
【０００９】
また、特許文献１に記載のように、個々のソフトウェア部品の依存関係について管理できるものもある。
【００１０】
しかしながら、このソフトウェア部品ライブラリ管理システムでは、プログラムに記述されたＳＱＬがどのようなアクセス内容を有しているかをシステム上で明示的にサポートする機能を有していないため、プログラム利用ユーザおよびプログラム管理ユーザは、個々のプログラムごとに仕様が説明されたドキュメントやプログラムソース等を参照し、それに基づいてバージョンアップや再利用対象のプログラムを検索する必要があった。
【００１１】
さらに、各プログラムが有するＳＱＬのアクセス内容を、ソフトウェア部品ライブラリ管理システムや他の情報を蓄積するツール等に登録するには、多大な労力が要求される。この結果、登録の際のミスも生じ易くなり、従来技術では、システムの維持管理において正確性に問題が生じてしまう。
【００１２】
また、上述の特許文献１で示される技術では、機能追加によりＳＱＬを変更することになった場合、ＳＱＬが一括管理されたファイルに存在するため、変更の必要のあるＳＱＬの洗い出しは比較的容易となるが、どのＳＱＬが変更対象かを洗い出せるようには管理されていない。
【００１３】
【特許文献１】特開２０００−３４７９１０号公報
【特許文献２】特開２００２−２７８７５４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
解決しようとする問題点は、従来の技術では、（１）プログラムに記述されたＳＱＬがどのようなアクセス内容を有しているかをシステム上で明示的にサポートする機能を有していない点と、（２）各プログラムが有するＳＱＬのアクセス内容を、ソフトウェア部品ライブラリ管理システムや他の情報を蓄積するツール等に登録するには、多大な労力が要求される点、および、（３）機能追加によりＳＱＬを変更することになった場合、どのＳＱＬが変更対象かを洗い出せるようには管理されていない点である。
【００１５】
本発明の目的は、これら従来技術の課題を解決し、プログラムに記述されたＳＱＬがどのようなアクセス内容を有しているかを明示的かつ簡易に管理することにより、プログラムの維持管理のため実際にプログラムを開発するユーザや、データベース構造やプログラムの登録および削除等の各種の管理を行う管理ユーザの双方の業務を効果的に支援することである。
【課題を解決するための手段】
【００１６】
上記目的を達成するため、本発明では、各プログラムソースに記述されたＳＱＬ文を解析して、各プログラムソース毎に、どのプログラムソースがどのアクセス内容のＳＱＬ文を有しているか、および、当該ＳＱＬ文がどこに格納されているかを示す情報を対応付けたプログラム−アクセスパターン対応表と、各ＳＱＬ文（の識別情報）毎に、当該ＳＱＬ文のアクセス内容を対応付けて登録した第１のアクセスパターン表、当該ＳＱＬ文のアクセス対象であるリレーショナルデータベースにおける表（テーブル）を対応付けて登録した第２のアクセスパターン表、当該表（テーブル）におけるアクセス対象の項目（カラム）を対応付けて登録した第２のアクセスパターン表、当該ＳＱＬ文の条件句における各検索条件情報（カラム、演算子、指定値種類）を対応付けて登録した第４のアクセスパターン表をそれぞれ生成して記憶装置に格納し、かつ、各プログラムソースに記述されたＳＱＬ文そのものを抽出して記憶装置に格納する。そして、ユーザより与えられた検索条件（操作句で特定される操作内容、条件句で特定されるテーブル名や項目名など）に対応して、プログラム−アクセスパターン対応表と各第１〜第４のアクセスパターン表を検索し、検索条件を含むＳＱＬ文（の識別情報）が対応付けられたレコードをプログラム−アクセスパターン対応表と各第１〜第４のアクセスパターン表から抽出し、表示装置等を介して表示する。
【発明の効果】
【００１７】
本発明によれば、バージョンアップや再利用対象のプログラムを必要とするリレーショナルデータベースの表（テーブル）名称や項目名称を用いて、容易にシステムの維持管理に必要な情報を得ることが可能となる。また、各プログラムが有するＳＱＬ文の管理が容易に行えるようになり、システムの維持管理において、その正確性を向上させることが可能となる。
【発明を実施するための最良の形態】
【００１８】
以下、図を用いて本発明を実施するための最良の形態例を説明する。図１は、本発明に係るＳＱＬ管理システムの構成例を示すブロック図であり、図２は、図１におけるアクセスパターン解析部が生成するプログラム−アクセスパターン対応表の具体例を示す説明図、図３は、図１におけるアクセスパターン解析部が生成する第１のアクセスパターン表の具体例を示す説明図、図４は、図１におけるアクセスパターン解析部が生成する第２のアクセスパターン表の具体例を示す説明図、図５は、図１におけるアクセスパターン解析部が生成する第３のアクセスパターン表の具体例を示す説明図、図６は、図１におけるアクセスパターン解析部が生成する第４のアクセスパターン表の具体例を示す説明図、図７は、図１におけるアクセスパターン解析部の処理動作例を示すフローチャートである。
【００１９】
図１におけるＳＱＬ管理システムは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）や主メモリ、表示装置、入力装置、外部記憶装置等を具備したコンピュータ構成からなり、光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、アクセスパターン解析部１０、アクセスパターン検索部４０、アクセスパターン表示部５０等の各処理部の機能を実行する。
【００２０】
このようなアクセスパターン解析部１０、アクセスパターン検索部４０、アクセスパターン表示部５０を具備した本例のＳＱＬ管理システムは、アクセスパターン解析部１０により、リレーショナルデータベースにアクセスするＳＱＬ文が記述されたプログラムソースを読み込み、このプログラムソースに記述されたＳＱＬ文を抽出し、抽出したＳＱＬ文を解析して、このＳＧＬ文のアクセス内容を読み出し、当該ＳＧＬ文に識別情報を付与し、この識別情報に、読み出した当該ＳＧＬ文のアクセス内容を含む解析結果情報を対応付けたアクセスパターン情報を生成して記憶装置に格納し、アクセスパターン検索部４０により、ユーザが入力装置を操作して入力した検索条件を用いて記憶装置に格納されたアクセスパターン情報を検索し、当該検索条件に対応するアクセスパターン情報を抽出し、アクセスパターン表示部５０により、抽出したアクセスパターン情報を、例えば表示装置の画面上に表示出力する。以下、その詳細を説明する。
【００２１】
図１において、プログラムソース１は、ＳＱＬ文が記述されており、図示していない記憶媒体あるいはネットワーク等から読み込んで磁気ディスク等の記憶装置に記憶されている。
【００２２】
アクセスパターン解析部１０は、ＳＱＬ文が記述されたプログラムソース１を記憶装置から読み込み、ＳＱＬ文を抜き出し、記憶装置としてのＳＱＬ文格納部２０に記録すると共に、抜き出したＳＱＬ文の内容を解析して、図２に詳細を示すプログラム−アクセスパターン対応表２００と、図３〜図６にそれぞれの詳細を示す第１〜第４のアクセスパターン表（図中、「アクセスパターン表（１）〜（４）」と記載）３００〜６００からなるアクセスパターン情報を生成し、アクセスパターンデータベース３０として記憶装置に格納する。
【００２３】
アクセスパターン検索部４０は、キーボードやマウス等の入力装置を介して入力されたユーザからの検索条件に基づき、アクセスパターンデータベース３０を検索して、検索条件に合致する情報、ここでは、アクセスパターン情報を検索する。
【００２４】
アクセスパターン表示部５０では、アクセスパターン検索部４０による検索結果を一覧形式で表示装置の画面上に表示し、また、検索結果からＳＱＬ文も表示する。
【００２５】
図２は、アクセスパターン解析部１０が生成して記憶装置に格納したプログラム−アクセスパターン対応表２００を示している。このプログラム−アクセスパターン対応表２００では、プログラムを特定するための識別情報としてのプログラム名称、ＳＱＬ文を特定するための識別情報としてのアクセスパターンＩＤ、および、ＳＱＬ文の格納場所を特定するための識別情報としてのＳＱＬ文格納場所が登録されている。
【００２６】
尚、ＳＱＬでは、ある表から照会した結果を追加する場合、そのＳＱＬ文にＳＥＬＥＣＴ句を追加記述する（副問い合わせ）ことができる。このため、あるＳＱＬ文が副問い合わせを有している場合は、プログラム名称に当該副問い合わせ用のＳＱＬを識別するアクセスパターンＩＤを格納し、管理する。
【００２７】
また、アクセスパターンＩＤは、アクセスパターン解析部１０が作成するが、プログラム名称とユニークな名称となるよう、ＩＤの付与基準を定められるようになっている必要がある。
【００２８】
図３に示す第１のアクセスパターン表３００は、アクセスパターンＩＤと当該ＳＱＬ文によるアクセス内容（データの操作種類）を対応付けて登録し管理するものである。ＳＱＬによるリレーショナルデータベースのアクセス（データ操作句）は照会（ＳＥＬＥＣＴ句）、追加（ＩＮＳＥＲＴ句）、更新（ＵＰＤＡＴＥ句）、削除（ＤＥＬＥＴＥ句）の４種類であり、この第１のアクセスパターン表３００では、アクセスパターンＩＤとデータの操作種類とを対応付けて登録する。
【００２９】
図４に示す第２のアクセスパターン表４００は、アクセスパターンＩＤと、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースのテーブル（表）を対応付けて登録し管理するものである。ＳＱＬ文は、そのアクセス対象であるリレーショナルデータベース上の表（テーブル）を必ず指定する必要があり、また、複数指定される場合があり、この第２のアクセスパターン表４００においては、アクセスパターンＩＤとアクセス（操作）の対象となる表（テーブル識別子）とを対応付けて登録する。
【００３０】
図５に示す第３のアクセスパターン表５００は、アクセスパターンＩＤと、ＳＱＬ文の出力、登録、更新等の操作対象のテーブルにおける項目を対応付けて登録し管理するものである。ＳＱＬ文における、照会（ＳＥＬＥＣＴ句）、追加（ＩＮＳＥＲＴ句）、更新（ＵＰＤＡＴＥ句）の操作では、それらのアクセス対象となる表（テーブル）内の項目が記述（指定）されており、その操作対象となる項目名は、表（テーブル）内においてのみユニークであるため、この第３のアクセスパターン表５００では、図４に示す第２のアクセスパターン表４００の登録内容に加えて、表（テーブル）名と対で項目名を管理する。
【００３１】
図６に示す第４のアクセスパターン表６００は、アクセスパターンＩＤとＳＱＬ文の検索項目を対応付けて登録し管理するものである。この第４のアクセスパターン表６００では、図５における第３のアクセスパターン表５００の登録内容に加えて、ＳＱＬ文の照会（ＳＥＬＥＣＴ句）、更新（ＵＰＤＡＴＥ句）、削除（ＤＥＬＥＴＥ句）においてＷＨＥＲＥ句（条件句）の後に記述される一連の条件式で使用される項目を対応付けて登録する。
【００３２】
図１におけるアクセスパターン解析部１０は、図７で示すような、処理ステップを持つプログラムモジュールまたはプログラムモジュール群で構成され、プログラムソース１に対するアクセスパターンの解析を行う。以下、この図７を用いて、アクセスパターン解析部１０による、本発明に係るプログラムモジュールまたはプログラムモジュール群に基づく処理動作を説明する。
【００３３】
まず、ＳＱＬ文が記述されているプログラムソース１を読み込み（ステップＳ７０１）、読み込んだプログラムソースからＳＱＬ文を抜き出し、主メモリ等に一次記憶する（ステップＳ７０２）。
【００３４】
データ操作用のＳＱＬ文は、ＳＥＬＥＣＴ句、ＩＮＳＥＲＴ句、ＵＰＤＡＴＥ句、ＤＥＬＥＴＥ句のいずれかから記述されているため、その句により、当該ＳＱＬ文がどのデータ操作種類かを判定する（ステップＳ７０３）。
【００３５】
操作種類がＳＥＬＥＣＴ句、ＩＮＳＥＲＴ句、ＵＰＤＡＴＥ句のいずれかの場合には、操作対象の項目を抜き出す（ステップＳ７０４）。尚、ＤＥＬＥＴＥ句については操作対象項目が存在しないため、この処理は不要である。
【００３６】
次に、操作対象の表（テーブル）名を抜き出す（ステップＳ７０５）。ＳＱＬ文では、操作対象の表（テーブル）名は、操作種類がＳＥＬＥＣＴ句、ＵＰＤＡＴＥ句、ＤＥＬＥＴＥ句の場合にはＦＲＯＭ句の後に、操作種類がＩＮＳＥＲＴ句の場合にはＩＮＴＯ句の後に記述される。ただし、ＩＮＴＯ句は省略されることがある。
【００３７】
操作種類がＳＥＬＥＣＴ句、ＵＰＤＡＴＥ句、ＤＥＬＥＴＥ句の場合で、かつ、ＷＨＥＲＥ句がある場合には、ＷＨＥＲＥ句の後に記述された検索条件を抜き出す（ステップＳ７０６）。
【００３８】
この検索条件は、左辺、演算子、右辺からなる複数の組と、それらの組を論理演算子で組み合わせたものであり、左辺および右辺には項目名（表名と組で記述されることもある）、検索値、関数、変数等が記述される。
【００３９】
ここでの解析は検索条件として使用されている項目、演算子、指定値の種類（検索値が指定されているのか、他の項目が指定されているのかといった内容）を抜き出す。
【００４０】
ＳＱＬ文の解析の中でさらにＳＥＬＥＣＴ句が記述されている場合がある。これは、副問い合わせの記述であり、ここで、副問い合わせの記述の有無の判定を行う（ステップＳ７０６ａ）。有れば（ステップＳ７０６ｂ）、当該副問い合わせに関して、再度、ステップＳ７０３からの処理を繰り返す。
【００４１】
ＳＱＬ文の全文に対する解析を終了した時点で、解析結果と同一の情報を持つアクセスパターン情報が既にアクセスパターンデータベース３０に登録されていないか検索する（ステップＳ７０７）。
【００４２】
解析結果と同一の情報を持つアクセスパターン情報がアクセスパターンデータベース３０に登録されていない場合には（ステップＳ７０７ａ）、新規にアクセスパターンＩＤを付与し（ステップＳ７０８）、解析したアクセスパターン情報を、図３〜図６の第１〜第４のアクセスパターン表３００〜６００に示す内容で編集し、アクセスパターンデータベース３０に格納する（ステップＳ７０９）。
【００４３】
その後、ステップＳ７０２の処理で抜き出したＳＱＬ文をＳＱＬ文格納部２０に格納すると共に、プログラム名称、アクセスパターンＩＤ、およびＳＱＬ文格納部２０の格納先を、図２に示す内容でプログラム−アクセスパターン対応表２００に編集して登録し、アクセスパターンデータベース３０に格納する（ステップＳ７１０）。
【００４４】
ステップＳ７０７ａの判定処理において、解析結果と同一の情報を持つアクセスパターン情報がアクセスパターンデータベース３０に登録されていた場合には、ステップＳ７１０での処理に進み、新規にアクセスパターン情報をアクセスパターンデータベース３０に登録する必要はないが、プログラム名称、登録されていたアクセスパターンＩＤ、および抜き出したＳＱＬ文の格納先については、アクセスパターンデータベース３０に登録すると共に、ステップＳ７０２の処理で抜き出したＳＱＬ文をＳＱＬ文格納部２０に格納する。
【００４５】
以下、ＳＱＬ文を解析する際の具体的な動作例について、図８〜図１５を用いて説明する。図８は、図１におけるプログラムソースの具体例を示す説明図、図９は、図８におけるプログラムソースに記述されたＳＱＬ文の具体例を示す説明図、図１０は、図９におけるＳＱＬ文から抽出された解析結果例を示す説明図、図１１は、図２におけるプログラム−アクセスパターン対応表の追加更新例を示す説明図、図１２は、図３における第１のアクセスパターン表の追加更新例を示す説明図、図１３は、図４における第２のアクセスパターン表の追加更新例を示す説明図、図１４は、図５における第３のアクセスパターン表の追加更新例を示す説明図、図１５は、図６における第４のアクセスパターン表の追加更新例を示す説明図である。
【００４６】
本アクセスパターン解析例では、図８に示す内容の「プログラムＡＢＣＤ００４０」に記述されたＳＱＬ文を解析し、その解析結果をアクセスパターンデータベース３０に格納することとする。
【００４７】
尚、解析前においては、アクセスパターンデータベース３０に、図２に示すプログラム−アクセスパターン対応表２００、および、図３〜図６に示す第１〜第４のアクセスパターン表３００〜６００に示される各解析結果が登録されているものとする。
【００４８】
まず、図８に示す内容の「プログラムＡＢＣＤ００４０」のソースコード８００を読み込み（図７におけるステップＳ７０１の処理に相当）、読み込んだソースコードを検索して図９に示すようにＳＱＬ文９００を抽出する（図７におけるステップＳ７０２の処理に相当）。
【００４９】
抽出したＳＱＬ文９００を解析し、図１０に示すアクセスパターン解析結果１０００を得る。すなわち、データ操作の種類（句）‘ＳＥＬＥＣＴ'の抜き出し（図７におけるステップＳ７０３の処理に相当）、出力、登録、更新の対象となる項目の‘ＣＯＬＭＵＮ＿００３'の抜き出し（図７におけるステップＳ７０４の処理に相当）、操作対象の表（テーブル）名の‘ＴＡＢＬＥ＿０１'の抜き出し（図７におけるステップＳ７０５の処理に相当）、検索対象項目の‘ＣＯＬＭＵＮ＿００１'、'＞'の抜き出し（図７におけるステップＳ７０６の処理に相当）を行う。
【００５０】
次に図７におけるステップＳ７０６ａ，Ｓ７０６ｂの処理に相当する、副問合せの判定を行うが、当該ＳＱＬ文９００には副問合せがないため、同一アクセスパターン情報の検索を行う（図７におけるステップＳ７０７の処理に相当）。
【００５１】
この同一アクセスパターン情報の検索処理では、アクセスパターンデータベース３０を検索し、抽出したＳＱＬ文９００の各項目が登録されているか否かの判定を行う。
【００５２】
まず、‘ＳＥＬＥＣＴ'が、図３に示す第１のアクセスパターン表３００に登録されているか否かを検索する。‘ＳＥＬＥＣＴ'は、図３に示す第１のアクセスパターン表３００に登録されているため、登録有りと判定する。
【００５３】
次に、‘ＣＯＬＭＵＮ＿００３'が、図５に示す第３のアクセスパターン表５００に登録されているか否かを検索する。‘ＣＯＬＭＵＮ＿００３'は、図５に示す第３のアクセスパターン表５００に登録されていないため、登録無しと判定する。
【００５４】
続けて、‘ＴＡＢＬＥ＿０１'が、図４に示す第２のアクセスパターン表４００に登録されているか否かを検索する。‘ＴＡＢＬＥ＿０１'は、図４に示す第４のアクセスパターン表４００に登録されているため、登録有りと判定する。
【００５５】
最後に、‘ＣＯＬＭＵＮ＿００１'、および、‘＞'が、図６に示す第４のアクセスパターン表６００に登録されているか否かを検索し、‘ＣＯＬＭＵＮ＿００１'、および、‘＞'は、図６に示す第４のアクセスパターン表６００に登録されていないため、登録無しと判定する。
【００５６】
このようなＳＱＬ文９００における各項目の検索および判定の結果、全てが登録有りとはならなかったため、同一のアクセスパターン情報は無いと決定し、アクセスパターンＩＤ‘ＰＴ１０２'を付与し（図７におけるステップＳ７０８の処理に相当）、アクセスパターンデータベース３０として記憶装置に格納された第１〜第４のアクセスパターン表３００〜６００のそれぞれに当該プログラムのアクセスパターン情報を追加し（図７におけるステップＳ７０９の処理に相当）、図９に示すＳＱＬ文９００をＳＱＬ文格納部２０に格納されたプログラム−アクセスパターン対応表２に登録する（図７におけるステップＳ７１０の処理に相当）。
【００５７】
このようにして解析結果を追加した例を、図１１〜図１５に示す。たとえば、図１１のプログラム−アクセスパターン対応表１１００においては、プログラム名称が‘ＡＢＣＤ００４０’、アクセスパターンＩＤが‘ＰＴ１０２’、ＳＱＬ文格納場所が‘ｈｔｔｐ：／／ｗｗｗ．ｘｙｚ．ｃｏｍ／ｓｒｃ／ｓｑｌ／ｐｔ１０２．ｓｑｌ’のレコードが追加されている。
【００５８】
また、図１２に示す第１のアクセスパターン表１２００においては、アクセスパターンＩＤが‘ＰＴ１０２’で、データの操作種類（句）が‘ＳＥＬＥＣＴ’のレコードが追加されており、図１３に示す第２のアクセスパターン表１３００においては、アクセスパターンＩＤが‘ＰＴ１０２’で、アクセス対象表（テーブル）が‘ＴＡＢＬＥ＿０１’のレコードが追加され、図１４に示す第３のアクセスパターン表１４００においては、アクセスパターンＩＤが‘ＰＴ１０２’で、アクセス対象表（テーブル）が‘ＴＡＢＬＥ＿０１’、アクセス対象項目が‘ＣＯＬＭＵＮ’のレコードが追加され、図１５に示す第４のアクセスパターン表１５００においては、アクセスパターンＩＤが‘ＰＴ１０２’で、アクセス対象表（テーブル）が‘ＴＡＢＬＥ＿０１’、アクセス対象項目が‘ＣＯＬＭＵＮ’、演算子が‘＞’、指定値の種類が‘値指定’のレコードが追加されている。
【００５９】
次に、図１におけるアクセスパターン検索部４０とアクセスパターン表示部５０について図１６〜図２２を用いて説明する。尚、図１６は、図１におけるアクセスパターン検索部とアクセスパターン表示部の処理動作例を示すフローチャートであり、図１７は、図１におけるアクセスパターン検索部が読み込む検索条件の具体例を示す説明図、図１８は、図１におけるアクセスパターン検索部とアクセスパターン表示部の第１の処理結果例を示す説明図、図１９は、図１におけるアクセスパターン検索部とアクセスパターン表示部の第２の処理結果例を示す説明図、図２０は、図１におけるアクセスパターン検索部とアクセスパターン表示部の第３の処理結果例を示す説明図、図２１は、図１におけるアクセスパターン検索部とアクセスパターン表示部の第４の処理結果例を示す説明図、図２２は、図１におけるアクセスパターン検索部とアクセスパターン表示部の第５の処理結果例を示す説明図である。
【００６０】
アクセスパターン検索部４０は、ユーザが指定した検索条件に合致するアクセスパターン情報を、アクセスパターンデータベース３０から検索する処理を行う。このアクセスパターンデータベース３０にリレーショナルデータベースを使用した場合には、ＳＱＬを生成して発行することで当該アクセスパターン情報が検索可能である。
【００６１】
アクセスパターン表示部５０は、アクセスパターン検索部４０が検索した結果を表示装置の画面上に一覧表示し、さらに、ユーザからの入力装置を介しての要求に応じて、一覧表示した内容から対象のＳＱＬ文の全文を表示する処理を行う。
【００６２】
尚、これらの処理については、アクセスパターン検索部４０が、検索した結果をＨＴＭＬ形式に変換し、かつ一覧上のＳＱＬ格納場所より実態のＳＱＬ格納場所へのリンク付けを行えば、ユーザインターフェースとしてＷｅｂブラウザを利用するなどして実現可能である。
【００６３】
アクセスパターン検索部４０およびアクセスパターン表示部５０は、図１６で示すような、処理ステップを持つプログラムモジュールまたはプログラムモジュール群で構成され、各処理ステップにおいて、次に示す各処理を行う。
【００６４】
まず、アクセスパターン検索部４０は、ユーザから入力装置の操作を介して指定された表（テーブル）や項目等の検索条件を読み込み（ステップＳ１６０１）、次に、読み込んだ検索条件をもとに検索用のＳＱＬ文を生成し（ステップＳ１６０２）、生成したＳＱＬ文を実行して、アクセスパターンデータベース３０から実行結果、すなわち、検索条件に合致する情報を取得する（ステップＳ１６０３）。
【００６５】
アクセスパターン表示部５０は、アクセスパターン検索部４０による検索結果をＨＴＭＬ変換してＳＱＬ文格納部２０へのリンク付けを行い、検索結果を表示装置の画面上に一覧表示する（ステップＳ１６０４）。
【００６６】
このようにして、アクセスパターン情報を検索する際の具体的な動作について、図１７〜図２２を用いて説明する。ここでは、システムの維持管理業務においてシステムの変更等を行う際の支援動作について説明する。
【００６７】
システムの維持管理業務においてシステム変更等により、例えば、表（テーブル）「ＴＡＢＬＥ＿０１」における項目「ＣＯＬＭＵＮ＿００１」内の特定の値を削除する場合、当該表（テーブル）および項目を使用しているプログラムおよびＳＱＬ文の影響調査を行い、調査の結果によっては、当該プログラムまたは当該ＳＱＬ文の修正を行う必要がある。
【００６８】
影響のあるプログラムおよびＳＱＬ文を洗い出すために、ユーザは、入力装置を操作して検索条件を入力し、この検索条件に基づき本例では、検索条件に対応するアクセスパターン情報の検索と表示および当該ＳＱＬ文の全文検索と表示を行う。
【００６９】
検索条件として、プログラム名称、アクセス対象表（テーブル）、アクセス対象項目、条件対象表、条件対象項目、演算子、指定値の種類を指定することができる。ここでは、項目「ＣＯＬＭＵＮ＿００１」の値の種類の削除が発生するため、条件対象表（テーブル）名と条件対象項目とを検索条件として指定した検索を行い、検索結果を一覧する例を示す。
【００７０】
まず、検索条件として、条件対象表（テーブル）として「ＴＡＢＬＥ＿０１」、条件対象項目として「ＣＯＬＭＵＮ＿００１」を指定する。アクセスパターン検索部４０は、指定された検索条件を読み込み（図１６におけるステップＳ１６０１での処理に相当）、図１７に示すようにして、第１のアクセスパターン表〜第４のアクセスパターン表（図中、「アクセスパターン表１」〜「アクセスパターン表４」）の４つの表、および、プログラム−アクセスパターン対応表をそれぞれ検索するための検索ＳＱＬ文１７００を生成する（図１６におけるステップＳ１６０２での処理に相当）。
【００７１】
そして、アクセスパターン検索部４０は、生成した検索ＳＱＬ文１７００を実行して、その検索結果として、図１８〜図２２に示す各表（アクセスパターン情報）を取得し（図１６におけるステップＳ１６０３での処理に相当）、アクセスパターン表示部５０は、その検索結果を一覧で表示する（図１６におけるステップＳ１６０４での処理に相当）。
【００７２】
図１８においては、図１７における検索ＳＱＬ文１７００での最後（５番目）のＳＥＬＥＣＴ句の操作で得られた検索結果としてのプログラム−アクセスパターン対応表１８００を示している。
【００７３】
ユーザは、このようにして一覧表示された検索結果のプログラム−アクセスパターン対応表１８００により、検索条件にＣＯＬＭＵＮ＿００１を使用しているプログラムを洗い出すことができ、また、リンク付けされたアドレスを参照することにより当該ＳＱＬ文を参照することができる。
【００７４】
すなわち、表示されたプログラム−アクセスパターン対応表１８００においては、条件対象表（テーブル）：「ＴＡＢＬＥ＿０１」、条件対象項目：「ＣＯＬＭＵＮ＿００１」が指定された検索条件により、図１５に示す第４のアクセスパターン表１５００から検索されたアクセスパターンＩＤ（ＰＴ００１とＰＴ１０２）を有するレコード（アクセスパターン情報）が表示されている。
【００７５】
ユーザは、このプログラム−アクセスパターン対応表１８００を参照することで、システムの維持管理業務においてシステム変更等により、表「ＴＡＢＬＥ＿０１」の項目「ＣＯＬＭＵＮ＿００１」内の特定の値を削除する場合に、影響があるプログラムとして、「ＡＢＣＤ００１０」と「ＡＢＣＤ００４０」を特定でき、また、当該プロプログラムのＳＱＬ文の格納場所を特定し、当該ＳＱＬ文を参照することができる。
【００７６】
図１９においては、図１７における検索ＳＱＬ文１７００での最初（１番目）のＳＥＬＥＣＴ句による操作で得られた検索結果としての第１のアクセスパターン表（図中、「アクセスパターン表１」）１９００を示している。
【００７７】
この第１のアクセスパターン表（１）１９００では、検索で特定されたアクセスパターンのＩＤ（ＰＴ００１とＰＴ１０２）に関してのレコード（アクセスパターン情報）が示されており、ユーザは、システム変更等により表「ＴＡＢＬＥ＿０１」の項目「ＣＯＬＭＵＮ＿００１」内の特定の値を削除する場合に影響するＳＱＬ文を、その識別情報であるＰＴ００１とＰＴ１０２とにより判断できる。
【００７８】
図２０においては、図１７における検索ＳＱＬ文１７００での２番目のＳＥＬＥＣＴ操作で得られた検索結果としての第２のアクセスパターン表（図中、「アクセスパターン表２」）２０００を示している。
【００７９】
この第２のアクセスパターン表（２）２０００では、検索で特定されたアクセスパターンのＩＤ（ＰＴ００１とＰＴ１０２）に対応する表（テーブル）として「ＴＡＢＬＥ＿０１」が示されている。
【００８０】
図２１においては、図１７における検索ＳＱＬ文１７００での３番目のＳＥＬＥＣＴ操作で得られた検索結果としての第３のアクセスパターン表（図中、「アクセスパターン表３」）２１００を示している。
【００８１】
図２２においては、図１７における検索ＳＱＬ文１７００での４番目のＳＥＬＥＣＴ操作で得られた検索結果としての第４のアクセスパターン表（図中、「アクセスパターン表４」）２２００を示している。
【００８２】
この第４のアクセスパターン表（４）２２００では、検索で特定されたアクセスパターンのＩＤ（ＰＴ００１とＰＴ１０２）に関しての全てのレコードが示されており、ユーザは、システム変更等により表「ＴＡＢＬＥ＿０１」の項目「ＣＯＬＭＵＮ＿００１」内の特定の値を削除する場合に、例えばテーブル「ＴＡＢＬＥ＿０２」にも影響が出る可能性があることを判断できる。
【００８３】
さらに、この第４のアクセスパターン表（４）２２００を参照することで、ユーザは、項目「ＣＯＬＭＵＮ＿００１」がどのように使われているかを確認することができる。これらの各表の内容を確認した結果、削除する表「ＴＡＢＬＥ＿０１」の項目「ＣＯＬＭＵＮ＿００１」内の特定の値を指定しているＳＱＬ文が存在した場合、ユーザは、そのＳＱＬ文を修正対象として特定する。
【００８４】
以上の動作により、データベースシステムの維持管理業務における漏れの無い変更対象ＳＱＬ文の洗い出しが可能となる。また、この洗い出し作業を、プログラムを用いたコンピュータ処理により機械的に行うので、従来のユーザの目視による作業に比べると作業時間を大幅に削減することができる。
【００８５】
以上、図１〜図２２を用いて説明したように、本例では、アクセスパターン解析部１０が、リレーショナルデータベースにアクセスするＳＱＬ文が記述されたプログラムソースを読み込み、このプログラムソースに記述されたＳＱＬ文を抽出し、抽出したＳＱＬ文を解析して、このＳＧＬ文のアクセス内容を読み出し、当該ＳＧＬ文に識別情報を付与し、この識別情報に、読み出した当該ＳＧＬ文のアクセス内容を含む解析結果情報を対応付けたアクセスパターン情報を生成して記憶装置に格納し、アクセスパターン検索部４０が、ユーザが入力装置を操作して入力した検索条件を用いて記憶装置に格納されたアクセスパターン情報を検索し、当該検索条件に対応するアクセスパターン情報を抽出し、アクセスパターン表示部５０が、抽出したアクセスパターン情報を、例えば表示装置の画面上に表示出力する。
【００８６】
より詳細には、アクセスパターン解析部１０は、プログラムソース１から抽出したＳＱＬ文をＳＱＬ文格納部２０に格納し、当該プログラムソース１の識別情報と、このプログラムソース１から抽出したＳＱＬ文のＳＱＬ文格納部２０における格納場所情報および当該ＳＱＬ文の識別情報（アクセスパターンＩＤ）を対応付けたプログラム−アクセスパターン対応表２００を生成してアクセスパターンデータベース３０に格納し、アクセスパターン検索部４０は、検索条件としてＳＱＬ文のアクセス内容の少なくとも一部が入力されると、アクセスパターンデータベース３０に格納されたアクセスパターン情報を検索し、入力されたアクセス内容を含むＳＱＬ文の識別情報（アクセスパターンＩＤ）を読み出し、当該ＳＱＬ文の識別情報（アクセスパターンＩＤ）を用いてプログラム−アクセスパターン対応表２００を検索し、当該ＳＱＬ文の識別情報（アクセスパターンＩＤ）に対応付けられたプログラムソースの識別情報と当該ＳＱＬ文の格納場所情報からなる対応表情報を抽出し、アクセスパターン表示部５０は、アクセスパターン検索部４０が抽出したプログラム−アクセスパターン対応表２００を表示画面に表示すると共に、表示したプログラム−アクセスパターン対応表２００中の格納場所情報に対するユーザからの選択指示に応じて、選択された格納場所情報で特定されるＳＱＬ文をＳＱＬ文格納部２０から読み出して表示する。
【００８７】
さらに、アクセスパターン解析部１０は、ＳＱＬ文の識別情報（アクセスパターンＩＤ）に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と、当該テーブルにおけるＳＱＬ文の操作句で指定される項目名と条件句で指定される項目名および条件句に記述された指示情報の少なくともいずれかひとつを対応付けた第１〜第４のアクセスパターン表３００〜６００を、アクセスパターン情報として生成し、アクセスパターンデータベース３０に格納する。
【００８８】
例えば、アクセスパターン解析部１０は、ＳＱＬ文の識別情報に対して、当該ＳＱＬ文における操作句を対応付けて登録した第１のアクセスパターン表３００を生成し、また、ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名を対応付けて登録した第２のアクセスパターン表４００を生成し、また、ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と当該テーブルにおける当該ＳＱＬ文の操作句で指定される項目名とを対応付けて登録した第３のアクセスパターン表５００を生成し、また、ＳＱＬ文の識別情報に対して、当該ＳＱＬ文のアクセス対象となるリレーショナルデータベースにおけるテーブル名と当該テーブルにおける当該ＳＱＬ文の操作句で指定される項目名および条件句で指定される項目名と条件句に記述された指示情報を対応付けて登録した第４のアクセスパターン表６００を生成し、生成した第１〜第４のアクセスパターン表を、アクセスパターン情報として、アクセスパターンデータベース３０に格納する。そして、アクセスパターン検索部４０は、検索条件としてＳＱＬ文のアクセス内容の少なくとも一部が入力されると、アクセスパターンデータベース３０に格納されたアクセスパターン情報としての第１〜第４のアクセスパターン表３００〜６００を検索し、入力されたアクセス内容を含むＳＱＬ文の識別情報（アクセスパターンＩＤ）を読み出し、当該ＳＱＬ文の識別情報（アクセスパターンＩＤ）を用いて、各第１〜第４のアクセスパターン表３００〜６００を（アクセスパターン情報）を検索して、当該ＳＱＬ文の識別情報（アクセスパターンＩＤ）が登録された第１〜第４のアクセスパターン表のレコードを抽出し、アクセスパターン表示部５０は、アクセスパターン検索部４０が抽出した第１〜第４のアクセスパターン表３００〜６００のレコードを表示画面に表示する。
【００８９】
また、本例では、アクセスパターン検索部４０は、入力された検索条件から、この検索条件に対応するアクセスパターン情報を抽出するためのＳＱＬ文を生成し、生成したＳＱＬを実行することで、入力された検索条件に対応するアクセスパターン情報を抽出する。
【００９０】
このように、本例の技術によれば、バージョンアップや再利用対象のプログラムを必要とするリレーショナルデータベースの表（テーブル）名称や項目名称を用いて、容易にシステムの維持管理に必要な情報を得ることができる。また、各プログラムが有するＳＱＬ文の管理が容易に行えるようになり、データベースシステムの維持管理において、その正確性が向上されることになる。
【００９１】
尚、本発明は、図１〜図２２を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、図１に示すように、アクセスパターン解析部１０、アクセスパターン検索部４０、アクセスパターン表示部５０、ＳＱＬ文格納部２０、アクセスパターンデータベース３０のそれぞれを１つのコンピュータ装置内に設けた構成としているが、ＳＱＬ文格納部２０およびアクセスパターンデータベース３０を、アクセスパターン解析部１０、アクセスパターン検索部４０、アクセスパターン表示部５０の機能を実装したコンピュータ装置と異なるコンピュータ装置に設け、各コンピュータ装置間をＬＡＮ等のネットワークで接続する構成としても良い。
【００９２】
また、このようなコンピュータ装置の構成に関しても、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、ＦＤ（Fｌｅxｉbｌｅ  Dｉｓk）等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【図面の簡単な説明】
【００９３】
【図１】本発明に係るＳＱＬ管理システムの構成例を示すブロック図である。
【図２】図１におけるアクセスパターン解析部が生成するプログラム−アクセスパターン対応表の具体例を示す説明図である。
【図３】図１におけるアクセスパターン解析部が生成する第１のアクセスパターン表の具体例を示す説明図である。
【図４】図１におけるアクセスパターン解析部が生成する第２のアクセスパターン表の具体例を示す説明図である。
【図５】図１におけるアクセスパターン解析部が生成する第３のアクセスパターン表の具体例を示す説明図である。
【図６】図１におけるアクセスパターン解析部が生成する第４のアクセスパターン表の具体例を示す説明図である。
【図７】図１におけるアクセスパターン解析部の処理動作例を示すフローチャートである。
【図８】図１におけるプログラムソースの具体例を示す説明図である。
【図９】図８におけるプログラムソースに記述されたＳＱＬ文の具体例を示す説明図である。
【図１０】図９におけるＳＱＬ文から抽出された解析結果例を示す説明図である。
【図１１】図２におけるプログラム−アクセスパターン対応表の追加更新例を示す説明図である。
【図１２】図３における第１のアクセスパターン表の追加更新例を示す説明図である。
【図１３】図４における第２のアクセスパターン表の追加更新例を示す説明図である。
【図１４】図５における第３のアクセスパターン表の追加更新例を示す説明図である。
【図１５】図６における第４のアクセスパターン表の追加更新例を示す説明図である。
【図１６】図１におけるアクセスパターン検索部とアクセスパターン表示部の処理動作例を示すフローチャートである。
【図１７】図１におけるアクセスパターン検索部が読み込む検索条件の具体例を示す説明図である。
【図１８】図１におけるアクセスパターン検索部とアクセスパターン表示部の第１の処理結果例を示す説明図である。
【図１９】図１におけるアクセスパターン検索部とアクセスパターン表示部の第２の処理結果例を示す説明図である。
【図２０】図１におけるアクセスパターン検索部とアクセスパターン表示部の第３の処理結果例を示す説明図である。
【図２１】図１におけるアクセスパターン検索部とアクセスパターン表示部の第４の処理結果例を示す説明図である。
【図２２】図１におけるアクセスパターン検索部とアクセスパターン表示部の第５の処理結果例を示す説明図である。
【符号の説明】
【００９４】
１：プログラムソース、１０：アクセスパターン解析部、２０：ＳＱＬ文格納部、３０：アクセスパターンデータベース、４０：アクセスパターン検索部、５０：アクセスパターン表示部、２００，１１００，１８００：プログラム−アクセスパターン対応表、３０３，１２００，１９００：第１のアクセスパターン表、４００，１３００，２０００：第２のアクセスパターン表、５００，１４００，２１００：第３のアクセスパターン表、６００，１５００，２２００：第４のアクセスパターン表、８００：ソースコード、９００：ＳＱＬ文、１０００：アクセスパターン解析結果、１７００：検索ＳＱＬ文。
【図１】
2008077285.tif 000003
【図２】
2008077285.tif 000004
【図３】
2008077285.tif 000005
【図４】
2008077285.tif 000006
【図５】
2008077285.tif 000007
【図６】
2008077285.tif 000008
【図７】
2008077285.tif 000009
【図８】
2008077285.tif 000010
【図９】
2008077285.tif 000011
【図１０】
2008077285.tif 000012
【図１１】
2008077285.tif 000013
【図１２】
2008077285.tif 000014
【図１３】
2008077285.tif 000015
【図１４】
2008077285.tif 000016
【図１５】
2008077285.tif 000017
【図１６】
2008077285.tif 000018
【図１７】
2008077285.tif 000019
【図１８】
2008077285.tif 000020
【図１９】
2008077285.tif 000021
【図２０】
2008077285.tif 000022
【図２１】
2008077285.tif 000023
【図２２】
2008077285.tif 000024