JPS6339029A - デ−タベ−ス作成方法 - Google Patents

デ−タベ−ス作成方法

Info

Publication number
JPS6339029A
JPS6339029A JP61183606A JP18360686A JPS6339029A JP S6339029 A JPS6339029 A JP S6339029A JP 61183606 A JP61183606 A JP 61183606A JP 18360686 A JP18360686 A JP 18360686A JP S6339029 A JPS6339029 A JP S6339029A
Authority
JP
Japan
Prior art keywords
record
pointer
key
key value
address
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
JP61183606A
Other languages
English (en)
Inventor
Hajime Kawamura
河村 一
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP61183606A priority Critical patent/JPS6339029A/ja
Publication of JPS6339029A publication Critical patent/JPS6339029A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数個のキーを有し、その各キーを用いて検
索角riヒなマルチキー型データベースの作成方法に関
する。
〔従来の技術〕
従来、この種のデータベースにおいて、各キーのポイン
タをつけるためには、各レコードをキー値でソートした
うえでポインタをつける操作を各キーについて繰り返し
ていた。同一キー値のレコードをつなくポインタをつけ
る方法としては、各キー値について対応するエントリに
そのキー値に屈するレコードのアドレスが入るテーブル
を用いる方法がある(特開昭59−200360)。
〔発明が解決しようとする問題点〕
上述した従来のデータベース作成方法は、キー値でソー
トしたうえでポインタをつける操作を各キーについて繰
り返し、同一レコードを少なくともキーの数だけ反復し
て読みこみ、かつ書きだす必要があるので、データベー
スの作成時間が長くなるという欠点がある。
また、各キーのキー値に対応するエントリにあるレコー
ドのアドレスが記録されるテーブルを用いる方法は、同
一キー値のレコードをつなぐ同一キー値内で閉じたポイ
ンタは作成されるが、異なるキー値開にまたがるポイン
タは作成されないという欠点がある。
〔問題点を解決するための手段〕
本発明のデータベース作成方法は、データベースの登録
レコードを外部媒体から1つ読みこむごとにその全ての
キー値について対応エントリのレコードにポインタをつ
け、次に自分のアドレスで当該エントリを更新して同一
キー値のレコードをポインタで結び、次に各キー値の最
後尾レコードと次キー値の先頭レコードのアドレスを参
照して連続するキー値開のポインタをつけることで、各
レコードを1度読み書きすることに加え、各キーのキー
値の数の総和回のレコードの読み書きを行なうことで全
てのキーに関する1方向のソートポインタをつける方法
である。
また、前記蓄積媒体からのレコードの読みこみを再度行
ない逆方向のソートポインタをつけて順逆両方向からの
ポインタを有することもできる。
〔実施例〕
次に、本発明の実施例について図面を参照して説明する
第1図は本発明のデータベース作成方法の一実施例の処
理概要図、第2図は本実施例を実現する計算機システム
の構成図である。
この計算機の処理システムは、データベースの作成や検
索などの処理を行なうCPU21と、データベースの蓄
積された蓄積媒体22からなっている。
本実施例は蓄積媒体22から登録されているレコードを
順次読みこむ処理1と、そのレコードの有する複数のキ
ーの中の一つのキーのキー値が新しく現われたものか否
かを判定して新しいキー値の場合は当該キー値を有する
レコードの先頭アドレスと最後尾アドレスが入るアドレ
ステーブル6を自動作成する処理2と、読込んだレコー
ドのポインタとしてアドレステーブル6上の先頭アドレ
スをセットし、先頭アドレスの値を自レコードのアドレ
スに変更することによって同一キー値のレコードをつな
ぐ一方向のポインタづけを行う処理3と、生成したアド
レステーブル6を参照して連続する異なるキー値開のポ
インタをつける処理4と、データベースからレコードの
読みこみを再度行って、逆方向のソートポインタをつけ
る処理5とで構成されている。
第3図は第1図に示した各キー値毎のアドレステーブル
6の一構成例を示す図である。アドレステーブル61 
は、各キーA、B、・・・、Nのキーテーブル31の中
の先頭キーAのアドレステーブルであり、次のキー値の
アドレステーブル62゜63へとキー値の昇順にリンク
されるリスト構成になっている。各アドレステーブル6
1,62,63は、キー値のエントリと、同一キー値の
レコードの一方向のポインタづけ処理3に使用され、連
続する異なるキー値開のポインタつけ処理4の参照とな
る先頭レコードのアドレスのエントリと処理4に用いら
れる最後尾レコードのアドレスのエントリと、アドレス
テーブル間のリンクのエントリとからなっている。
第4図は第1図のアドレステーブル自動作成処理2の詳
細を示すフローチャートである。
レコードを順次読みこみ(ステップ41)、キ一番号n
の初期値を設定する(ステップ42)。各キーの先頭キ
ー値テーブルが存在するかどうかを調べ(ステップ43
)、存在すれば、レコードのキー値とテーブル上のキー
値の大小関係を調べ(ステップ44)、等しければそれ
が求めるキー値テーブルに他ならないから検索を終了す
る。ステップ43で先頭キー値テーブルが存在しなけれ
ば空きメモリ上にキー値に対応するキー値テーブルをそ
のキーの先頭キー値テーブルとして作成する(ステップ
45)。ステップ44において、レコードのキー値とテ
ーブル上のキー値が異なれば、両者の大小関係を判定し
て(ステップ4G)、レコードのキー値がテーブルのキ
ー値より小さい場合は、そのテーブルとその直前のテー
ブルの間にリンクするように作成しくステップ47)、
レコードのキー値がテーブルのキー値より大きい場合は
、そのテーブルの直後にリンクされているテーブルがあ
るかどうかを調べ(ステップ48)、もしあればステッ
プイ4へ進み、もしなければ空きメモリ上にキー値に対
応するキー値テーブルをそのテーブルの直後にリンクす
るように作成する(ステップ47)。そして、最終キー
かどうか判定しくステップ49)、最終キーでなければ
キ一番号nを更新して(ステップ50)、ステップ43
に戻り、最終キーであれば処理を終了する。この手順で
注意すべきことは、テーブルを作成する時点で最後尾レ
コードのアドレスとして自レコードのアドレスをセット
するとともに先頭アドレスにも自レコードのアドレスを
セットして初期化を行なうことである。
第5図はキーAに関してキー値が10.5. +5.−
・・の順番で登録レコードが並んでいる場合のテーブル
の自動生成の流れを示したものである。同一キー値のレ
コードをつなぐ一方向のポインタづけ(処理3)は、作
成したテーブルの先頭レコードのアドレスを参照する方
式(特開昭59−200360)で行なうことができる
第6図はテーブルを参照して連続する人なるキー値開の
ポインタをつける処理4の処理手順を示すフローチャー
トである。
mをキ一種別、nをキ一種別内のキー値とし、これらを
初期化する(ステップ81.82)。なお、この処理は
、第4図に示したアドレステーブルの自動作成処理が行
なわれたうえでキーごとに行なわれる。まず、キ一種別
mのキー値nに対応するアドレステーブルを参照する(
ステップ83)。
キー値nのアドレステーブルの直後にリンクされている
アドレステーブルの有無を判定しくステップ84)、無
ければ処理中のキーが最終キーか否かを判定しくステッ
プ87)、最終キーならば処理を終了し、最終キーでな
ければmの値を更新しくステップ88)、ステップ82
に戻る。ステップ84においてキー値nのアドレステー
ブルの直後にリンクされているアドレステーブルがある
場合は、キー値nのアドレステーブル上の最後尾のレコ
ードをデータベースから読みこみ、そのポインタとして
直後にリンクされているアドレステーブル上の先頭レコ
ードのアドレスを書きこんで蓄積媒体22へ書き出しく
ステップ85)、nの値を更新しくステップ86)、連
続するキー値についてステップ83以降の処理を繰り返
し、最終キーの最終キー値までポインタづけを実施する
以上の処理を全てのキーについて実行することによって
順方向のポインタづけが完了する。
逆方向のポインタをつける場合は、レコードを読みこむ
順序を逆にして上記処理を行なうことができる。
第7図は、一方向のポインタをもつマルチキー型データ
ベースのポインタ接続図で、■、■、◎があるキーのキ
ー値、2.3.4.5.6が他のキーのキー値の場合、
キー毎にキー値をポインタで接続した例である。
(発明の効果) 以上説明したように本発明は、簡単なアドレステーブル
を使用することにより、同一キー値のレコードをつなぐ
ポインタづけをレコード件数回で、連続する異なるキー
値開のポインタつけは各キーのキー値の総数口のレコー
ドの読みこみ、書きだしで行なうことかできるので、両
者の合計回数のレコードの読み書きによって、同一キー
値内のみならず異なるキー値開のポインタづけも併せて
全てのキーに関する一方向のポインタっけが最少の処理
回数によって効率よく行なうことができるという効果が
ある。
【図面の簡単な説明】
第1図は本発明のデータベース作成方法の〜実施例の処
理概要図、第2図は本実施例を実現する計算機システム
の構成図、第3図はアドレステーブルの一構成例を示す
図、第4図はアドレステーブルの自動作成処理の手順を
示すフローチャート、第5図はアドレステーブル自動作
成の流れを示すフローチャート、第6図は連続する魔な
るキー値開のポインタづけ処理手順のフローチャート、
第7図は一方向のポインタを持つマルチキー型データベ
ースのポインタ接続図である。 21・・・・・・CPU。 22・・・・・・蓄積媒体、 31・・・・・・キーテーブル、 6I ・・・アドレステーブル(先頭レコード)。 PJ3図 第5図

