(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6862042
(24)【登録日】2021年4月2日
(45)【発行日】2021年4月21日
(54)【発明の名称】データ移行プログラム作成システム及びデータ移行プログラム作成用プログラム
(51)【国際特許分類】
G06F 8/30 20180101AFI20210412BHJP
G06F 16/17 20190101ALI20210412BHJP
【FI】
G06F8/30
G06F16/17 100
【請求項の数】6
【全頁数】12
(21)【出願番号】特願2016-172171(P2016-172171)
(22)【出願日】2016年9月2日
(65)【公開番号】特開2018-37031(P2018-37031A)
(43)【公開日】2018年3月8日
【審査請求日】2019年8月5日
(73)【特許権者】
【識別番号】391016358
【氏名又は名称】東芝情報システム株式会社
(74)【代理人】
【識別番号】100090169
【弁理士】
【氏名又は名称】松浦 孝
(74)【代理人】
【識別番号】100074147
【弁理士】
【氏名又は名称】本田 崇
(72)【発明者】
【氏名】根本 清志
(72)【発明者】
【氏名】石崎 渉
【審査官】
北元 健太
(56)【参考文献】
【文献】
特開平11−272524(JP,A)
【文献】
特開2014−123321(JP,A)
【文献】
特許第5875654(JP,B1)
【文献】
特開2008−243193(JP,A)
【文献】
米国特許出願公開第2014/0208290(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/00 − 8/77
G06F 16/00 − 16/958
(57)【特許請求の範囲】
【請求項1】
移行元のデータベースのデータを、該移行元のデータベースと異なる仕様のデータベースへ移行させるデータ移行プログラム作成システムにおいて、
テンプレートファイルと該テンプレートに埋め込む入力データとに基づき、所定フォーマットのドキュメントを作成して出力するドキュメント作成手段と、
前記移行のときに行うデータ編集処理の種別情報を少なくとも含むデータ移行処理概要を記述した設計書ファイルと、前記設計書ファイルに記述されたデータ移行処理概要を埋め込むべき移行処理ソーステンプレートファイルと、を取り込み、前記ドキュメント作成手段に与えて動作させ、データ移行プログラムソースを生成出力するプログラムソース生成手段と、
移行元テーブル及び項目に設定された項目データに編集処理を加えて変更する具体的手法が記述された具体的内容プログラムソースにより構成される編集内容ソースファイルを備え、
前記プログラムソース生成手段は、第2編集タイプのデータ編集処理に関する生成を行う場合に、前記編集内容ソースファイルを参照して生成を行うデータ移行プログラム作成システムであって、
前記設計書ファイルのデータ編集処理の種別情報は、
移行元テーブル及び項目に設定された項目データをそのまま移行先テーブル及び項目へ移行する第1編集タイプと、
移行元テーブル及び項目に設定された項目データに編集処理を加えて変更し、移行先テーブル及び項目へ移行する第2編集タイプと、
を含み、
第2編集タイプが、変更処理の内容により複数に分けられている場合に、この複数にそれぞれ対応する前記編集内容ソースファイル内の具体的内容プログラムソースが、複数の編集クラス情報(文字列)中の1を選択して得られる複数の編集メソッド情報(文字列)中の1の編集メソッド情報から得ることができるように前記編集内容ソースファイルが構成されており、具体的内容プログラムソースには、要求される仕様のデータとするためのルール及び/または変換式を含むことを特徴とするデータ移行プログラム作成システム。
【請求項2】
設計書ファイルのデータ編集処理の種別情報には、
移行元テーブル及び項目に設定された項目データを移行先テーブル及び項目へ移行しない第3編集タイプと、設定された初期値をそのまま移行先テーブル及び項目にセットする第4編集タイプが設けられていることを特徴とする請求項1に記載のデータ移行プログラム作成システム。
【請求項3】
前記プログラムソース生成手段は、移行元データベースのデータをCSVデータとして移行先データベースへ送るデータ移行プログラムソースを生成出力することを特徴とする請求項1または2に記載のデータ移行プログラム作成システム。
【請求項4】
移行元のデータベースのデータを、該移行元のデータベースと異なる仕様のデータベースへ移行させるデータ移行プログラム作成処理を行うコンピュータを、
テンプレートファイルと該テンプレートに埋め込む入力データとに基づき、所定フォーマットのドキュメントを作成して出力するドキュメント作成手段、
前記移行のときに行うデータ編集処理の種別情報を少なくとも含むデータ移行処理概要を記述した設計書ファイルと、前記設計書ファイルに記述されたデータ移行処理概要を埋め込むべき移行処理ソーステンプレートファイルと、を取り込み、前記ドキュメント作成手段に与えて動作させ、データ移行プログラムソースを生成出力するプログラムソース生成手段
として機能させ、
移行元テーブル及び項目に設定された項目データに編集処理を加えて変更する具体的手法が記述された具体的内容プログラムソースにより構成される編集内容ソースファイルを、前記コンピュータが、前記プログラムソース生成手段として参照可能に構成され、
前記コンピュータを前記プログラムソース生成手段として、第2編集タイプのデータ編集処理に関する生成を行う場合に、前記編集内容ソースファイルを参照して生成を行うように機能させることを特徴とするデータ移行プログラム作成用プログラムであって、
前記設計書ファイルのデータ編集処理の種別情報は、
移行元テーブル及び項目に設定された項目データをそのまま移行先テーブル及び項目へ移行する第1編集タイプと、
移行元テーブル及び項目に設定された項目データに編集処理を加えて変更し、移行先テーブル及び項目へ移行する第2編集タイプと、
を含み、
第2編集タイプが、変更処理の内容により複数タイプに分けられている場合に、この複数にそれぞれ対応する前記編集内容ソースファイル内の具体的内容プログラムソースが、複数の編集クラス情報(文字列)中の1を選択して得られる複数の編集メソッド情報(文字列)中の1の編集メソッド情報から得ることができるように前記編集内容ソースファイルが構成されており、具体的内容プログラムソースには、要求される仕様のデータとするためのルール及び/または変換式を含むことを特徴とするデータ移行プログラム作成用プログラム。
【請求項5】
設計書ファイルのデータ編集処理の種別情報には、
移行元テーブル及び項目に設定された項目データを移行先テーブル及び項目へ移行しない第3編集タイプと、設定された初期値をそのまま移行先テーブル及び項目にセットする第4編集タイプが設けられていることを特徴とする請求項4に記載のデータ移行プログラム作成用プログラム。
【請求項6】
前記プログラムソース生成手段を、移行元データベースのデータをCSVデータとして移行先データベースへ送るデータ移行プログラムソースを生成出力するように機能させることを特徴とする請求項4または5に記載のデータ移行プログラム作成プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、システムリプレースなどに伴うデータベースのデータを移行する際に用いるデータ移行プログラムを作成するためのデータ移行プログラム作成システム及びデータ移行プログラム作成用プログラムに関するものである。
【背景技術】
【0002】
従来、この種のデータ移行プログラムを作成する場合には、設計書と称されている、データ移行処理内容を記述した文書をオペレータが見ながら作成を行うのが通例であった。このため、プログラム作成にミスが発生することがあり、適切なプログラムの作成に多大な時間を要するという問題があった。
【0003】
上記に対し、特許文献1には、データ移行用ツール生成プログラムが開示されている。このプログラムは、移行元データベースに含まれる共通項目に係るデータを、移行先データベースにおいて用いられるデータ構造に即したデータに変換するための、共通項目移行用プログラムを取得する共通項目移行用プログラム取得手段、移行元データベースに含まれユーザの指定に係る指定項目に係るデータを、移行先データベースにおいて用いられるデータ構造に即したデータに変換する変換用プログラムを、指定項目の夫々について取得し、組み合わせることで指定項目移行用プログラムを生成するための、指定項目移行用プログラム生成手段、共通項目移行用プログラムと指定項目移行用プログラムとを合わせることでデータ移行用ツールを生成するデータ移行用ツール生成手段、を備えるものである。
【0004】
更に、特許文献2には、データベース移行方法が開示されている。この特許文献2に記載の方法は、ネットワーク型データベースにおける各レコードの階層構造及び各レコードの実体の定義を記載したファイルからなる組織毎のデータベース定義ファイルに基づいて、それぞれの組織のシステムにおけるデータ構造に依存しない各レコードの仕様を1つの共通フォーマットで記述する新システムレコード仕様書を作成するステップと、該新システムレコード仕様書から各レコードのそれぞれを表形式で定義するためのSQL文を記載し、リレーショナルデータベースにおける各レコードの実体を定義する組織毎の新データベース定義ファイルと、該各レコードのそれぞれの形式を定義する組織毎のコピー句と、を作成するステップとを有している。
【0005】
また、特許文献2の方法では、全てのデータベースアクセスパターン処理の雛型を記述する新システムアクセスルーチン雛型を準備し、前記データベース定義ファイルに基づいて作成され前記新システムアクセスルーチン雛型に記述された仮記号に対して一括して処理すべき従属レコードの範囲の判定を行う際に参照する情報を有するパラメータファイルを作成するステップと、前記新システムレコード仕様書ファイルと前記パラメータファイルとに基づいて前記新システムアクセスルーチン雛型を変形・加工し、新システムアクセスルーチンを生成するステップとを有する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2013−41526号公報
【特許文献2】特開2006−293796号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記特許文献1に記載のプログラムは、移行元データベースのデータを共通項目に係るデータとユーザ指定のデータとに分けてプログラム作成し、これを合わせることにより全体を構成とするものである。このプログラムによると、このようなデータ分類が適用可能なデータベースに対して有効であるが、このような分類が成り立ち難いデータベースに対しては、適用ができないか適用しても旨く移行ができない可能性がある。
【0008】
他方、特許文献2のデータベース移行方法は、旧システムのデータベース定義ファイルを入力として、旧システムのデータベース定義から新システムのレコード仕様書ファイルとパラメータファイルを作成し、新システムのレコード仕様書ファイルから新システムのDB定義ファイルと新システムのコピー句、及び、新システムのレコード仕様書ファイルとパラメータファイルからデータベースアクセスルーチンを作成することができる効果を有している。また、このデータベースアクセスルーチンを起動するようにアプリケーションプログラムを自動変換することにより、旧システムから新システムへアプリケーションプログラムを機械的に移行することを可能とするという効果を有する。
【0009】
また、特許文献2のデータベース移行方法は、新システムのレコード仕様書ファイルは、旧システムのデータベース管理システム、新システムのデータベース管理システムのいずれにも依存しないレコード仕様書として格納されるため、多種のデータベース管理システムからの移行、多種のデータベース管理システムへの移行を柔軟に行うことができるという効果を有する。
【0010】
しかしながら、特許文献2のデータベース移行方法は、複数のデータベースを統合して1つのデータベースに移行させるものであり、大掛かりな構成や複雑な処理が必要である。従って、システムリプレースなどに伴うデータベースのデータを移行するプログラムの作成には、処理が重たくなる虞がある。
【0011】
本発明は上記のようなデータベースのデータ移行に関する技術の現状に鑑みてなされたもので、その目的は、移行元データベースのデータが共通項目に係るデータとそれ以外というような特殊な構成ではないデータベースのデータ移行にも好適であり、構成が大掛かりとなることや複雑な処理のない、データ移行プログラム作成システム及びデータ移行プログラム作成用プログラムを提供することである。
【課題を解決するための手段】
【0012】
本発明に係るデータ移行プログラム作成システムは、移行元のデータベースのデータを、該移行元のデータベースと異なる仕様のデータベースへ移行させるデータ移行プログラム作成システムにおいて、テンプレートファイルと該テンプレートに埋め込む入力データとに基づき、所定フォーマットのドキュメントを作成して出力するドキュメント作成手段と、前記移行のときに行うデータ編集処理の種別情報を少なくとも含むデータ移行処理概要を記述した設計書ファイルと、前記設計書ファイルに記述されたデータ移行処理概要を埋め込むべき移行処理ソーステンプレートファイルと、を取り込み、前記ドキュメント作成手段に与えて動作させ、データ移行プログラムソースを生成出力するプログラムソース生成手段と、移行元テーブル及び項目に設定された項目データに編集処理を加えて変更する具体的手法が記述された具体的内容プログラムソースにより構成される編集内容ソースファイルを備え、前記プログラムソース生成手段は、第2編集タイプのデータ編集処理に関する生成を行う場合に、前記編集内容ソースファイルを参照して生成を行うデータ移行プログラム作成システムであって、前記設計書ファイルのデータ編集処理の種別情報は、移行元テーブル及び項目に設定された項目データをそのまま移行先テーブル及び項目へ移行する第1編集タイプと、移行元テーブル及び項目に設定された項目データに編集処理を加えて変更し、移行先テーブル及び項目へ移行する第2編集タイプと、を含み、第2編集タイプが、変更処理の内容により複数に分けられている場合に、この複数にそれぞれ対応する前記編集内容ソースファイル内の具体的内容プログラムソースが、複数の編集クラス情報(文字列)中の1を選択して得られる複数の編集メソッド情報(文字列)中の1の編集メソッド情報から得ることができるように前記編集内容ソースファイルが構成されており、具体的内容プログラムソースには、要求される仕様のデータとするためのルール
及び/または変換式を含むことを特徴とする。
【0014】
本発明に係るデータ移行プログラム作成システムでは、設計書ファイルのデータ編集処理の種別情報には、移行元テーブル及び項目に設定された項目データを移行先テーブル及び項目へ移行しない第3編集タイプと、設定された初期値をそのまま
移行先テーブル及び項目にセットする第4編集タイプが設けられていることを特徴とする。
【0018】
本発明に係るデータ移行プログラム作成システムでは、前記プログラムソース生成手段は、移行元データベースのデータをCSVデータとして移行先データベースへ送るデータ移行プログラムソースを生成出力することを特徴とする。
【0019】
本発明に係るデータ移行プログラム作成用プログラムは、移行元のデータベースのデータを、該移行元のデータベースと異なる仕様のデータベースへ移行させるデータ移行プログラム作成処理を行うコンピュータを、テンプレートファイルと該テンプレートに埋め込む入力データとに基づき、所定フォーマットのドキュメントを作成して出力するドキュメント作成手段、前記移行のときに行うデータ編集処理の種別情報を少なくとも含むデータ移行処理概要を記述した設計書ファイルと、前記設計書ファイルに記述されたデータ移行処理概要を埋め込むべき移行処理ソーステンプレートファイルと、を取り込み、前記ドキュメント作成手段に与えて動作させ、データ移行プログラムソースを生成出力するプログラムソース生成手段として機能させ、移行元テーブル及び項目に設定された項目データに編集処理を加えて変更する具体的手法が記述された具体的内容プログラムソースにより構成される編集内容ソースファイルを、前記コンピュータが、前記プログラムソース生成手段として参照可能に構成され、前記コンピュータを前記プログラムソース生成手段として、第2編集タイプのデータ編集処理に関する生成を行う場合に、前記編集内容ソースファイルを参照して生成を行うように機能させることを特徴とするデータ移行プログラム作成用プログラムであって、前記設計書ファイルのデータ編集処理の種別情報は、移行元テーブル及び項目に設定された項目データをそのまま移行先テーブル及び項目へ移行する第1編集タイプと、移行元テーブル及び項目に設定された項目データに編集処理を加えて変更し、移行先テーブル及び項目へ移行する第2編集タイプと、を含み、第2編集タイプが、変更処理の内容により複数タイプに分けられている場合に、この複数にそれぞれ対応する前記編集内容ソースファイル内の具体的内容プログラムソースが、複数の編集クラス情報(文字列)中の1を選択して得られる複数の編集メソッド情報(文字列)中の1の編集メソッド情報から得ることができるように前記編集内容ソースファイルが構成されており、具体的内容プログラムソースには、要求される仕様のデータとするためのルール
及び/または変換式を含むことを特徴とする。
【0021】
本発明に係るデータ移行プログラム作成用プログラムでは、設計書ファイルのデータ編集処理の種別情報には、移行元テーブル及び項目に設定された項目データを移行先テーブル及び項目へ移行しない第3編集タイプと、設定された初期値をそのまま
移行先テーブル及び項目にセットする第4編集タイプが設けられていることを特徴とする。
【0025】
本発明に係るデータ移行プログラム作成用プログラムでは、前記プログラムソース生成手段を、移行元データベースのデータをCSVデータとして移行先データベースへ送るデータ移行プログラムソースを生成出力するように機能させることを特徴とする。
【発明の効果】
【0026】
本発明によれば、移行のときに行うデータ編集処理の種別情報を少なくとも含むデータ移行処理概要を記述した設計書ファイルと、前記設計書ファイルに記述されたデータ移行処理概要を埋め込むべき移行処理ソーステンプレートファイルと、を取り込み、テンプレートファイルとテンプレートに埋め込む入力データとに基づき、所定フォーマットのドキュメントを作成して出力するドキュメント作成手段を用いてデータ移行プログラムソースを生成出力するので、テンプレートに埋め込む入力データとして、移行のときに行うデータ編集処理の種別情報を少なくとも含むデータ移行処理概要を記述することで、容易にプログラムを作成することができる。このため、特殊な構成ではないデータベースのデータ移行にも好適なプログラムを作成することができ、また構成が大掛かりとなったり複雑な処理が必要となったりという心配を除去できる。
【図面の簡単な説明】
【0027】
【
図1】本発明に係るデータ移行プログラム作成システムの実施形態における構成を示すブロック図。
【
図2】本発明に係るデータ移行プログラム作成システムの実施形態において用いられる設計書ファイルの内容例を示す図。
【
図3】本発明に係るデータ移行プログラム作成システムの実施形態において用いられる編集内容ソースファイルの内容例を示す図。
【
図4】本発明に係るデータ移行プログラム作成システムの実施形態において用いられる移行処理ソーステンプレートファイルの内容例を示す図。
【
図5】本発明に係るデータ移行プログラム作成システムの実施形態の動作を示すフローチャート。
【
図6】本発明に係るデータ移行プログラム作成システムの実施形態により作成されたソース(編集内容ソースファイルのソースのアドイン前)の一例を示す図。
【発明を実施するための形態】
【0028】
以下添付図面を参照して本発明に係るデータ移行プログラム作成システム及びデータ移行プログラム作成用プログラムの実施形態を説明する。各図において同一の構成要素には、同一の符号を付して重複する説明を省略する。
図1に、本発明に係るデータ移行プログラム作成システムの実施形態の構成図を示す。
【0029】
図1に示されるように、データ移行プログラム作成システムの実施形態は、移行元のデータベースのデータを、該移行元のデータベースと異なる仕様のデータベースへ移行させるデータ移行プログラム作成システムであり、ドキュメント作成手段11を備える。ドキュメント作成手段11は、テンプレートファイルとテンプレートに埋め込む入力データとに基づき、所定フォーマットのドキュメントを作成して出力するものである。このドキュメント作成手段11は、例えば、Apache Jakarta Project により開発されたVelocityというテンプレートエンジンを用いることができる。
【0030】
データ移行プログラム作成システムの実施形態は、設計書ファイル21と移行処理ソーステンプレートファイル22を備える。これらの設計書ファイル21と移行処理ソーステンプレートファイル22は、オペレータにより作成されて記憶手段(メモリ)に記憶されているものとすることができる。
【0031】
ここでは、
図1の移行元データベース100のデータを移行先データベース200のデータとして移行するものとする。上記設計書ファイル21は、移行のときに行うデータ編集処理の種別を少なくとも含むデータ移行処理概要を記述したものであり、例えば、Excel(登録商標)によって作成された
図2に示されるような情報である。即ち、上段に「参照テーブル」として移行元データベース100のテーブルに関する情報が記載されている。この例では、移行元データベース100には、後述するCSVデータ出力に使用する「参照テーブル名」にテーブル名「TABLE1」のテーブルとテーブル名「TABLE2」のテーブルが存在することを示す。「抽出仕様」に記載の情報は、移行元データベース100の抽出条件を示している。また、付加条件に記載の情報は、CSVデータ出力に使用するもので、ソート条件を示している。
【0032】
図2の設計書ファイル21の下段に、「移行仕様」としてデータ移行処理概要を記述したものが示されている。「移行仕様」のテーブルの内容を、
図2の最上部に示されているアルファベットにより列を特定して説明する。列Bには移行先テーブルのカラム名が記載され、列Cには移行先テーブルの項目名が記載され、列Dには移行先テーブルのデータ型が記載され、列Eには移行先テーブルの長さ(容量)が記載され、列Jは備考欄となっている。
【0033】
「移行仕様」のテーブルの列Kには、設計書ファイルのデータ編集処理の種別情報がセットされる。この種別情報には、「移行元テーブル及び項目に設定された項目データをそのまま移行先テーブル及び項目へ移行する」第1編集タイプと、「移行元テーブル及び項目に設定された項目データに編集処理を加えて変更し、移行先テーブル及び項目へ移行する」第2編集タイプとが含まれる。上記第1編集タイプを本実施形態では、編集タイプ「1」として表している。
【0034】
第2編集タイプは、変更処理の内容により複数タイプに分けられていても良く、本実施形態では、第2編集タイプを「編集クラス名(編集クラス情報)及びメソッド名(メソッド情報)により設定されたソースプログラムを使用して単純な編集処理を行う」編集タイプ「3」と、「編集クラス名及びメソッド名により設定されたソースプログラムを使用して複雑な編集処理を行う」編集タイプ「4」とに分けている。編集タイプ「3」と編集タイプ「4」においては、移行元テーブル(物理名)及び項目(物理名)に設定された情報はパラメータとなる。
【0035】
上記の第2編集タイプの編集処理において使用する編集クラス名及びメソッド名により設定されたソースプログラムは、移行元テーブル及び項目に設定された項目データに編集処理を加えて変更する具体的手法が記述された具体的内容プログラムソースの編集内容ソースファイル13として本システムに備えられる。この編集内容ソースファイル13は、例えばJava(登録商標)を用いてオペレータにより作成されて記憶手段(メモリ)に記憶されているものとすることができる。
【0036】
編集内容ソースファイル13の具体例を
図3に示す。例えば、編集クラス名(文字列)と編集メソッド(文字列)により1連のソースを得ることができるように構成されたテーブルとなっている。ソースの欄には、説明を分かり易くするために、文章により記載しているが、実際はJavaによりメソッド情報であるソースが記載されている。編集内容ソースファイル13は、データベースの移行に用いられるものであるから、例えば、昭和や明治などの元号による年齢を西暦の表記としたり、日付を何か月後(前)にしたり、摂氏温度を華氏温度へ変換したり、文字列をいくつかの桁にゼロサプライしたり、など、要求される仕様のデータに変更するためのルールがソースとして格納されている。
ここに示したメソッド情報に対応するソースは、一例に過ぎず、データベースの内容により、また、移行する移行先データベースがどのような仕様であるかにより、必要な変換式などが
メソッド情報に対応するソースとされる。
【0037】
なお、種別情報としては、上記以外に、移行元テーブル及び項目に設定された項目データを移行先テーブル及び項目へ移行しない第3編集タイプと、設定された初期値をそのまま
移行先テーブル及び項目にセットする第4編集タイプ設けることができる。本実施形態では、第3編集タイプを編集タイプ「5」として表し、第4編集タイプを編集タイプ「2」として表している。
【0038】
「移行仕様」のテーブルの内容の説明を続ける。列Lには移行元テーブル名がセットされ、列Mはその論理名である。また、列Nにはカラム名がセットされ、列Oはその論理名である。列Pには編集タイプ「2」の場合の初期値がセットされ、列Qには編集仕様がセットされる。この編集仕様は該当する移行先テーブルの項目の仕様に沿う形式に編集を指示するためのものである。列Rには編集タイプ「3」または「4」の場合に使用する編集内容ソースファイル13の編集クラス名がセットされ、列Sには編集タイプ「3」または「4」の場合に使用する編集内容ソースファイル13の編集メソッド名がセットされる。
【0039】
本実施形態のシステムには、プログラムソース生成手段10が備えられている。プログラムソース生成手段10は、設計書ファイル21と移行処理ソーステンプレートファイル22とを取り込み、上記ドキュメント作成手段11に与えて動作させ、データ移行プログラムソースを生成出力するものである。設計書ファイル21についての取り込みでは、「参照テーブル」については、列Bと列Qのデータを取り込み、「移行仕様」のテーブルについては、列B、列K、列L、列N、列P、列R、列Sのデータを取り込む。プログラムソース生成手段10は、第2編集タイプのデータ編集処理に関する生成を行う場合に、上記編集内容ソースファイル13を参照して生成を行う。
【0040】
移行処理ソーステンプレートファイル22の一例を
図4に示す。このテンプレートは設計書ファイル21の「移行仕様」の1行分に対するものである。従って、「移行仕様」の行数分繰り返される。
図4のテンプレートにおいて、#により始まる行は、ドキュメント作成手段11(テンプレートエンジン)で規定されている構文である。そして、下線を引いて示した文字列部分は、出力されるソースに固定的に記述される文字列であり、また、“${ }”の部分は出力される変数の部分である。
【0041】
以上のように構成された本実施形態に係るデータ移行プログラム作成システムは、コンピュータにより構成され、コンピュータのCPUがデータ移行プログラム作成用プログラムを実行することにより各手段が実現される。このシステムの動作を
図5に示すフローチャートを用いて説明する。
【0042】
本実施形態のプログラムは、移行元データベースのデータをCSVデータとして移行先データベースへ送るデータ移行プログラムソースであり、このデータ移行プログラムソースをプログラムソース生成手段10などが処理をスタートさせる。これにより、CVSデータとして出力時に使用する情報を取得する(S11)。具体的には、設計書ファイル21には示さなかったが、実際には設計書ファイル21にはシステム名やオブジェクト名などの移行対象(データベース)を特定するクラス名などの文字列が設定されており、このクラス名が取得される。また、「参照テーブル」の参照テーブル名や付加条件の取得が行われる。
【0043】
ステップS11に次いで、移行対象項目とデータ編集処理の種別情報(編集タイプ)を取得し(S12)、編集タイプに合わせて移行処理ソーステンプレートファイル22と編集内容ソースファイル13を用いてソース生成を行う(S13)。
【0044】
ステップS13の処理を
図2に示した設計書ファイル21の内容により説明すると、1行目の項目名が項目1では、編集タイプが「1」であるから、
図4に示した移行処理ソーステンプレートファイル22の「編集タイプが“1”の場合」に相当し、出力ソース例を示す
図6の1行目に記載のようなソースが作成される。また、2行目の項目名が項目2では、編集タイプが「2」であるから、
図4に示した移行処理ソーステンプレートファイル22の「編集タイプが“2”の場合」に相当し、出力ソース例を示す
図6の2行目に記載のように初期値が設定されたソースが作成される。
【0045】
また、3行目の項目名が項目3では、編集タイプが「3」であるから、
図4に示した移行処理ソーステンプレートファイル22の「編集タイプが“3”の場合」に相当し、出力ソース例を示す
図6の3行目に記載のように編集クラス名及びメソッド名による具体的内容プログラムソースが設定されたソース(
図1のデータ作成ソース30)が作成される。
図6の例では、編集クラス名及びメソッド名が記載されているが、編集内容ソースファイル13を用いたプログラムソース生成手段10による
図1の「ビルド」が行われ、具体的内容を有するプログラムソース(
図1のデータ作成モジュール40)が生成される。
【0046】
更に、4行目の項目名が項目4では、編集タイプが「4」であるから、
図4に示した移行処理ソーステンプレートファイル22の「編集タイプが“4”の場合」に相当し、出力ソース例を示す
図6の4行目に記載のように編集クラス名及びメソッド名が設定されたソース(
図1のデータ作成ソース30)が作成される。
図6の例では、編集クラス名及びメソッド名が記載されているが、編集内容ソースファイル13を用いたプログラムソース生成手段10による
図1の「ビルド」が行われ、具体的内容を有するプログラムソース(
図1のデータ作成モジュール40)が生成される。
【0047】
また、5行目の項目名が項目5では、編集タイプが「5」であるから、
図4に示した移行処理ソーステンプレートファイル22の「編集タイプが“5”の場合」に相当する。編集タイプが“5”の場合には、移行元テーブル及び項目に設定された項目データを移行先テーブル及び項目へ移行しないので、
図6の5行目には記述がなされていない。
【0048】
以下同様にして、
図5のステップS14における「全行が終了か?」の判断においてYESとなるまで同様の処理が続けられ、ステップS14においてYESとなると、上記で作成したプログラムが出力され(S15)、エンドとなる。
【0049】
かくして、移行元データベース100のデータを移行先データベース200のデータとして移行するプログラムソース(
図1のデータ作成モジュール40)が生成される。このようにして作成されたプログラムソースは、特殊な構成ではない通常のデータベースのデータ移行にも好適なプログラムであり、また構成が大掛かりとなることもない。
【符号の説明】
【0050】
10 プログラムソース生成手段
11 ドキュメント作成手段
13 編集内容ソースファイル
21 設計書ファイル
22 移行処理ソーステンプレートファイル
30 データ作成ソース
40 データ作成モジュール
100 移行元データベース
200 移行先データベース