JPH0754479B2 - データディクショナリ・ディレクトリをもつデータベースの制御方法 - Google Patents
データディクショナリ・ディレクトリをもつデータベースの制御方法Info
- Publication number
- JPH0754479B2 JPH0754479B2 JP61096716A JP9671686A JPH0754479B2 JP H0754479 B2 JPH0754479 B2 JP H0754479B2 JP 61096716 A JP61096716 A JP 61096716A JP 9671686 A JP9671686 A JP 9671686A JP H0754479 B2 JPH0754479 B2 JP H0754479B2
- Authority
- JP
- Japan
- Prior art keywords
- dictionary
- directory
- database
- meta
- definition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、構造型データベースを使用したデータディク
ショナリ・ディレクトリシステムにおけるデータディク
ショナリの構造変更に係り、特にデータディクショナリ
構造を更新するのに好適なデータディクショナリ構造の
更新方式に関する。
ショナリ・ディレクトリシステムにおけるデータディク
ショナリの構造変更に係り、特にデータディクショナリ
構造を更新するのに好適なデータディクショナリ構造の
更新方式に関する。
構造型データベースのデータディクショナリ・ディレク
トリシステムにおいて、ディクショナリ自体の構造を定
義して、これに対応するレコードの物理的格納エリアを
決定しているディクショナリの構造制御情報は、データ
セットに設定されていて、メタディレクトリといわれ
る。
トリシステムにおいて、ディクショナリ自体の構造を定
義して、これに対応するレコードの物理的格納エリアを
決定しているディクショナリの構造制御情報は、データ
セットに設定されていて、メタディレクトリといわれ
る。
このメタディレクトリでは、ディクショナリ自体の構造
とメタディレクトリとは一致している必要があり、両者
に不一致が生じないように、メタディレクトリのみの書
き替えを禁止する防護機能を設けてあるのが一般的であ
る。
とメタディレクトリとは一致している必要があり、両者
に不一致が生じないように、メタディレクトリのみの書
き替えを禁止する防護機能を設けてあるのが一般的であ
る。
従って、従来技術において、ディクショナリ自体の構造
変更を必要とする場合は、メタディレクトリを別に手書
にて生成するか、これに類する専用ツールにて生成する
必要があり、この生成したメタディレクトリを変更し
て、ディクショナリの構造を新しく定義し、メタディレ
クトリを更新することで新しい構造のディクショナリを
更新する必要があった。
変更を必要とする場合は、メタディレクトリを別に手書
にて生成するか、これに類する専用ツールにて生成する
必要があり、この生成したメタディレクトリを変更し
て、ディクショナリの構造を新しく定義し、メタディレ
クトリを更新することで新しい構造のディクショナリを
更新する必要があった。
尚、ディクショナリ及びメタディレクトリの概念につい
て紹介しているものに、データディクショナリ/ディレ
クトリシステム、オーム社(1986年、ベルキス.ダブリ
ュ.レオンホン,バーナード.ケー.プラグマン共著、
穂鷹良介監訳、成田光彰訳)第63頁から第76頁(Data D
ictionary/Directory Systems Belkis W.Leong-Hong an
d Bernard K. Plagman 1982 by John Wiley & Sons,In
c)があるが、メタディレクトリを容易に生成して、デ
ィクショナリ自体の構造を更新する方式については述べ
られていない。
て紹介しているものに、データディクショナリ/ディレ
クトリシステム、オーム社(1986年、ベルキス.ダブリ
ュ.レオンホン,バーナード.ケー.プラグマン共著、
穂鷹良介監訳、成田光彰訳)第63頁から第76頁(Data D
ictionary/Directory Systems Belkis W.Leong-Hong an
d Bernard K. Plagman 1982 by John Wiley & Sons,In
c)があるが、メタディレクトリを容易に生成して、デ
ィクショナリ自体の構造を更新する方式については述べ
られていない。
従来、メタディレクトリは手書き、またはこれに類する
専用ツール等を使ってディクショナリの構造を新しく定
義する必要があり、ディクショナリデータベース構造の
変更作業は、定義文とツールの両方に修正を加える必要
があるため、簡単には行なえなかった。
専用ツール等を使ってディクショナリの構造を新しく定
義する必要があり、ディクショナリデータベース構造の
変更作業は、定義文とツールの両方に修正を加える必要
があるため、簡単には行なえなかった。
本発明の目的は、ディクショナリに登録されているデー
タベースの構造の定義情報をディレクトリを生成して操
作することで、データベースの論理構造の追加変更を行
うのと同様の容易さで、ディクショナリ自体の構造を更
新し、ディクショナリ構造の更新の操作性・保守性の向
上となるディクショナリ構造の更新方式を提供すること
にある。
タベースの構造の定義情報をディレクトリを生成して操
作することで、データベースの論理構造の追加変更を行
うのと同様の容易さで、ディクショナリ自体の構造を更
新し、ディクショナリ構造の更新の操作性・保守性の向
上となるディクショナリ構造の更新方式を提供すること
にある。
上記目的は、ディクショナリ自体の構造の定義情報をデ
ィクショナリに、一般のデータベースの論理構造の定義
情報を登録するのと同時に登録し、このディクショナリ
自体の構造を定義したディクショナリを参照してディレ
クトリの生成を行い(これをメタディクショナリ用ディ
レクトリという)、更にディクショナリの構造をデータ
ベースの論理構造とみなして、ディクショナリの構造を
定義し(これをメタディクショナリという)、今度はメ
タディクショナリを参照してディレクトリを生成し(こ
れをメタディレクトリという)、このメタディレクトリ
を操作してディクショナリの構造更新を行うことにより
達成される。
ィクショナリに、一般のデータベースの論理構造の定義
情報を登録するのと同時に登録し、このディクショナリ
自体の構造を定義したディクショナリを参照してディレ
クトリの生成を行い(これをメタディクショナリ用ディ
レクトリという)、更にディクショナリの構造をデータ
ベースの論理構造とみなして、ディクショナリの構造を
定義し(これをメタディクショナリという)、今度はメ
タディクショナリを参照してディレクトリを生成し(こ
れをメタディレクトリという)、このメタディレクトリ
を操作してディクショナリの構造更新を行うことにより
達成される。
本発明のディクショナリ構造の更新方式は、データベー
スの構造について定義する定義情報を記述してあるデー
タディクショナリを参照して、ユーザがデータベースを
使い易くするためのテーブル形式のディレクトリに変換
生成する定義操作プログラムを使い、ディクショナリ自
体の構造の定義情報をディクショナリに登録し、このデ
ィクショナリ自体の構造の定義情報を登録したディクシ
ョナリからディレクトリの生成を行い(メタディクショ
ナリ用ディレクトリを生成する)、これをデータセット
に割当てて、更にディクショナリ自体の構造をデータセ
ットにて定義し(メタディクショナリを生成する)、こ
のメタディクショナリから定義操作プログラムを使って
ディレクトリを生成し(メタディレクトリを生成す
る)、このメタディレクトリに変更等の操作をすること
で、ディクショナリの構造の更新を容易に行なえる。
スの構造について定義する定義情報を記述してあるデー
タディクショナリを参照して、ユーザがデータベースを
使い易くするためのテーブル形式のディレクトリに変換
生成する定義操作プログラムを使い、ディクショナリ自
体の構造の定義情報をディクショナリに登録し、このデ
ィクショナリ自体の構造の定義情報を登録したディクシ
ョナリからディレクトリの生成を行い(メタディクショ
ナリ用ディレクトリを生成する)、これをデータセット
に割当てて、更にディクショナリ自体の構造をデータセ
ットにて定義し(メタディクショナリを生成する)、こ
のメタディクショナリから定義操作プログラムを使って
ディレクトリを生成し(メタディレクトリを生成す
る)、このメタディレクトリに変更等の操作をすること
で、ディクショナリの構造の更新を容易に行なえる。
以下、本発明の一実施例を第1図から第8図により説明
する。
する。
本発明が実現されるハードウェア構成を第1図に示す。
1は、プロセッサであり、必要な情報の検索の処理を行
う。2は、定義情報を格納しておく定義情報格納メモ
リ、3は、ディクショナリを格納しておくディクショナ
リファイル格納メモリ、4は、メタディクショナリを格
納しておくメタディクショナリファイル格納メモリ、5
は、ディレクトリを格納しておくディレクトリファイル
格納メモリ、6は、本発明を実現した定義操作のプログ
ラムを格納する定義操作プログラム格納メモリ、7は、
検索した情報を格納するワークエリアを示している。
1は、プロセッサであり、必要な情報の検索の処理を行
う。2は、定義情報を格納しておく定義情報格納メモ
リ、3は、ディクショナリを格納しておくディクショナ
リファイル格納メモリ、4は、メタディクショナリを格
納しておくメタディクショナリファイル格納メモリ、5
は、ディレクトリを格納しておくディレクトリファイル
格納メモリ、6は、本発明を実現した定義操作のプログ
ラムを格納する定義操作プログラム格納メモリ、7は、
検索した情報を格納するワークエリアを示している。
本システムにおいて、ディクショナリファイル格納メモ
リ3内のディクショナリは、データベース全体の構造を
決定するもので、ディレクトリファイル格納メモリ5内
のディレクトリは、ディクショナリを利用者が利用し易
い構造に変換したものである。
リ3内のディクショナリは、データベース全体の構造を
決定するもので、ディレクトリファイル格納メモリ5内
のディレクトリは、ディクショナリを利用者が利用し易
い構造に変換したものである。
本発明は、構造型データベースを対象とし、その基本
は、ネットワーク型データモデルであり、特にこの構造
を持つデータディクショナリ・ディレクトリシステムで
ある。
は、ネットワーク型データモデルであり、特にこの構造
を持つデータディクショナリ・ディレクトリシステムで
ある。
ネットワーク型データモデルは、階層データ構造におい
て論理レコードの分岐したフィールドの間に関連をもっ
ている場合であり、論理レコードの中のフィールドを識
別し、そのありかを知る方法としては、相対的な位置を
知ることによって行なう場合とレコードに含まれている
標識による場合とまたポインタとリストによって行なう
場合とがある。次に、ディクショナリの登録のアクセス
を説明する。
て論理レコードの分岐したフィールドの間に関連をもっ
ている場合であり、論理レコードの中のフィールドを識
別し、そのありかを知る方法としては、相対的な位置を
知ることによって行なう場合とレコードに含まれている
標識による場合とまたポインタとリストによって行なう
場合とがある。次に、ディクショナリの登録のアクセス
を説明する。
データベースの論理構造を決定するディクショナリの構
造の例を第7図に示す。このディクショナリに名称,番
号,情報等をそれぞれ書き込むことにより、定義情報を
登録する。これにてディクショナリが生成される。
造の例を第7図に示す。このディクショナリに名称,番
号,情報等をそれぞれ書き込むことにより、定義情報を
登録する。これにてディクショナリが生成される。
ディクショナリへのデータベースの構造に関する定義情
報の登録のアクセスは、定義操作プログラムによって行
なわれる例を示す。
報の登録のアクセスは、定義操作プログラムによって行
なわれる例を示す。
データディクショナリ・ディレクトリの利用者は、定義
操作プログラムに対して、次に例示するような操作コマ
ンドや定義情報を与える。
操作プログラムに対して、次に例示するような操作コマ
ンドや定義情報を与える。
定義情報のディクショナリへの登録は例えばENTRY操作
コマンドを用い *ENTRY DICTIONARY 〈ディクショナリメンバ種別〉〈定義情報〉と指定す
る。
コマンドを用い *ENTRY DICTIONARY 〈ディクショナリメンバ種別〉〈定義情報〉と指定す
る。
ここで、〈ディクショナリメンバ種別〉とは、ディクシ
ョナリへの定義情報の登録を、幾つかの定義単位に分け
たとき、その定義単位を識別するのに指定する記号であ
る。又、〈定義情報〉とは、ディクショナリに登録する
定義ソースのことである。
ョナリへの定義情報の登録を、幾つかの定義単位に分け
たとき、その定義単位を識別するのに指定する記号であ
る。又、〈定義情報〉とは、ディクショナリに登録する
定義ソースのことである。
ディクショナリを参照して、テーブル形式に生成された
ディレクトリの例を第8図に示す。また、ディレクトリ
を生成する方法は定義操作プログラムによる場合があ
る。例えば、ENTRY操作コマンドを用い、 *ENTRY DIRECTORY 〈ディレクトリメンバ種別〉〈定義情報名〉と指定す
る。
ディレクトリの例を第8図に示す。また、ディレクトリ
を生成する方法は定義操作プログラムによる場合があ
る。例えば、ENTRY操作コマンドを用い、 *ENTRY DIRECTORY 〈ディレクトリメンバ種別〉〈定義情報名〉と指定す
る。
ここで、〈ディレクトリメンバ種別〉とは、生成したい
ディレクトリテーブルの識別記号である。
ディレクトリテーブルの識別記号である。
更に詳細にディレクトリ生成処理について第6図のフロ
ーチャートに基づき説明する。
ーチャートに基づき説明する。
ディレクトリ生成の要求により、まず生成要求のあった
名称を持つディクショナリメンバをディクショナリの中
から検索し(201)、ディレクトリ生成時の履歴情報と
なるディレクトリ生成用ディクショナリメンバテーブル
にディレクトリ生成要求のメンバ情報をセットする(20
2)。次にこのディクショナリメンバをもとにディレク
トリ生成に必要である関連ディクショナリメンバの検索
を行い(203)、関連ディクショナリメンバが存在すれ
ば(204)、ディレクトリ生成用ディクショナリメンバ
テーブルにディレクトリ生成要求のメンバ情報をセット
する。処理を関連メンバ数行い関連ディクショナリメン
バが存在しなくなれば(204)、既に生成されているデ
ィレクトリ群の中を検索して、生成要求のあった名称を
持つディレクトリメンバが存在するかを調べ、存在しな
い場合は(205)、ディクショナリ中にディレクトリ生
成用ディクショナリメンバテーブルを格納し(1908)、
更にディレクトリ中にディレクトリ生成用ディクショナ
リメンバテーブルを格納する(1909)処理を行う。生成
要求のあった名称を持つディレクトリメンバが存在する
場合(205)、ディレクトリ中に格納しておいたディレ
クトリ生成用ディクショナリメンバテーブルを検索し
(206)、202の処理で作成したディレクトリ生成用ディ
クショナリメンバテーブルの内容と同一であるかを調べ
る。これにより同一であることが判明すれば(207)生
成要求により同一内容のディレクトリメンバが作成され
ることとなるため、ディレクトリ生成処理を終了する。
2つのテーブルの内容が異なる場合(207)、ディクシ
ョナリ中に、202の処理で作成したディレクトリ生成用
ディクショナリメンバテーブルを格納(208)すると共
に、ディレクトリ中にも同様のテーブルを格納(209)
する。
名称を持つディクショナリメンバをディクショナリの中
から検索し(201)、ディレクトリ生成時の履歴情報と
なるディレクトリ生成用ディクショナリメンバテーブル
にディレクトリ生成要求のメンバ情報をセットする(20
2)。次にこのディクショナリメンバをもとにディレク
トリ生成に必要である関連ディクショナリメンバの検索
を行い(203)、関連ディクショナリメンバが存在すれ
ば(204)、ディレクトリ生成用ディクショナリメンバ
テーブルにディレクトリ生成要求のメンバ情報をセット
する。処理を関連メンバ数行い関連ディクショナリメン
バが存在しなくなれば(204)、既に生成されているデ
ィレクトリ群の中を検索して、生成要求のあった名称を
持つディレクトリメンバが存在するかを調べ、存在しな
い場合は(205)、ディクショナリ中にディレクトリ生
成用ディクショナリメンバテーブルを格納し(1908)、
更にディレクトリ中にディレクトリ生成用ディクショナ
リメンバテーブルを格納する(1909)処理を行う。生成
要求のあった名称を持つディレクトリメンバが存在する
場合(205)、ディレクトリ中に格納しておいたディレ
クトリ生成用ディクショナリメンバテーブルを検索し
(206)、202の処理で作成したディレクトリ生成用ディ
クショナリメンバテーブルの内容と同一であるかを調べ
る。これにより同一であることが判明すれば(207)生
成要求により同一内容のディレクトリメンバが作成され
ることとなるため、ディレクトリ生成処理を終了する。
2つのテーブルの内容が異なる場合(207)、ディクシ
ョナリ中に、202の処理で作成したディレクトリ生成用
ディクショナリメンバテーブルを格納(208)すると共
に、ディレクトリ中にも同様のテーブルを格納(209)
する。
これにより、ディクショナリ及びディレクトリにディレ
クトリ生成時の履歴情報を持つことができ、ディレクト
リ生成時、同一の内容を持つメンバを生成することを防
ぐことも可能となる。
クトリ生成時の履歴情報を持つことができ、ディレクト
リ生成時、同一の内容を持つメンバを生成することを防
ぐことも可能となる。
次に、ディクショナリからディレクトリを生成したのと
同様の方法によって、定義操作プログラムを使って、メ
タディレクトリを生成する場合の定義操作プログラムの
処理内容を、第2図のフローチャートにより説明する。
同様の方法によって、定義操作プログラムを使って、メ
タディレクトリを生成する場合の定義操作プログラムの
処理内容を、第2図のフローチャートにより説明する。
定義操作プログラムは、起動時に制御文を与えられると
(101)、制御文の解析を行ない(102)、その制御文に
おいて、メタディクショナリの名称が指定してあるか否
かを判定する(103)。メタディクショナリの名称の指
定があれば、以前にメタディレクトリを生成するときに
メタディクショナリを生成しているので、これを本プロ
グラムにおいてディクショナリとしてメタディクショナ
リファイルを割当てる(105)。
(101)、制御文の解析を行ない(102)、その制御文に
おいて、メタディクショナリの名称が指定してあるか否
かを判定する(103)。メタディクショナリの名称の指
定があれば、以前にメタディレクトリを生成するときに
メタディクショナリを生成しているので、これを本プロ
グラムにおいてディクショナリとしてメタディクショナ
リファイルを割当てる(105)。
制御文の指定が無い場合、または、メタディクショナリ
の指定が無い場合は、本プログラムの対象をディクショ
ナリとして、ディクショナリファイルを割当てる(10
4)。今までの処理は、定義操作プログラムを使って、
ディクショナリからメタディクショナリを生成するため
に、ディクショナリを特定し、ファイルに割当てる作業
である。
の指定が無い場合は、本プログラムの対象をディクショ
ナリとして、ディクショナリファイルを割当てる(10
4)。今までの処理は、定義操作プログラムを使って、
ディクショナリからメタディクショナリを生成するため
に、ディクショナリを特定し、ファイルに割当てる作業
である。
ファイル割当て後のメタディクショナリ生成を説明す
る。
る。
定義情報格納メモリ2から、操作コマンド単位に定義情
報が入力され、ワークエリアに格納される(106)。操
作コマンドが入力されなければ(107)、処理を終了す
る。操作コマンドが入力されると、その解析を行い(10
8)、ディクショナリ登録を指示する操作コマンドなら
ば(109)、ディクショナリ登録処理を行なった(110)
後、操作コマンド入力(106)前に戻る。ディレクトリ
生成を指示する操作コマンドならば(111)、ディレク
トリ生成処理を行なう(112)。
報が入力され、ワークエリアに格納される(106)。操
作コマンドが入力されなければ(107)、処理を終了す
る。操作コマンドが入力されると、その解析を行い(10
8)、ディクショナリ登録を指示する操作コマンドなら
ば(109)、ディクショナリ登録処理を行なった(110)
後、操作コマンド入力(106)前に戻る。ディレクトリ
生成を指示する操作コマンドならば(111)、ディレク
トリ生成処理を行なう(112)。
制御文の例を次に示すと、メタディクショナリの論理構
造を定義している論理スキーマの名称をMETADIC 01、デ
ィクショナリの論理構造を定義している論理スキーマの
名称をDIC 01とし、ディクショナリの定義文をメタディ
クショナリに登録する場合には、次のように定義を記述
する。
造を定義している論理スキーマの名称をMETADIC 01、デ
ィクショナリの論理構造を定義している論理スキーマの
名称をDIC 01とし、ディクショナリの定義文をメタディ
クショナリに登録する場合には、次のように定義を記述
する。
*OPTION SCMID METADIC 01 *ENTRY DICTIONARY SCHEMA DIC RECORD RECA ITEM COMPA1 CHARACTER(8) つまり、ディクショナリにディクショナリ自体の構造を
定義した定義文を一般のデータベースの構造に関する定
義情報として登録する。
定義した定義文を一般のデータベースの構造に関する定
義情報として登録する。
ディクショナリの構造を定義した情報とは、論理スキー
マとレコード名称がどのデータセットのどのエリアに格
納されているかに関する情報である。
マとレコード名称がどのデータセットのどのエリアに格
納されているかに関する情報である。
この構造定義情報に、新たに格納するエリアを指定する
こともできる。これにて、ディクショナリへのディクシ
ョナリ構造の定義情報の登録段階より、ディクショナリ
の構造の変更を行うことが可能となる。ディクショナリ
に登録された構造定義情報を使って、ディレクトリの生
成を行う。このディレクトリはユーザが使い易いテーブ
ル型となっており、これをメタディクショナリ用のディ
レクトリと言う。このメタディクショナリ用ディレクト
リを一般のユーザデータベースを作成するために、デー
タセットにレコードを割当てるのと同様の方法により、
データセットにレコードを割当て、ディクショナリの構
造の定義情報を書き出して登録し、メタディクショナリ
を作成する。
こともできる。これにて、ディクショナリへのディクシ
ョナリ構造の定義情報の登録段階より、ディクショナリ
の構造の変更を行うことが可能となる。ディクショナリ
に登録された構造定義情報を使って、ディレクトリの生
成を行う。このディレクトリはユーザが使い易いテーブ
ル型となっており、これをメタディクショナリ用のディ
レクトリと言う。このメタディクショナリ用ディレクト
リを一般のユーザデータベースを作成するために、デー
タセットにレコードを割当てるのと同様の方法により、
データセットにレコードを割当て、ディクショナリの構
造の定義情報を書き出して登録し、メタディクショナリ
を作成する。
一般のディレクトリを生成する場合は、第4図に示す定
義文を入力として定義操作プログラムを起動する。更
に、このメタディクショナリを基に、前述したディクシ
ョナリからディレクトリを生成したのと同様に定義操作
プログラムを使ってディレクトリ生成を行う。
義文を入力として定義操作プログラムを起動する。更
に、このメタディクショナリを基に、前述したディクシ
ョナリからディレクトリを生成したのと同様に定義操作
プログラムを使ってディレクトリ生成を行う。
本定義操作プログラムでは、ディクショナリの代りにメ
タディクショナリを対象として、ディレクトリ生成方法
を用いてメタディレクトリの生成を行う。ここでメタデ
ィクショナリから生成されたディレクトリがメタディレ
クトリである。メタディレクトリは、ユーザが使い易い
テーブル型となっており、ディクショナリの構造定義を
基にメタディクショナリを生成し、テーブル型に変換し
たものであるので、ディクショナリの論理構造を定義
し、これに対応するレコードの物理的格納エリアを決定
している制御情報である。
タディクショナリを対象として、ディレクトリ生成方法
を用いてメタディレクトリの生成を行う。ここでメタデ
ィクショナリから生成されたディレクトリがメタディレ
クトリである。メタディレクトリは、ユーザが使い易い
テーブル型となっており、ディクショナリの構造定義を
基にメタディクショナリを生成し、テーブル型に変換し
たものであるので、ディクショナリの論理構造を定義
し、これに対応するレコードの物理的格納エリアを決定
している制御情報である。
このようにディレクトリ生成方法を、メタディクショナ
リ用ディレクトリとメタディレクトリの2度の生成を行
った理由は、メタディクショナリ用ディレクトリがディ
クショナリを参照しながら生成するためメタディクショ
ナリ用ディレクトリを変更・更新する操作は、ディクシ
ョナリの構造とその構造の定義してテーブル形式にした
ディレクトリとの間での不一致防止の保護機能が働くた
め、メタディクショナリ用ディレクトリを使用できな
い。従って、ディクショナリとは別個のメタディクショ
ナリを生成し、このメタディクショナリのディレクトリ
であるメタディレクトリを生成してこのメタディレクト
リの更新操作を行うことで、ディクショナリの構造更新
が可能とする。
リ用ディレクトリとメタディレクトリの2度の生成を行
った理由は、メタディクショナリ用ディレクトリがディ
クショナリを参照しながら生成するためメタディクショ
ナリ用ディレクトリを変更・更新する操作は、ディクシ
ョナリの構造とその構造の定義してテーブル形式にした
ディレクトリとの間での不一致防止の保護機能が働くた
め、メタディクショナリ用ディレクトリを使用できな
い。従って、ディクショナリとは別個のメタディクショ
ナリを生成し、このメタディクショナリのディレクトリ
であるメタディレクトリを生成してこのメタディレクト
リの更新操作を行うことで、ディクショナリの構造更新
が可能とする。
本実施例においては、ディクショナリの構造と同一の構
造をディクショナリに登録して、処理する場合を示す。
造をディクショナリに登録して、処理する場合を示す。
指定する定義文は、第3図に示すディクショナリ構造定
義文と同一の定義を用い、データベース名称(401)だ
けを変更したものを使用する。即ち、ディクショナリと
同一構造を持つ別のデータベースを作成する。
義文と同一の定義を用い、データベース名称(401)だ
けを変更したものを使用する。即ち、ディクショナリと
同一構造を持つ別のデータベースを作成する。
メタディクショナリを使用してディレクトリを生成する
場合は、第3図に示す形式の定義文を入力として定義操
作プログラムを起動し、ディレクトリを生成する。
場合は、第3図に示す形式の定義文を入力として定義操
作プログラムを起動し、ディレクトリを生成する。
指定する定義文は、ディクショナリとして使用するデー
タベース名称(301)を指定した制御文と、データベー
スの定義文を使用する。メタディレクトリを生成する場
合は、スキーマ名称(302)としてディクショナリデー
タベース名称を指定し、以下ディクショナリの構造を定
義した定義文を使用する。
タベース名称(301)を指定した制御文と、データベー
スの定義文を使用する。メタディレクトリを生成する場
合は、スキーマ名称(302)としてディクショナリデー
タベース名称を指定し、以下ディクショナリの構造を定
義した定義文を使用する。
第5図は、定義操作プログラムが使用するファイルを示
している。一般のディレクトリを生成する場合は、操作
コマンド、及び定義情報(502)を入力として定義操作
プログラム(503)を起動すると、ディレクトリデータ
セット(505)からメタディレクトリ(508)をロード
し、ディクショナリデータセット(504)に対してアク
セスを行ない、ディレクトリを生成し、ディレクトリデ
ータセット(505)に格納する。
している。一般のディレクトリを生成する場合は、操作
コマンド、及び定義情報(502)を入力として定義操作
プログラム(503)を起動すると、ディレクトリデータ
セット(505)からメタディレクトリ(508)をロード
し、ディクショナリデータセット(504)に対してアク
セスを行ない、ディレクトリを生成し、ディレクトリデ
ータセット(505)に格納する。
メタディクショナリを生成する場合は、ディクショナリ
データセット(504)にメタディクショナリ構造定義文
(507)を格納し、その定義文を基に、メタディクショ
ナリ用ディレクトリ(509)を生成し、ディレクトリデ
ータセット(505)に格納する。このメタディクショナ
リ用ディレクトリ(509)を用いて、メタディクショナ
リデータセット(506)を割り当てる。次に、メタディ
レクトリを生成する場合には、制御文(501)と操作コ
マンド、定義情報(502)を入力として定義操作プログ
ラム(503)を起動すると、ディレクトリデータセット
(505)からメタディクショナリ用ディレクトリ(509)
をロードし、メタディクショナリに対してアクセスを行
ない、メタディレクトリ(508)を生成し、ディレクト
リデータセット(505)に格納する。
データセット(504)にメタディクショナリ構造定義文
(507)を格納し、その定義文を基に、メタディクショ
ナリ用ディレクトリ(509)を生成し、ディレクトリデ
ータセット(505)に格納する。このメタディクショナ
リ用ディレクトリ(509)を用いて、メタディクショナ
リデータセット(506)を割り当てる。次に、メタディ
レクトリを生成する場合には、制御文(501)と操作コ
マンド、定義情報(502)を入力として定義操作プログ
ラム(503)を起動すると、ディレクトリデータセット
(505)からメタディクショナリ用ディレクトリ(509)
をロードし、メタディクショナリに対してアクセスを行
ない、メタディレクトリ(508)を生成し、ディレクト
リデータセット(505)に格納する。
上記例では、ディクショナリの構造をそのままディクシ
ョナリに登録し、メタディレクトリを生成し、メタディ
レクトリの追加変更により、ディレクトリの構造の更新
を行う説明をしたが、ディクショナリにディクショナリ
の構造を定義する段階で構造変更を行う方法も可能であ
るし、またメタディクショナリ用ディレクトリをもと
に、データセットを割当て、構造定義情報を書き込んで
いく段階で、つまりメタディクショナリを生成する段階
でディクショナリの構造を変更して生成し、ディクショ
ナリの構造更新を行うことも可能である。
ョナリに登録し、メタディレクトリを生成し、メタディ
レクトリの追加変更により、ディレクトリの構造の更新
を行う説明をしたが、ディクショナリにディクショナリ
の構造を定義する段階で構造変更を行う方法も可能であ
るし、またメタディクショナリ用ディレクトリをもと
に、データセットを割当て、構造定義情報を書き込んで
いく段階で、つまりメタディクショナリを生成する段階
でディクショナリの構造を変更して生成し、ディクショ
ナリの構造更新を行うことも可能である。
本発明によれば、ディクショナリとメタディクショナリ
との2つのライブラリを使用することにより、1つのプ
ログラムで、容易にメタディレクトリを生成できるよう
になる。
との2つのライブラリを使用することにより、1つのプ
ログラムで、容易にメタディレクトリを生成できるよう
になる。
このメタディクショナリは、一度作成しておけばメタデ
ィレクトリ生成の度に再作成する必要は無いため、ディ
クショナリのチューンアップをより容易にできる。
ィレクトリ生成の度に再作成する必要は無いため、ディ
クショナリのチューンアップをより容易にできる。
本発明によれば、ディクショナリの管理情報の追加ある
いは格納構造の変更等、メタディレクトリの再生成を行
なう必要が生じた場合、特別なプログラムを使用するこ
となく、メタディクショナリファイルの割当て、ジョブ
制御文の変更、定義操作プログラム制御文の変更、ディ
クショナリ定義文の修正を行なえば、ユーザ定義情報の
操作と同程度の簡易さでメタディレクトリを生成できる
ので、操作性、保守性の向上に効果がある。
いは格納構造の変更等、メタディレクトリの再生成を行
なう必要が生じた場合、特別なプログラムを使用するこ
となく、メタディクショナリファイルの割当て、ジョブ
制御文の変更、定義操作プログラム制御文の変更、ディ
クショナリ定義文の修正を行なえば、ユーザ定義情報の
操作と同程度の簡易さでメタディレクトリを生成できる
ので、操作性、保守性の向上に効果がある。
第1図は本発明の一実施例のハードウェア構成図、第2
図は定義操作プログラムの全体処理概要を例示した図、
第3図はディクショナリ構造定義文をメタディクショナ
リに登録し、メタディレクトリを生成するための定義
例、第4図はユーザデータベース定義をディクショナリ
に登録し、ディレクトリを生成するための定義例、第5
図は定義操作プログラムが使用するファイル構成を示し
た図、第6図はディレクトリ生成処理のフローチャート
図、第7図はディクショナリを示す図、第8図はディレ
クトリを示す図である。 1……プロセッサ、2……定義情報格納メモリ、3……
ディクショナリファイル格納メモリ、4……メタディク
ショナリファイル格納メモリ、5……ディレクトリファ
イル格納メモリ、6……定義操作プログラム格納メモ
リ、7……ワークエリア、501……制御文、502……定義
情報・操作コマンド、503……定義操作プログラム、504
……ディクショナリデータセット、505……ディレクト
リデータセット、506……メタディクショナリデータセ
ット、507……メタディクショナリ、508……メタディレ
クトリ、509……メタディクショナリ用ディレクトリ、5
10……ディクショナリ。
図は定義操作プログラムの全体処理概要を例示した図、
第3図はディクショナリ構造定義文をメタディクショナ
リに登録し、メタディレクトリを生成するための定義
例、第4図はユーザデータベース定義をディクショナリ
に登録し、ディレクトリを生成するための定義例、第5
図は定義操作プログラムが使用するファイル構成を示し
た図、第6図はディレクトリ生成処理のフローチャート
図、第7図はディクショナリを示す図、第8図はディレ
クトリを示す図である。 1……プロセッサ、2……定義情報格納メモリ、3……
ディクショナリファイル格納メモリ、4……メタディク
ショナリファイル格納メモリ、5……ディレクトリファ
イル格納メモリ、6……定義操作プログラム格納メモ
リ、7……ワークエリア、501……制御文、502……定義
情報・操作コマンド、503……定義操作プログラム、504
……ディクショナリデータセット、505……ディレクト
リデータセット、506……メタディクショナリデータセ
ット、507……メタディクショナリ、508……メタディレ
クトリ、509……メタディクショナリ用ディレクトリ、5
10……ディクショナリ。
Claims (3)
- 【請求項1】構造型データベースの論理構造を定義する
定義情報を記憶するデータディクショナリと、前記定義
情報の全部または一部がデータベースのアクセスを行な
うため参照されるテーブル形式に変換されてなるディレ
クトリと、前記データディクショナリをアクセスするた
め参照されるメタディレクトリとを有するデータベース
システムにおいて、 前記データディクショナリに前記データディクショナリ
自体の構造を示す定義情報であるディクショナリ定義情
報を書き込み、前記ディクショナリ定義情報を変換して
第1のディレクトリを生成し、生成された第1のディレ
クトリをもとにアクセスされる1つのデータベースに前
記ディクショナリ定義情報を書き込み、前記1つのデー
タベースに書き込まれた前記ディクショナリ定義情報を
変換し、前記メタディレクトリを生成することを特徴と
するデータディクショナリ・ディレクトリをもつデータ
ベースの制御方法。 - 【請求項2】前記データベースは更に前記データディク
ショナリから前記ディレクトリを生成する生成手段を有
し、前記1つのデータベースに記憶されたディレクトリ
定義情報は前記生成手段により前記変換が行なわれるこ
とを特徴とする特許請求の範囲第1項記載のデータディ
クショナリ・ディレクトリをもつデータベースの制御方
法。 - 【請求項3】前記ディクショナリ定義情報を変換し前記
メタディレクトリを生成する過程において、前記ディク
ショナリ定義情報を変換して前記ディレクトリの形式の
テーブルを得、これに変更を加えることによって更新さ
れたメタディレクトリを生成することを特徴とする特許
請求の範囲第1項記載のデータディクショナリ・ディレ
クトリをもつデータベースの制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61096716A JPH0754479B2 (ja) | 1986-04-28 | 1986-04-28 | データディクショナリ・ディレクトリをもつデータベースの制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61096716A JPH0754479B2 (ja) | 1986-04-28 | 1986-04-28 | データディクショナリ・ディレクトリをもつデータベースの制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62254246A JPS62254246A (ja) | 1987-11-06 |
| JPH0754479B2 true JPH0754479B2 (ja) | 1995-06-07 |
Family
ID=14172467
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61096716A Expired - Lifetime JPH0754479B2 (ja) | 1986-04-28 | 1986-04-28 | データディクショナリ・ディレクトリをもつデータベースの制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0754479B2 (ja) |
-
1986
- 1986-04-28 JP JP61096716A patent/JPH0754479B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
| Title |
|---|
| 情報処理案32回(昭和61年前期)全国大会講演論文集(昭和61年3月11日)P.845−846 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS62254246A (ja) | 1987-11-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5832498A (en) | Device for generating object-oriented interfaces for relational data bases and a process implemented by this device | |
| JP3437849B2 (ja) | オブジェクト指向プログラミングを支援するデータベース管理システム及び方法 | |
| US5706506A (en) | Method and apparatus for managing relational data in an object cache | |
| US6366921B1 (en) | System and method for data manipulation in a dynamic object-based format | |
| US5440735A (en) | Simplified relational data base snapshot copying | |
| US4864497A (en) | Method of integrating software application programs using an attributive data model database | |
| JP3041528B2 (ja) | フアイル・システム・モジュール | |
| US5412808A (en) | System for parsing extended file names in an operating system | |
| US6163776A (en) | System and method for exchanging data and commands between an object oriented system and relational system | |
| JP2708331B2 (ja) | ファイル装置およびデータファイルアクセス方法 | |
| US5664177A (en) | Data processing system having a data structure with a single, simple primitive | |
| US5857195A (en) | Method of developing and modifying self-describing database management system to generate a new database management system from an existing database management system | |
| JP4179557B2 (ja) | レガシー・アプリケーション移行を実施するシステム、方法およびコンピュータ・プログラム | |
| RU2676018C2 (ru) | Система и способ для создания выборочных моментальных снимков базы данных | |
| JPH07104808B2 (ja) | 設置可能なファイルシステムにおいてダイナミックボリュームトラッキングを行う方法及び装置 | |
| JP2001527243A (ja) | オブジェクト指向アプリケーション内のクラスに対応するリレーショナル・データベース内のインデックスを生成するための方法及び装置 | |
| US5394546A (en) | Database management system and method of extending system functions | |
| JP2644728B2 (ja) | データディクショナリ・ディレクトリシステム | |
| KR100419836B1 (ko) | 관계형 액세스 방법에 의해 비관계형 데이타를 액세스하기위한 시스템 및 방법 | |
| US5742809A (en) | Database generic composite structure processing system | |
| EP1091295B1 (en) | Data management system using a plurality of data operation modules | |
| CN112835638B (zh) | 一种基于嵌入式应用程序的配置信息管理方法及装置 | |
| JPH0358249A (ja) | フアイルのアクセス方法 | |
| CN113810434B (zh) | 分布式文件系统访问方法、装置、主机和介质 | |
| JPH0754479B2 (ja) | データディクショナリ・ディレクトリをもつデータベースの制御方法 |