(57)【要約】【課題】リレーショナルデータベース上のリレーション情報をフラットファイルデータベース上で保持することができるソフトウェア装置を得る。【解決手段】リレーショナルデータベース２０上のテーブル１及びテーブル２間のリレーション情報を予め定義してリレーション定義データ１１を作成しておき、読取変換手段により、リレーショナルデータベース２０上のテーブル１、２及びリレーション定義データ１１を読み取り、テーブル１、２から生成されるファイルデータ及びファイル１、２間のリレーション情報である索引ファイルデータを生成して、メモリに格納し、変換手段により、メモリのファイルデータ及び索引ファイルデータを、フラットファイルデータベース形式のファイル１、２及び索引ファイル１−２、２−１として、フラットファイルデータベース３０に登録するようにした。【選択図】図１
2015225424.tif 000002
【特許請求の範囲】
【請求項１】
リレーショナルデータベース上のテーブル間のリレーション情報を利用者が定義できるように構成されたリレーション情報定義手段、
上記リレーショナルデータベースの各テーブルをフラットファイルデータベース形式のファイルデータに変換してメモリに格納するとともに、上記リレーション情報定義手段で定義されたテーブル間のリレーション情報を用いて、ファイルデータ間のリレーション情報であるフラットファイルデータベース形式の索引ファイルデータを生成して、上記メモリに格納する形式変換手段、
及び上記メモリに格納された上記ファイルデータ及び上記索引ファイルデータを、フラットファイルデータベース形式のファイル及び索引ファイルとして、フラットファイルデータベースに登録するファイル登録手段を備えたことを特徴とするソフトウェア装置。
【請求項２】
上記形式変換手段及び上記ファイル登録手段を定期的に動作させるように構成したことを特徴とする請求項１に記載のソフトウェア装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、リレーショナルデータベース上のリレーション情報を、フラットファイルデータベース上の索引ファイルに自動変換するソフトウェア装置に関するものである。
【背景技術】
【０００２】
従来のデータベース変換装置においては、リレーショナルデータベース、フラットファイルデータベース等を統合した別のデータベースシステムを構築している。（例えば、特許文献１参照）
また、データベース変換装置へのインプットをＣＯＢＯＬソースコードとして、索引情報を生成している。（例えば、特許文献２参照）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３５０６５６号公報（第６〜１１頁、第１図）
【特許文献２】特開平８−２６３３４２号公報（第３〜４頁、第１図）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載された従来のデータベース変換装置では、フラットファイルデータベース上でリレーション情報を利用するためには、統合データベースを再度フラットファイルデータベースへ変換した上で、フラットファイルデータベース上での索引ファイルへ変換する方法を別途考慮する必要があり、個別にソフトウェア装置を開発する必要があって、高コストであった。
また、特許文献２のものでは、入力がソースファイルなどであるために、データベース変換装置の動作するシステム上で、データのリレーションに変更があった場合のメンテナンス性が低いなどの問題があった。
【０００５】
この発明は、上述のような課題を解決するためになされたものであり、リレーショナルデータベース上のリレーション情報をフラットファイルデータベース上で保持することができるソフトウェア装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係わるソフトウェア装置においては、リレーショナルデータベース上のテーブル間のリレーション情報を利用者が定義できるように構成されたリレーション情報定義手段、リレーショナルデータベースの各テーブルをフラットファイルデータベース形式のファイルデータに変換してメモリに格納するとともに、リレーション情報定義手段で定義されたテーブル間のリレーション情報を用いて、ファイルデータ間のリレーション情報であるフラットファイルデータベース形式の索引ファイルデータを生成して、メモリに格納する形式変換手段、及びメモリに格納されたファイルデータ及び索引ファイルデータを、フラットファイルデータベース形式のファイル及び索引ファイルとして、フラットファイルデータベースに登録するファイル登録手段を備えたものである。
【発明の効果】
【０００７】
この発明によれば、リレーショナルデータベース上のテーブル間のリレーション情報を利用者が定義できるように構成されたリレーション情報定義手段、リレーショナルデータ
ベースの各テーブルをフラットファイルデータベース形式のファイルデータに変換してメモリに格納するとともに、リレーション情報定義手段で定義されたテーブル間のリレーション情報を用いて、ファイルデータ間のリレーション情報であるフラットファイルデータベース形式の索引ファイルデータを生成して、メモリに格納する形式変換手段、及びメモリに格納されたファイルデータ及び索引ファイルデータを、フラットファイルデータベース形式のファイル及び索引ファイルとして、フラットファイルデータベースに登録するファイル登録手段を備えたので、リレーショナルデータベース上のリレーション情報をフラットファイルデータベース上で保持することができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施の形態１によるソフトウェア装置を示す概要図である。
【図２】この発明の実施の形態１によるソフトウェア装置の構成を示すブロック図である。
【図３】この発明の実施の形態１によるソフトウェア装置のリレーション定義データの内部を示す図である。
【図４】この発明の実施の形態１によるソフトウェア装置が出力するフラットファイルデータベースのデータ例を示す図である。
【図５】この発明の実施の形態１によるソフトウェア装置の処理を示すフローチャートである。
【発明を実施するための形態】
【０００９】
実施の形態１．
以下、この発明の実施の形態１を図に基づいて説明する。
図１は、この発明の実施の形態１によるソフトウェア装置を示す概要図である。
図１において、ソフトウェア装置１０は、計算機によって構成され、後述するリレーション定義データ１１を有し、リレーショナルデータベース２０のリレーション情報を、フラットファイルデータベース３０に出力する。
リレーショナルデータベース２０上のテーブル１とテーブル２との間には、リレーションを持つレコードが存在する。リレーション定義データ１１は、リレーショナルデータベース２０上の各テーブル（図１では、テーブル１とテーブル２）のリレーションをもつレコード間のリレーション情報を定義している。
リレーショナルデータベース２０上のテーブル１のレコードは、テーブル２のレコードとリレーションを持っており、ソフトウェア装置１０のリレーション定義データ１１内に、テーブル１とテーブル２を結びつけるリレーション定義情報（図３参照）を持っている。
【００１０】
ソフトウェア装置１０は、テーブル１およびテーブル２、リレーション定義データ１１を入力として動作し、リレーショナルデータベース２０上のテーブル１およびテーブル２を単純にフラットファイルデータベース３０上に変換（図４参照）して、ファイル１とファイル２とする。
さらに、ファイル１とファイル２とのリレーションを表す索引ファイル１−２と、ファイル２とファイル１のリレーションを表す索引ファイル２−１とを、ソフトウェア装置１０が生成することにより、フラットファイルデータベース３０上でのリレーション情報の保持と、リレーション定義データ１１の変更によるリレーション情報の変更にも耐え得るソフトウェア装置１０を実現している。
【００１１】
図２は、この発明の実施の形態１によるソフトウェア装置の構成を示すブロック図である。
図２において、１０、１１は図１におけるものと同一のものである。図２は、ソフトウェア装置１０の構成を示し、リレーション定義データ１１のリレーション情報の定義をリレーションパターン毎に利用者が作成・変更・削除することが可能な定義編集手段１２（リレーション情報定義手段）と、定義編集手段１２で定義したリレーション定義情報を解析して、リレーショナルデータベース２０から該当データを読み込み、フラットファイルデータベース形式のデータとしてメモリに格納する読取変換手段１３（形式変換手段）と、読取変換手段１３の出力であるメモリのデータをフラットファイルデータベース形式のファイルとしてフラットファイルデータベース３０に登録する登録手段１４（ファイル登録手段）とを有する。
【００１２】
図３は、この発明の実施の形態１によるソフトウェア装置のリレーション定義データの内部を示す図である。
図３において、リレーション定義データ１１の内部では、参照元テーブル名称として、テーブル１があり、参照先テーブル名称としてテーブル２があり、これらのリレーション条件として、テーブル１．項目１がテーブル２．項目３と同じであり（リレーションを持ち）、かつテーブル１．項目２がテーブル２．項目４と同じであり、かつテーブル１．項目３がテーブル２．項目５と同じであることが示されている。
【００１３】
図４は、この発明の実施の形態１によるソフトウェア装置が出力するフラットファイルデータベースのデータ例を示す図である。
図４において、２０、３０は図１におけるものと同一のものである。ソフトウェア装置１０は、リレーショナルデータベース２０とリレーション定義データ１１が入力されると、フラットファイルデータベース３０上に、ファイル１とファイル２を出力するとともに、ファイル１とファイル２とのリレーション情報である索引ファイル１−２と、ファイル２とファイル１とのリレーション情報である索引ファイル２−１とを合わせて出力する。
図４のテーブル１のレコード１の項目１「ＡＡＡ」がテーブル２のレコード１、２の項目３と同じであり、テーブル１のレコード１の項目２「ＢＢＢ」がテーブル２のレコード１、２の項目４と同じであり、テーブル１のレコード１の項目３「ＣＣＣ」がテーブル２のレコード１、２の項目５と同じである。
【００１４】
次に、動作について説明する。
まず、リレーション情報の定義をリレーションパターン毎に作成・変更・削除することが可能な定義編集手段１２の動作について、説明する。
定義編集手段１２は、図３の表に記載の項目について、ソフトウェア装置１０の利用者が自由にリレーション定義情報を作成・変更・削除を行い、その結果をリレーション定義データ１１として保存することができる。一つ一つのリレーション定義情報がリレーションパターンである。
【００１５】
次に、定義編集手段１２で定義したリレーション定義情報を解析して、リレーション情報のリレーションパターンの判別を行い、リレーショナルデータベース２０から該当データを読み込む読取変換手段１３の動作について、図５のフローチャートを用いて説明する。
まず、リレーション定義情報から定義データを１件ずつ読み込み（ステップＳ１）、リレーション定義情報が０件となるまで、以降の処理を繰り返す。
【００１６】
繰り返し処理においては、参照元テーブルのレコード内容を全て取得し、それぞれをフラットファイルデータベース形式に変換した上で、該当レコードがフラットファイルの何レコード目かを示す「レコードＮｏ．」を付与し、計算機のメモリに格納する（ステップＳ２）。この処理は、図４のファイル１のデータ（ファイルデータ）をメモリ上に生成する処理である。
同様に、参照先テーブルのレコード内容を全て取得し、それぞれをフラットファイルデータベース形式に変換した上で、該当レコードがフラットファイルの何レコード目かを示す「レコードＮｏ．」を付与し、メモリに格納する（ステップＳ３）。この処理は、図４のファイル２のデータ（ファイルデータ）をメモリ上に生成する処理である。
【００１７】
次に、リレーション定義情報の持つ「リレーション条件」（図３参照）からＳＱＬ文を生成し、参照元テーブルと参照先テーブルのレコード内容を取得し、メモリ上のデータと比較の上、参照元→参照先のリレーション情報を生成し、メモリに格納する（ステップＳ４）。この処理は、図４の索引ファイル１−２のデータ（索引ファイルデータ）をメモリ上に生成する処理である。索引ファイル１−２は、レコードＮｏ．欄にファイル１のレコードＮｏ．が格納され、レコード内容欄に、ファイル１のレコードＮｏ．がリレーションをもつファイル２のレコードＮｏ．が格納されている。図４では、ファイル１のレコード１がファイル２のレコード１、２とリレーションをもつことが示されている。
【００１８】
逆のリレーションも同様に、参照先→参照元のリレーション情報を生成し、メモリに格納する（ステップＳ５）。この処理は、図４の索引ファイル２−１のデータ（索引ファイルデータ）をメモリ上に生成する処理である。索引ファイル２−１は、レコードＮｏ．欄にファイル２のレコードＮｏ．が格納され、レコード内容欄に、ファイル２のレコードＮｏ．がリレーションをもつファイル１のレコードＮｏ．が格納されている。図４では、ファイル１のレコード１がファイル２のレコード１とリレーションをもつとともに、ファイル１のレコード２がファイル２のレコード１とリレーションをもつことが示されている。
繰り返し処理は、定義データが存在しなくなるまで繰り返される（ステップＳ６、Ｓ７）。
【００１９】
次に、読取変換手段１３の出力をフラットファイルデータベース形式とするための登録手段１４の動作について説明する。
読取変換手段１３の出力は、フラットファイルデータベース形式として、計算機上のメモリ上に格納されている。このファイルデータ及び索引ファイルデータを、変更を加えずにフラットファイルデータベース３０へ、ファイル及び索引ファイルとして登録・更新する。
【００２０】
実施の形態１によれば、リレーショナルデータベースのリレーション情報を自動変換して、フラットファイルデータベース形式として利用できるように構成したので、別形式でリレーション情報を保持する必要がなく、個々のリレーション情報を変換するソフトウェア装置の作成も不要とすることができる。
このため、個別のソフトウェア装置の開発コストなしで、リレーショナルデータベースのデータからフラットファイルデータベースへのデータ変換が行えるようになる。
また、存在し得るリレーションパターンを定義化して利用者が編集できるようにしたので、どのようなリレーションパターンが発生した場合においても、追加のソフトウェア装置を用意する必要がなく、ソフトウェア装置の開発コストを削減することができる。
【００２１】
実施の形態２．
なお、実施の形態１では、リレーショナルデータベース２０のデータをフラットファイルデータベース３０へ変換する場合について述べたが、実施の形態２は、定期的にソフトウェア装置１０を動作させるようにした。すなわち、実施の形態１で述べた読取変換手段１３と登録手段１４を定期的に動作させる。
実施の形態２では、定期的にソフトウェア装置１０を動作させるようにしたので、リレーショナルデータベース２０のデータを正のデータとして、定期的にフラットファイルデータベース３０のデータ内容と同一化させる必要がある場合に、それを実現することができる。
【００２２】
実施の形態２によれば、定期的にソフトウェア装置を動作させることで、自動的にリレーショナルデータベースからフラットファイルデータベースへのリレーション情報を最新化でき、リレーション情報に変更が生じた場合においても、定義データを変更するのみでメンテナンスを可能とすることができる。
【００２３】
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【００２４】
１０  ソフトウェア装置、１１  リレーション定義データ、１２  定義編集手段、
１３  読取変換手段、１４  登録手段、２０  リレーショナルデータベース、
３０  フラットファイルデータベース。
【図１】
2015225424.tif 000003
【図２】
2015225424.tif 000004
【図３】
2015225424.tif 000005
【図５】
2015225424.tif 000006
【図４】
2015225424.tif 000007