Claims (1)

  1. 【特許請求の範囲】 1、複数個のキーを有し、各キーについて、それぞれの
    レコードをキー値によるポインタで結ぶ必要のあるデー
    タベースにおいて、データベースの登録レコードを外部
    媒体から1つ読みこむごとにその全てのキー値について
    対応エントリのレコードにポインタをつけ、次に自分の
    アドレスで当該エントリを更新して同一キー値のレコー
    ドをポインタで結び、次に各キー値の最後尾レコードと
    次キー値の先頭レコードのアドレスを参照して連続する
    キー値開のポインタをつけることで、各レコードを1度
    読み書きすることに加え、各キーのキー値の数の総和回
    のレコードの読み書きを行なうことで全てのキーに関す
    る1方向のソートポインタをつけることを特徴とするデ
    ータベース作成方式。 2、前記蓄積媒体からのレコード読みこみを再度行ない
    、逆方向のソートポインタをつける特許請求の範囲第1
    項記載のデータベース作成方法。
JP61183606A 1986-08-04 1986-08-04 デ−タベ−ス作成方法 Pending JPS6339029A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61183606A JPS6339029A (ja) 1986-08-04 1986-08-04 デ−タベ−ス作成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61183606A JPS6339029A (ja) 1986-08-04 1986-08-04 デ−タベ−ス作成方法

