(57)【要約】【課題】データベースシステム間の移行のための適切な前処理にかかる方法を提供すること。【解決手段】第１データベースシステムの運用状態を分析して変換用テーブルを作成する（Ｓ１０１）。この変換用テーブルは、第１のデータベースシステムの第１データベースエンジン用の第１ＳＱＬ文を含む接続文字列とデータベース制御文字列とを有する第１データベース接続・制御文字列を、第２データベースシステムの第２データベースエンジン用の第２ＳＱＬ文を含む接続文字列とデータベース制御文字列とを有する第２データベース接続・制御文字列に変換するためのものである。変換用テーブルを作成した後、それを利用して第１データベースシステムの第２データベースシステムへの移行を行う（Ｓ１０２）。【選択図】図１
2009223851.tif 000002
【特許請求の範囲】
【請求項１】
複数のレコードを有するユーザデータと、第１データベースエンジンと、該第１データベースエンジン用の第１ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列とを有する第１データベース接続・制御文字列とを少なくとも有する第１データベースシステムを、前記ユーザデータと、第２データベースエンジンと、該第２データベースエンジン用の第２ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列を有する第２データベース接続・制御文字列とを少なくとも有する第２データベースシステムに移行するデータベースシステム移行方法であって、
前記第１データベースシステムの運用状態を分析して前記第１データベース接続・制御文字列を前記第２データベース接続・制御文字列に変換するための変換用テーブルを作成する変換用テーブル作成ステップと、
前記変換用テーブルを利用して前記第１データベースシステムを前記第２データベースシステムに移行する移行ステップと
を備えるデータベースシステム移行方法。
【請求項２】
請求項１記載のデータベースシステム移行方法において、
前記変換用テーブル作成ステップは、
前記第１データベースシステムのランタイム時の前記第１ＳＱＬ文を抽出する抽出ステップと、
ＳＱＬ文変換テーブルに従い、抽出した前記第１ＳＱＬ文を変換して変換後ＳＱＬ文を得るＳＱＬ文変換ステップと、
前記第１データベースエンジンによる前記第１ＳＱＬ文の実行結果を第１実行結果として取得する一方で、前記第２データベースエンジンによる前記変換後ＳＱＬ文の実行結果を第２実行結果として取得する実行結果取得ステップと、
取得した前記第１実行結果と前記第２実行結果を比較して一致しているか否かを判定する実行結果判定ステップと、
該実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが不一致であった場合、当該不一致を解消し得るように前記ＳＱＬ文変換テーブルを更新して新たな前記ＳＱＬ文変換テーブルとするテーブル更新ステップと
を備えており、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致するまで、前記ＳＱＬ文変換ステップ、前記実行結果判定ステップ及び前記テーブル更新ステップを繰り返し行い、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致した時点における前記ＳＱＬ文変換テーブルを前記変換用テーブルとする、データベースシステム移行方法。
【請求項３】
請求項２記載のデータベースシステム移行方法において、
前記抽出ステップは、
前記データベース接続・制御文字列を含むファイルのフォーマットを変換して変換後ファイルを得るフォーマット変換ステップであって、前記フォーマットは、前記データベース接続・制御文字列の内容を確認し且つ変更することを可能とするものであるフォーマット変換ステップと、
前記変換後ファイルの内容を確認して前記第１ＳＱＬ文の実行に関連のある部分を特定し、実行された際に前記第１ＳＱＬ文を抽出する抽出用コードを前記特定した部分に対して挿入するように、前記変換後ファイルを変更して変更後ファイルを生成するコード挿入ステップと、
変更後ファイルに対して逆フォーマット変換をして前記ファイルと同一フォーマットを有する中間ファイルを生成する逆フォーマット変換ステップと、
前記中間ファイルを運用して前記第１ＳＱＬ文を抽出する中間ファイル運用ステップと
を備える、データベースシステム移行方法。
【請求項４】
請求項２又は請求項３記載のデータベースシステム移行方法において、
前記第１実行結果及び前記第２実行結果は、それぞれレコードセットの形で得られるものであり、
前記実行結果判定ステップは、レコード数、データフィールド数、第１レコードの全フィールドのデータ値、最終レコードの全フィールドのデータ値、及び、前記第１レコードと前記最終レコードの間の特定の一のレコードの全フィールドのデータ値の５点についてのみ、前記第１実行結果と前記第２実行結果の比較を行う
データベースシステム移行方法。
【請求項５】
請求項４記載のデータベースシステム移行方法において、
前記実行結果判定ステップは、
前記第１実行結果と前記第２実行結果とが不一致であった場合、不一致にかかる前記第１ＳＱＬ文と不一致となった前記第１実行結果及び前記第２実行結果を不一致結果テーブルとして保存するステップと、
該不一致結果テーブルに基づいて第１実行結果と前記第２実行結果を一致させる手法を特定する特定ステップと、
特定した手法をルール化して得られる情報を前記ＳＱＬ文変換テーブルに追記して、前記新たなＳＱＬ文変換テーブルを作成する新テーブル作成ステップと
を備える、データベースシステム移行方法。
【請求項６】
請求項１乃至請求項５のいずれかに記載のデータベースシステム移行方法であって、前記ユーザデータと前記第１データベース接続・制御文字列が一つのファイルに含まれており、当該ファイルを対象とした前記第１データベースシステムの前記第２データベースシステムへの移行を補助するツールが用意されている場合において、
前記移行ステップは、
前記ファイルに含まれるすべてのオブジェクトをテキストファイルにエクスポートするエクスポートステップと、
前記変換用テーブルを用いて、エクスポートされた前記テキストファイルに含まれる前記第１ＳＱＬ文を前記第２ＳＱＬ文に変換するテキストファイル変換ステップと、
変換されたテキストファイルを前記ファイルにインポートするインポートステップと、
前記ツールを用いて前記インポート後のファイルからの移行を行うツール使用ステップと
を備えている、データベースシステム移行方法。
【請求項７】
第１データベースシステムから前記第２データベースシステムへの移行に用いられる変換用テーブルを作成する変換用テーブル作成方法であって、
前記第１データベースシステムは、複数のレコードを有するユーザデータと、第１データベースエンジンと、該第１データベースエンジン用の第１ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列とを有する第１データベース接続・制御文字列とを少なくとも有するものであり、
前記第２データベースシステムは、前記ユーザデータと、第２データベースエンジンと、該第２データベースエンジン用の第２ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列を有する第２データベース接続・制御文字列とを少なくとも有するものであり、
前記変換用テーブルは、前記第１データベース接続・制御文字列を前記第２データベース接続・制御文字列に変換するためのものである、変換用テーブル作成方法において、
前記第１データベースシステムのランタイム時の前記第１ＳＱＬ文を抽出する抽出ステップと、
ＳＱＬ文変換テーブルに従い、抽出した前記第１ＳＱＬ文を変換して変換後ＳＱＬ文を得るＳＱＬ文変換ステップと、
前記第１データベースエンジンによる前記第１ＳＱＬ文の実行結果を第１実行結果として取得する一方で、前記第２データベースエンジンによる前記変換後ＳＱＬ文の実行結果を第２実行結果として取得する実行結果取得ステップと、
取得した前記第１実行結果と前記第２実行結果を比較して一致しているか否かを判定する実行結果判定ステップと、
該実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが不一致であった場合、当該不一致を解消し得るように前記ＳＱＬ文変換テーブルを更新して新たな前記ＳＱＬ文変換テーブルとするテーブル更新ステップと
を備えており、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致するまで、前記ＳＱＬ文変換ステップ、前記実行結果判定ステップ及び前記テーブル更新ステップを繰り返し行い、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致した時点における前記ＳＱＬ文変換テーブルを前記変換用テーブルとする、変換用テーブル作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースシステムの移行に伴う処理に関する。
【背景技術】
【０００２】
事業規模との関係で当初はスタンドアローンを想定したデータベースシステムを使用していた企業が事業規模の拡大に伴ってクライアント／サーバ型のデータベースシステムを導入しようとする場合や、オープンソースのデータベースシステムから商用データベースシステムに変更する場合など、データベースシステムを移行したい場合がある。かかるデータベースシステムの移行要求に応えることを目的とした技術としては、例えば特許文献１に開示されたものがある。
【０００３】
特許文献１の０００６段落に記載されているように、使用可能なＳＱＬ文はデータベースシステム毎によって異なっている。従って、移行元のデータベースシステムに含まれていたモジュールやストアードプロシージャのようなＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列（以下、「データベース接続・制御文字列」）は、そのままでは移行先のデータベースシステムには適用できないことがある。これに対して、特許文献１のシステムにおいては、ＧＵＩ技術とＳＱＬ文自動変換処理とを連携させることにより、データベースシステムをスムーズに移行させることとしている。
【０００４】
【特許文献１】特開２００２−３５１７１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１のシステムを実現するためにはＳＱＬ文自動変換処理を可能としなければならないが、例示されているようなＳＱＬ文自動変換処理は適切な前処理なくしては現実的には不可能である。しかしながら、特許文献１には上記のような「適切な前処理」についての記載はなく、また、一般的に「適切な前処理」として確立された手法もない。
【０００６】
例えば、スタンドアローンを想定したデータベースシステムとクライアント／サーバ型のデータベースシステムの２タイプのデータベースシステムを同一企業が開発・販売し、更には、前者のデータベースシステムから後者のデータベースシステムへの移行もウィザードなどの提供によってサポートされている場合もあるが、その場合であっても、ウィザードによる移行処理を行った後に、移行処理のエラーレポートに従って手動で修正を加えなければ完全な移行処理は成し得ないというのが実情である。これは上記のような「適切な前処理」が確立されていない証左であるが、換言すれば、「適切な前処理」が提供されれば既存のデータベースシステムの自動変換処理も機能することとなる。
【０００７】
そこで、本発明は、データベースシステムの移行のための適切な前処理にかかる方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明によれば、第１のデータベースシステム移行方法として、複数のレコードを有するユーザデータと、第１データベースエンジンと、該第１データベースエンジン用の第１ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列とを有する第１データベース接続・制御文字列とを少なくとも有する第１データベースシステムを、前記ユーザデータと、第２データベースエンジンと、該第２データベースエンジン用の第２ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列を有する第２データベース接続・制御文字列とを少なくとも有する第２データベースシステムに移行するデータベースシステム移行方法であって、
前記第１データベースシステムの運用状態を分析して前記第１データベース接続・制御文字列を前記第２データベース接続・制御文字列に変換するための変換用テーブルを作成する変換用テーブル作成ステップと、
前記変換用テーブルを利用して前記第１データベースシステムを前記第２データベースシステムに移行する移行ステップと
を備えるデータベースシステム移行方法が得られる。
【０００９】
また、本発明によれば、第２のデータベースシステム移行方法として、第１のデータベースシステム移行方法において、
前記変換用テーブル作成ステップは、
前記第１データベースシステムのランタイム時の前記第１ＳＱＬ文を抽出する抽出ステップと、
ＳＱＬ文変換テーブルに従い、抽出した前記第１ＳＱＬ文を変換して変換後ＳＱＬ文を得るＳＱＬ文変換ステップと、
前記第１データベースエンジンによる前記第１ＳＱＬ文の実行結果を第１実行結果として取得する一方で、前記第２データベースエンジンによる前記変換後ＳＱＬ文の実行結果を第２実行結果として取得する実行結果取得ステップと、
取得した前記第１実行結果と前記第２実行結果を比較して一致しているか否かを判定する実行結果判定ステップと、
該実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが不一致であった場合、当該不一致を解消し得るように前記ＳＱＬ文変換テーブルを更新して新たな前記ＳＱＬ文変換テーブルとするテーブル更新ステップと
を備えており、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致するまで、前記ＳＱＬ文変換ステップ、前記実行結果判定ステップ及び前記テーブル更新ステップを繰り返し行い、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致した時点における前記ＳＱＬ文変換テーブルを前記変換用テーブルとする、データベースシステム移行方法が得られる。
【００１０】
また、本発明によれば、第３のデータベースシステム移行方法として、第２のデータベースシステム移行方法において、
前記抽出ステップは、
前記データベース接続・制御文字列を含むファイルのフォーマットを変換して変換後ファイルを得るフォーマット変換ステップであって、前記フォーマットは、前記データベース接続・制御文字列の内容を確認し且つ変更することを可能とするものであるフォーマット変換ステップと、
前記変換後ファイルの内容を確認して前記第１ＳＱＬ文の実行に関連のある部分を特定し、実行された際に前記第１ＳＱＬ文を抽出する抽出用コードを前記特定した部分に対して挿入するように、前記変換後ファイルを変更して変更後ファイルを生成するコード挿入ステップと、
変更後ファイルに対して逆フォーマット変換をして前記ファイルと同一フォーマットを有する中間ファイルを生成する逆フォーマット変換ステップと、
前記中間ファイルを運用して前記第１ＳＱＬ文を抽出する中間ファイル運用ステップと
を備える、データベースシステム移行方法が得られる。
【００１１】
また、本発明によれば、第４のデータベースシステム移行方法として、第２又は第３のデータベースシステム移行方法において、
前記第１実行結果及び前記第２実行結果は、それぞれレコードセットの形で得られるものであり、
前記実行結果判定ステップは、レコード数、データフィールド数、第１レコードの全フィールドのデータ値、最終レコードの全フィールドのデータ値、及び、前記第１レコードと前記最終レコードの間の特定の一のレコードの全フィールドのデータ値の５点についてのみ、前記第１実行結果と前記第２実行結果の比較を行う
データベースシステム移行方法が得られる。
【００１２】
また、本発明によれば、第５のデータベースシステム移行方法として、第４のデータベースシステム移行方法において、
前記実行結果判定ステップは、
前記第１実行結果と前記第２実行結果とが不一致であった場合、不一致にかかる前記第１ＳＱＬ文と不一致となった前記第１実行結果及び前記第２実行結果を不一致結果テーブルとして保存するステップと、
該不一致結果テーブルに基づいて第１実行結果と前記第２実行結果を一致させる手法を特定する特定ステップと、
特定した手法をルール化して得られる情報を前記ＳＱＬ文変換テーブルに追記して、前記新たなＳＱＬ文変換テーブルを作成する新テーブル作成ステップと
を備える、データベースシステム移行方法が得られる。
【００１３】
更に、本発明によれば、第６のデータベースシステム移行方法として、第１乃至第５のいずれかに記載のデータベースシステム移行方法であって、前記ユーザデータと前記第１データベース接続・制御文字列が一つのファイルに含まれており、当該ファイルを対象とした前記第１データベースシステムの前記第２データベースシステムへの移行を補助するツールが用意されている場合において、
前記移行ステップは、
前記ファイルに含まれるすべてのオブジェクトをテキストファイルにエクスポートするエクスポートステップと、
前記変換用テーブルを用いて、エクスポートされた前記テキストファイルに含まれる前記第１ＳＱＬ文を前記第２ＳＱＬ文に変換するテキストファイル変換ステップと、
変換されたテキストファイルを前記ファイルにインポートするインポートステップと、
前記ツールを用いて前記インポート後のファイルからの移行を行うツール使用ステップと
を備えている、データベースシステム移行方法が得られる。
【００１４】
また、本発明によれば、変換用テーブル作成方法として、
第１データベースシステムから前記第２データベースシステムへの移行に用いられる変換用テーブルを作成する変換用テーブル作成方法であって、
前記第１データベースシステムは、複数のレコードを有するユーザデータと、第１データベースエンジンと、該第１データベースエンジン用の第１ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列とを有する第１データベース接続・制御文字列とを少なくとも有するものであり、
前記第２データベースシステムは、前記ユーザデータと、第２データベースエンジンと、該第２データベースエンジン用の第２ＳＱＬ文を含むデータベース接続文字列とデータベース制御文字列を有する第２データベース接続・制御文字列とを少なくとも有するものであり、
前記変換用テーブルは、前記第１データベース接続・制御文字列を前記第２データベース接続・制御文字列に変換するためのものである、変換用テーブル作成方法において、
前記第１データベースシステムのランタイム時の前記第１ＳＱＬ文を抽出する抽出ステップと、
ＳＱＬ文変換テーブルに従い、抽出した前記第１ＳＱＬ文を変換して変換後ＳＱＬ文を得るＳＱＬ文変換ステップと、
前記第１データベースエンジンによる前記第１ＳＱＬ文の実行結果を第１実行結果として取得する一方で、前記第２データベースエンジンによる前記変換後ＳＱＬ文の実行結果を第２実行結果として取得する実行結果取得ステップと、
取得した前記第１実行結果と前記第２実行結果を比較して一致しているか否かを判定する実行結果判定ステップと、
該実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが不一致であった場合、当該不一致を解消し得るように前記ＳＱＬ文変換テーブルを更新して新たな前記ＳＱＬ文変換テーブルとするテーブル更新ステップと
を備えており、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致するまで、前記ＳＱＬ文変換ステップ、前記実行結果判定ステップ及び前記テーブル更新ステップを繰り返し行い、前記実行結果判定ステップの結果、前記第１実行結果と前記第２実行結果とが一致した時点における前記ＳＱＬ文変換テーブルを前記変換用テーブルとする、変換用テーブル作成方法が得られる。
【発明の効果】
【００１５】
本発明によれば、移行元のデータベースシステムにおけるランタイムのＳＱＬ文を取得し、事実上、取得したＳＱＬ文のすべてに対して検証を行いつつ変換用テーブルを作成していることから、信頼性の高い変換用テーブルを得ることができ、また、その変換用テーブルを用いてデータベースシステムの移行を確実に行うことができる。
【００１６】
なお、上述した本発明によるデータベースシステム移行方法又は変換用テーブル作成方法は、その一部をプログラムに実装することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態によるデータベース移行方法として、移行元のデータベースシステムがマイクロソフト社のＡｃｃｅｓｓであり、移行先のデータベースシステムが同じくマイクロソフト社のＳＱＬ  Ｓｅｒｖｅｒである場合について図面を参照しながら詳細に説明する。マイクロソフト社のＡｃｃｅｓｓには、Ａｃｃｅｓｓで構成されたデータベースシステムをＳＱＬ  Ｓｅｒｖｅｒに移行するために、「アップサイジングウィザード」という移行ツールが用意されている。このアップサイジングウィザードでは、Ａｃｃｅｓｓデータベースファイル（ｍｄｂファイル）をＡｃｃｅｓｓプロジェクトファイル（ａｄｐファイル）とＳＱＬ  Ｓｅｒｖｅｒ用のファイルとに分ける。なお、ｍｄｂファイルには、ユーザデータに加えて、ストアードプロシージャやモジュール等のデータベース接続・制御文字列も格納されているが、Ａｃｃｅｓｓプロジェクトファイルには、ｍｄｂファイルがＡｃｃｅｓｓによって実行されていた際のユーザインタフェースを実現するためのモジュール等だけが含まれ、ユーザデータやストアードプロシージャはＳＱＬ  Ｓｅｒｖｅｒ用のファイルに格納されることになる。ここで留意すべきは、Ａｃｃｅｓｓのデータベースエンジン（Ｊｅｔエンジン）とＳＱＬ  Ｓｅｒｖｅｒのデータベースエンジンでは、解釈できるＳＱＬ文に差異があるという点である。このＳＱＬ文の差異のため、アップサイジングウィザードを実行した際に、変換エラーが生じうる。生じてしまった変換エラーは、変換の際に出力されるレポートを参照して手動で修正を加えるしかない。これに対して、以下に説明する実施の形態においては、アップサイジングウィザードにより変換をかける前に、ｍｄｂファイルを分析して得られる変換用テーブルを用いて、ｍｄｂファイル内に含まれるＡｃｃｅｓｓ用のＳＱＬ文を含むデータベース接続・制御文字列ＳＱＬ  Ｓｅｒｖｅｒ用のＳＱＬ文を含むデータベース接続・制御文字列に予め変換しておくことにより、アップサイジングウィザード実行時に変換エラーを生じないようにしている。即ち、本実施の形態によるデータベース移行方法は、図１に示されるように、大きく２つのフェーズにより構成されている。最初のフェーズは、移行元となるデータベースシステムを分析して変換用テーブルを作成する分析フェーズ（変換用テーブル作成フェーズ）であり（Ｓ１０１）、続くフェーズは、作成された変換用テーブルを用いてデータベースシステムの移行を行う移行フェーズである（Ｓ１０２）。
【００１８】
分析フェーズでは、図２に示されるように、まず、移行元となるｍｄｂファイルを実際に運用した際にＡｃｃｅｓｓのデータベースエンジンに対して発行されるＳＱＬ文の抽出が行われる（Ｓ２０1）。本実施の形態においては、より具体的には、移行元となるｍｄｂファイルを所定のフォーマットに変換して変換後ファイルを得る（Ｓ３０１）。ここで、所定のフォーマットは、データベース接続・制御文字列の内容を確認し且つ変更することを可能とするフォーマットであり、本実施の形態においてはテキストファイル形式である。
【００１９】
次いで、変換後ファイルの内容を確認して、Ａｃｃｅｓｓ用のＳＱＬ文の実行に関連のある部分を特定し（Ｓ３０２）、その特定した部分に対して抽出用コードを挿入する（Ｓ３０３）。この抽出用コードは、ｍｄｂファイルが実際に運用された際に、対応するＳＱＬ文を切り出して出力するためのものであり、本実施の形態においてはＶＢＡにより記述されている。
【００２０】
変換後ファイルに含まれるすべてのＳＱＬ文に対して抽出用コードを挿入して、変更後ファイルを生成した後（Ｓ３０２において「なし」）、変更後ファイルに対して、Ｓ３０1のフォーマット変換の逆の作業となる逆フォーマット変換を行って中間ファイルを生成する（Ｓ３０４）。このことから理解されるように、中間ファイルは、移行元となるｍｄｂファイルと同じフォーマットであるが、ｍｄｂファイルに含まれるＳＱＬ文の実行に関連のある部分には抽出用コードが挿入されてなるものとなっている。
【００２１】
中間ファイルを生成した後、その中間ファイルを運用してｍｄｂファイルの実行時におけるＳＱＬ文の抽出を行う（Ｓ３０５）。このようにして抽出された例を図４に示す。図４において一番下の行に記載されているものがｍｄｂファイルのランタイムＳＱＬ文である。
【００２２】
図２に戻り、ランタイムＳＱＬ文が抽出されると（Ｓ２０１）、次いで、ＳＱＬ文変換テーブルに従って、抽出したＳＱＬ文の変換を行い、変換後ＳＱＬ文を得る（Ｓ２０２）。ここで、ＳＱＬ文変換テーブルは、例えば、図５に示されるようなものであり、変換後ＳＱＬ文は例えば図６の最下行に記載されたようなものとなる。
【００２３】
この時点でのＳＱＬ文変換テーブルがｍｄｂファイルに含まれるＳＱＬ文のすべてに適切に対応しているのであれば、この変換により、アップサイジングウィザードによる移行処理でも変換エラーのでない状態となる。それを調べるため、まず、ステップＳ２０１において抽出したランタイムＳＱＬ文をＡｃｃｅｓｓのデータベースエンジンにて実行することにより第１実行結果を得る一方で、ステップＳ２０２で得られた変換後ＳＱＬ文をＳＱＬ  Ｓｅｒｖｅｒのデータベースエンジンにて実行することにより第２実行結果を得る（Ｓ２０３）。このようにして得られた第１実行結果及び第２実行結果は、いずれも複数のレコードからなるレコードセットである。
【００２４】
次いで、ステップＳ２０３において得られた第１実行結果及び第２実行結果の対比を行い、両者が一致しているか否かを判定する（Ｓ２０４）。ここで、ＳＱＬ文の構文は、出力フィールド、対象元テーブル、条件文及びデータ順序の４つの要素で構成されているので、レコード数、データフィールド数、第１レコードの全フィールドのデータ値、最終レコードの全フィールドのデータ値、及び、前記第１レコードと前記最終レコードの間の特定の一のレコードの全フィールドのデータ値の５点についてのみ対比を行い、それらが第１実行結果及び第２実行結果間で一致していることを確認できれば、レコードセットの全データ値について対比せずとも、上述したＳＱＬ文の４つの要素が同一であることを確認することができる。
【００２５】
ステップＳ２０４における対比の結果、一致しなかったデータがあった場合には、それを解消するような変換規則を特定し、その内容に応じてＳＱＬ文変換テーブルの更新を行い（Ｓ２０５）、更新されたＳＱＬ文変換テーブルを用いて、ステップＳ２０４における判定結果が一致するまで、ステップＳ２０２〜Ｓ２０４を繰り返す。
【００２６】
ステップＳ２０５の処理に関し、より具体的には、図７に示されるように、まず、ステップ２０４において実行結果の対比を行った結果、一致しなかったデータについて、不一致結果テーブルを保存する（Ｓ７０１）。この不一致結果テーブルは、例えば図８に示されるように、対象となっているＳＱＬ文や、それによる実行結果のセットが格納するものである。このような不一致結果テーブルがあると、問題点の特定がし易くなる。この不一致結果テーブルを検討して、不一致を解消する手法を特定し（Ｓ７０２）、特定した手法をルール化して得られる情報をＳＱＬ文変換テーブル（図５参照）に追記する。なお、本実施の形態においては、不一致解消の手法の特定は手動で行っている。このようにして問題点の特定と、それを解消するためのＳＱＬ文の変換テーブルの更新を繰り返して行うことにより、いずれはステップＳ２０４において、すべての実行結果について同一であることを確認できることとなる。このようにして、第１及び第２の実行結果がすべて同一であることを確認できた場合、その時点におけるＳＱＬ文変換テーブルを移行フェーズにおいて変換用テーブルとして用いることができる（Ｓ１０２）。
【００２７】
本実施の形態においては、上述したように、移行元のデータベースシステムがＡｃｃｅｓｓであり、移行先のデータベースシステムがＳＱＬ  Ｓｅｒｖｅｒであるが、移行フェーズ（Ｓ１０２）においては、ｍｄｂファイルに対してアップサイジングツールをかける前に、図９に示されるような前処理を施すことにより、アップサイジングツールによる変換時におけるエラー発生をなくすることができる。
【００２８】
詳しくは、図９に示されるように、まずは、移行元となるｍｄｂファイル９０１をテキストファイル９０２にエクスポートし、エクスポートされたテキストファイル９０２を変換用テーブル（分析フェーズにおいて作成されたＳＱＬ文変換テーブル）９０３とＤＡＯ=>ＡＤＯ変換テーブルにより変換し、その変換されたテキストファイル９０４をｍｄｂファイル９０５にインポートすることにより、外形上はｍｄｂファイルであるが、含まれているＳＱＬ文はＳＱＬ  Ｓｅｒｖｅｒのものであるといったファイルが作成される。このインポート後のｍｄｂファイル９０５を対象として、アップサイジングツールをかけると、適切なａｄｐファイル９０６及びＳＱＬ  Ｓｅｒｖｅｒ用のファイルの作成が適切に行われる。
【００２９】
以上、本発明について、具体的なデータベースシステムを例に掲げて説明してきたが、本発明は上述した実施の形態に限定されるものではなく、他のデータベースシステム間の移行にも適用可能である。
【図面の簡単な説明】
【００３０】
【図１】本発明の実施の形態によるデータベースシステム移行方法を示すフローチャートである。
【図２】図１のＳ１０１の詳細を示すフローチャートである。
【図３】図２のＳ２０１の詳細を示すフローチャートである。
【図４】図２のＳ２０１において抽出されるＳＱＬ文を含むテーブルである。
【図５】図２のＳ２０２にて用いられるＳＱＬ文変換テーブルを示す図である。
【図６】図２のＳ２０２にて変換された後のＳＱＬ文を含むテーブルである。
【図７】図２のＳ２０５の詳細を示すフローチャートである。
【図８】図７のＳ７０１において保存される不一致結果テーブルの例を示す図である。
【図９】図１のＳ１０２の処理を例示する図である。
【符号の説明】
【００３１】
９０１      ｍｄｂファイル
９０２      テキストファイル
９０３      変換用テーブル
９０４      テキストファイル
９０５      ｍｄｂファイル
９０６      ａｄｐファイル
【図１】
2009223851.tif 000003
【図２】
2009223851.tif 000004
【図３】
2009223851.tif 000005
【図４】
2009223851.tif 000006
【図５】
2009223851.tif 000007
【図６】
2009223851.tif 000008
【図７】
2009223851.tif 000009
【図８】
2009223851.tif 000010
【図９】
2009223851.tif 000011