JPH0488532A - データベースのキー定義格納方式 - Google Patents

データベースのキー定義格納方式

Info

Publication number
JPH0488532A
JPH0488532A JP2202403A JP20240390A JPH0488532A JP H0488532 A JPH0488532 A JP H0488532A JP 2202403 A JP2202403 A JP 2202403A JP 20240390 A JP20240390 A JP 20240390A JP H0488532 A JPH0488532 A JP H0488532A
Authority
JP
Japan
Prior art keywords
column
dictionary
key
definition
definition information
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.)
Pending
Application number
JP2202403A
Other languages
English (en)
Inventor
Yasushi Tamayama
玉山 恭
Nobuhiro Kurashiki
倉敷 信宏
Yoshitomo Tahira
田平 良知
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Systems Ltd
Original Assignee
Hitachi Information Systems Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Information Systems Ltd filed Critical Hitachi Information Systems Ltd
Priority to JP2202403A priority Critical patent/JPH0488532A/ja
Publication of JPH0488532A publication Critical patent/JPH0488532A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、データベース管理方式(DBMS)に係り、
特に、一つ以上の列のシーケンスを複合キーとして定義
するデータベースのキー定義格納方式に関する。
[従来の技術] データベース管理方式に関する従来技術として、例えば
、C1J、Date著 「データベース・システム概論
」 (丸善株式会社、1984)等に記載された、複数
の列のシーケンスから構成される複合キーの定義方法に
関する技術が知られている。
一方、従来のディクショナリによりデータベース(DB
)が扱うデータを管理するDBMSに関する他の従来技
術として、例えば、Be1kis  W、Leong−
Hong他共著 「データディクショナリ/ディレクト
リシステム」 (オーム出版、1986)にに記載され
た技術が知られている。
この従来技術は、列またはキーのデータ型、構造等に関
するメタデータ(以下、定義情報という)を、前記ディ
クショナリに格納して管理しているが、この技術では、
列とキーとの定義情報を記述するためのフォーマットが
異なっているため、列及びキーの定義情報を、それぞれ
専用のディクショナリに格納して管理している。
以下、この種の従来技術によるデータベース管理方式の
一例を図面により説明する。
第4図は従来技術によるDBMSにおけるディクショナ
リとそれを管理するためのシステムの一例を示すブロッ
ク図、第5図は表、列、及びキーの定義情報を格納する
ディクショナリの構造を説明する図である。第4図、第
5図において、400は定義処理部、41.0は制御部
、420は表定義処理部、430は列定義処理部、44
0はキー定義処理部、500はディクショナ1ハ 51
Qは表ディクショナリ、520は列ディクショナリ、5
30はキーディクショナリである。
従来技術によるDBMSは、第4図に示すように定義処
理部400と、ディクショナリ500とにより構成され
、ディクショナリ500は、表、列及びキーの定義情報
を格納するために、それぞれ専用のディクショナリ51
0,520、及び530を備えて構成されている。また
、定義処理部400は、これらのディクショナリ510
〜530に対する処理を行う定義処理部420〜440
と、全体の制御を行う制御部410とを備えて構成され
ている。
表、列、及びキーの定義情報を格納するディクショナリ
510,520、及び530には、第5図に示すように
、それぞれ、表、列、及びキーの属性を定義するために
必要な情報が格納されている。すなわち、表ディクショ
ナリ510には、表の名称が、例えば、「名簿」と定義
されており、列ディクショナリ520には、表の列名5
22、データ型523等が定義されている。
しかし、前述のディクショナリにおいて、例えば、キー
ディクショナリ530中の列である構成要素533.5
34、または、535には、列を特定するための列ディ
クショナリ520中の列である列名522の値が格納さ
れるというように、それぞれのディクショナリは、お互
いに参照関係がある。
[発明が解決しようとする課題] 従来技術によるDBMSは、前述したように、キーの定
義情報を専用のキーディクショナリ530に格納し、列
の定義情報を専用の列のディクショナリ520に格納し
て管理している。そして、キーの定義情報は、一つ以上
の列のシーケンスを特定しているため、前記二つのディ
クショナリ相互間には、参照関係があることになる。
このため、例えば、列ディクショナリ520の中の行5
24の列名522の値を″氏名“がら″姓名″に修正し
ようとすると、この修正に伴って、キーディクショナリ
530の中の行536の構成要素lの値も″氏名″から
″姓名″に修正する必要がある。この処理は、ディクシ
ョナリ間の参照関係に整合性を保持させることが必要な
ために、必ず行わなければならない。
このための処理は、一般に複雑かつ処理量が大きくなる
ため、列及びキーの定義変更の頻度が高いシステムにお
いては、システム全体の処理性能を低下させる。
すなわち、前記従来技術は、列及びキーに対応してそれ
ぞれにディクショナリを備え、常にこれらのディクショ
ナリ相互間の参照関係を整合させておかなければならな
いので、ディクショナリ全体のサイズが太き(なり、ま
た、システム全体の処理性能の向上を図ることが困難で
あるという問題点を有している。
本発明の目的は、前記従来技術の問題点を解決し、列及
びキーの定義情報を専用に格納するディクショナリを併
合し、かつ、ディクショナリの構造を整理して単純化す
ることにより、ディクショナリのサイズを削減すること
ができ、列及びキ−の定義変更時の処理を容易に行うこ
とを可能にして、システム全体の処理性能の向上を図る
ことができるようにしたデータベースのキー定義格納方
式を提供することにある。
[課題を解決するための手段] 本発明によれば前記目的は、一つ以上の列のシーケンス
から構成される複合キーの定義情報をディクショナリに
格納して管理するデータベースにおいて、列の定義情報
を格納するディクショナリ中に、列の属性として、一つ
以上の1表の他の列のシーケンスを特定する情報を格納
する領域と、キーであるか否かを指定する属性を格納す
る領域とを設けることにより、さらに、前記−つ以上の
1表の他の列のシーケンスを特定する情報を格納する領
域を配列型とすることにより達成される。
また、前記目的は、前記列の定義情報を格納するディク
ショナリに、列の属性として、自列の定義情報が格納さ
れているディクショナリ中の位置を特定する列識別子を
格納する領域を設け、前記−つ以上の1表の他の列のシ
ーケンスを特定する情報を格納する領域に前記列識別子
を格納するようにすることにより達成される。
[作 用〕 本発明によれば、前記手段を講じることにより、列及び
キーの定義情報を格納するためにそれぞれ専用に必要で
あったディクショナリを併合し、つのディクショナリに
列及びキーの定義情報を格納することが可能となり、異
なるディクショナリ相互間の参照関係の整合をとる必要
をなくし、システム性能の向上を図ることができる。
[実施例] 以下、本発明によるデータベースのキー定義格納方式の
一実施例を図面により詳細に説明する。
第1図は本発明一実施例の構成を示すブロック図、第2
図はディクショナリの構造を説明する図、第3図は動作
を説明するフローチャートである。
第1図、第2図において、100は定義処理部、110
は制御部、120は表定義処理部、130は列定義処理
部、140はキー定義処理部、200はディクショナリ
、210は表ディクショナリ、220は列ディクショナ
リである。
第1図に示す本発明の一実施例は、本発明が適用された
DBMSであり、定義処理部100とディクショナリ2
00とを備えて構成されている。
ディクショナリ200は、表の定義情報を格納する表デ
ィクショナリ210と、列及びキーの定義情報を格納す
る列ディクショナリ220とにより構成される。
また、定義処理部100は、表ディクショナリ210の
定義情報を処理する表定義処理部120と、列ディクシ
ョナリ220内の列に関する定義情報を処理する列定義
処理部130と、列ディクショナリ220内のキーに関
する定義情報を処理するキー定義処理部140と、これ
ら処理部120〜140を制御する制御部110とによ
り構成される。制御部110は、各ディクショナリの参
照関係の整合性を保持するため、各処理部の起動等の制
御を行う。
次に、第2図を参照して、表ディクショナリ210及び
列ディクショナリ220のデータ構造を説明する。
表ディクショナリ210は、二次元の表形式で表の定義
情報を格納し、その一つの行により、つの表を定義して
いる。
また、表ディクショナリ210の列は、表ディクショナ
リ210の中の行を特定する識別子を格納する表識別子
211、及び、表を特定する情報を格納する表名212
等により構成されている。
列ディクショナリ220は、二次元の表形式で列及びキ
ーの定義情報を格納し、その一つの行により、一つの列
を定義している。
また、列ディクショナリ220の列は、列ディクショナ
リ220の中の行を特定する識別子を格納する列識別子
221、列を特定する情報を格納する列名223、前記
列が所属する表を特定する情報を格納する表識別子22
2、前記列に格納される値の型を示すデータ型224、
前記列がキーであるか否かを指定する属性を格納するキ
ー属性225、及び、前記列が一つ以上の列のシーケン
スで構成される複合列の場合、前記列のシーケンスを特
定する情報を一次元の配列で格納する配列型の構成要素
226等により構成されている。
次に、前述のように構成される本発明の一実施例におい
て、列ディクショナリ220を用いてキーの定義操作を
行う処理を第3図に示すフローを参照して説明する。
(1)前記定義操作を行うオペレータは、キーの情報と
して、表名、キー名、及び前記キーの構成要素を特定す
る一つ以上の列名からなる列名リストを入力する(ステ
ップ301)。
(2)制御部110は、表定義処理部120を起動し、
前記表名により表ディクショナリ210の検索を行わせ
、表の定義情報を読み込む。この処理処理において、入
力された表名がディクショナリ内に無い場合、異常終了
を実行する(ステップ302.316)。
(3)ステップ302で、表の定義情報が有り、表の定
義情報が読み込まれた場合、この読み込んだ表の定義情
報の表識別子211と前記キー名により列ディクショナ
リ220を検索し、既存列の定義情報を読み込む。この
処理において、既存列の定義情報がある場合、後述する
ステップ313の処理に移行する(ステップ303)。
(4)ステップ303の処理において、既存列の定義情
報が無い場合、新規列の定義情報中の表識別子222に
、ステップ303で読み込んだ表の定義情報の表識別子
211をセットする(ステップ304)。
(5)新規列の定義情報の列名223に前記キー名をセ
ットし、新規列の定義情報のデータ型224に″複合型
″とセットする。さらに、カウンタiにOをセットし、
カウンタを初期化する(ステップ305〜307)。
(6)カウンタlの値に1を加え、ステップ303で読
み込んだ表の定義情報の表識別子211と前記列名リス
ト中の1番目の列名とにより列ディクショナリ220を
検索し、メンバ列の定義情報を読み込む。この処理にお
いて、メンバ列の定義情報が列ディクショナリに無い場
合、異常終了を実行する(ステップ308.309.3
16)。
(7)ステップ309で、メンバ列の定義情報が列ディ
クショナリにあり、このメンバ列の定義情報を読み込ん
だ場合、新規列の定義情報の1番目の構成要素226に
、ステップ309で読み込んだメンバ列の定義情報の列
識別子221をセットする(ステップ310)。
(8)次に、カウンタ1の値と前記列リストの構成要素
の個数nとを比較し、lがnより小さい場合はステップ
308からの処理を繰り返し実行し、前記列リストを構
成する列名の個数分だけ、前記の列名を列識別子に変換
する(ステップ311)。
(9)ステップ311で、lがnより大きい場合、すな
わち、全ての列名が列識別子に変換された後、列ディク
ショナリ220の管理情報から、新規列の定義情報を格
納する位置を特定する列識別子を取得し、新規列の定義
情報を列識別子221にセットする(ステップ312)
(10)ステップ312でセットされた新規列の定義情
報、または、ステップ303で読み込んだ既存列の定義
情報のキー属性225を” Y E S ”にセットす
る。このステップにより、既存列の定義情報の更新、ま
たは、新規列の定義情報の作成が行われる(ステップ3
I3)。
(+1)前記新規または既存の列の定義情報の列識別子
221により特定される列ディクショナリ220中の所
定の位置に、前記新規または既存の列の定義情報を書き
込み、キー定義操作の処理を正常に終了する(ステップ
314.315)。
前述した本発明の実施例によれば、従来のキーディクシ
ョナリに格納されていたキーの定義情報を、キーを構成
する列と対応させた形式で列及びキーの定義情報として
編集し、列ディクショナリ220に格納しているので、
キーディクショナリを不要とすることができる。
これにより、ディクショナリの構造を整理、単純化し、
ディクショナリのサイズを削減させることができる。ま
た、列またはキーの定義変更時に、参照関係の整合性が
容易に保持することができ、そのための処理量を削減す
ることができる。
さらに、本発明の実施例によれば、キーの扱いをエンテ
ィティから列の属性とすることにより、列とキーとの対
応付けを単純にし、列及びキーの定義変更に対するシス
テムの操作性及び柔軟性を向上させることができる。
[発明の効果] 以上説明したように本発明によれば、ディクショナリの
構造を整理、単純化して、ディクショナリのサイズを削
減することができ、列及びキーの定義の参照関係の整合
性を容易に保持でき、その処理量を削減することができ
、さらに、列及びキーの定義変更に対するシステムの操
作性及び柔軟性を向上させることができる。
【図面の簡単な説明】
第1図は本発明一実施例の構成を示すブロック図、第2
図はディクショナリの構造を説明する図、第3図は動作
を説明するフローチャート、第4図は従来技術によるD
BMSにおけるディクショナリとそれを管理するための
システムの一例を示すブロック図、第5図は表、列、及
びキーの定義情報を格納するディクショナリの構造を説
明する図である。 100・・・・・・定義処理部、110・・・・・・制
御部、120・・・・表定義処理部、130・・・・・
列定義処理部、140・・・・・・キー定義処理部、2
00・・・・・・ディクショナリ、210・・・・・・
表ディクショナリ、220・・・・・・列ディクショナ
リ。 第1図 第2図 100:定義処理部 200:ディクショナリ 第 図 500:ディクショナリ 第 図

Claims (1)

  1. 【特許請求の範囲】 1、一つ以上の列のシーケンスから構成される複合キー
    の定義情報をディクショナリに格納して管理するデータ
    ベースにおいて、列の定義情報を格納するディクショナ
    リの中に、列の属性として、一つ以上の自表の他の列の
    シーケンスを特定する情報を格納する領域と、列の属性
    として、キーであるか否かを指定する属性を格納する領
    域とを備えることを特徴とするデータベースのキー定義
    格納方式。 2、前記一つ以上の自表の他の列のシーケンスを特定す
    る情報を格納する領域が、配列型であることを特徴とす
    る特許請求の範囲第1記載のデータベースのキー定義格
    納方式。 3、前記列の定義情報を格納するディクショナリは、列
    の属性として、自列の定義情報が格納されているディク
    ショナリ中の位置を特定する列識別子を格納する領域を
    備え、前記一つ以上の自表の他の列のシーケンスを特定
    する情報を格納する領域に、前記列識別子を格納するこ
    とを特徴とする特許請求の範囲第1項または第2項記載
    のデータベースのキー定義格納方式。
JP2202403A 1990-08-01 1990-08-01 データベースのキー定義格納方式 Pending JPH0488532A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2202403A JPH0488532A (ja) 1990-08-01 1990-08-01 データベースのキー定義格納方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2202403A JPH0488532A (ja) 1990-08-01 1990-08-01 データベースのキー定義格納方式

Publications (1)

Publication Number Publication Date
JPH0488532A true JPH0488532A (ja) 1992-03-23

Family

ID=16456931

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2202403A Pending JPH0488532A (ja) 1990-08-01 1990-08-01 データベースのキー定義格納方式

Country Status (1)

Country Link
JP (1) JPH0488532A (ja)

Similar Documents

Publication Publication Date Title
AU695765B2 (en) Method and apparatus for data storage and retrieval
US5745904A (en) Buffered table user index
EP1696346B1 (en) File system represented inside a database
WO2003012689A1 (en) Method for fast searching and analyzing inter-relations between patents from a patent database
US20030177117A1 (en) Metadata system for managing data mining environments
JPH0728833A (ja) 情報検索装置
JPH0488532A (ja) データベースのキー定義格納方式
JP4056622B2 (ja) データベース管理装置
JPH0193843A (ja) テーブル結合方式
JPH0267682A (ja) データベースシステム
JP2003157249A (ja) 文書の圧縮格納方法
JPS62131349A (ja) デ−タベ−ス処理方式
JPH01280831A (ja) プログラム内データ名称標準化支援方法
JPS61103275A (ja) 部品表管理方式
JPH0820989B2 (ja) データ構造定義の管理方法
JP4661297B2 (ja) 図面管理システム、図面管理方法
JPS63231527A (ja) 時系列検索方式
JP2647044B2 (ja) 履歴管理方式
JP2001101233A (ja) データベース処理装置
JP3555542B2 (ja) グループ番号設定装置およびグループ番号設定方法
JP2922536B2 (ja) 論理回路図処理装置、及び論理回路図表示方法
JPH01248233A (ja) データベース検索装置
JPH01154222A (ja) データベースにおける名称管理方式
JPS63301324A (ja) デ−タ編集応答性向上システム
JPS62282372A (ja) ライブラリ管理方式