Publications (1)

Publication Number Publication Date
JPS6339029A true JPS6339029A (ja) 1988-02-19

Family

ID=16138739

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61183606A Pending JPS6339029A (ja) 1986-08-04 1986-08-04 デ−タベ−ス作成方法

Country Status (1)

Country Link
JP (1) JPS6339029A (ja)

Similar Documents

Publication Publication Date Title
JPS60218142A (ja) デ−タの動的型変換方式
JP3518933B2 (ja) 構造化文書検索方法
JPS6339029A (ja) デ−タベ−ス作成方法
JP2507399B2 (ja) デ―タベ―ス装置
JPH02127742A (ja) 空き領域検索方式
JPS58115564A (ja) アドレス空間拡張方式
JPH02116936A (ja) 再編成方式
JPH048816B2 (ja)
JP2785966B2 (ja) 外部キー動的解決処理方法
JPS63253431A (ja) インバ−テツド構造のデ−タベ−ス検索方式
JPH02302869A (ja) ファイル編集方式
JPS63286930A (ja) 文字列検索装置
JPH03171338A (ja) 制御情報処理方式
JPH01248233A (ja) データベース検索装置
JPS63128426A (ja) 可変長文字列の検索方式
JPS63149728A (ja) 索引生成方式
JPS6182251A (ja) 関係型デ−タベ−スの格納方式
JPS6061842A (ja) 構造体メモリのアクセス方式
JPH02309450A (ja) 郵便番号検索装置
JPH05250410A (ja) 階層シンボル修正システム
JPS63280328A (ja) 複数の名称を持つデ−タの制御方式
JPH0264768A (ja) データファイルの索引方式
JPH0388069A (ja) 記憶媒体接続装置
JPS62284425A (ja) 情報検索方式
JPH06110928A (ja) 2進数データを索引とする値の格納方式