JPH09204334A - データベース管理システムにおけるビュー更新方法 - Google Patents

データベース管理システムにおけるビュー更新方法

Info

Publication number
JPH09204334A
JPH09204334A JP8034363A JP3436396A JPH09204334A JP H09204334 A JPH09204334 A JP H09204334A JP 8034363 A JP8034363 A JP 8034363A JP 3436396 A JP3436396 A JP 3436396A JP H09204334 A JPH09204334 A JP H09204334A
Authority
JP
Japan
Prior art keywords
view
link
slot
attribute
attribute value
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
JP8034363A
Other languages
English (en)
Inventor
Norifumi Nishikawa
記史 西川
Akihiko Koga
明彦 古賀
Satoru Wakayama
哲 和歌山
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 Ltd
Original Assignee
Hitachi 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 Ltd filed Critical Hitachi Ltd
Priority to JP8034363A priority Critical patent/JPH09204334A/ja
Publication of JPH09204334A publication Critical patent/JPH09204334A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 入れ子集合型属性を平坦化した属性値におけ
る要素の更新において、中間のオブジェクトを指定せず
にデータベース中で表現・保持し、ビューの再現時に要
素の更新結果を再現することを可能とする。 【解決手段】リンク設定処理6、属性値取得処理8、及
びリンク更新処理9を持ち、ビュー定義から経路上のオ
ブジェクトが特定できない場合にリンク設定処理により
その部分をバイパスするリンクを設定し、その部分の経
路情報を付加し、属性値取得処理によりスキーマ定義上
の経路情報で属性値の取得を行う。また経路上のオブジ
ェクトと位置が与えられた場合に、リンク更新処理が経
路中にオブジェクトを挿入し、リンクの保守を行う。こ
れにより、ビューインスタンスを通した属性値更新にお
いて、ビュー定義から経路上のオブジェクトが特定でき
ない場合でも属性値の追加が可能となる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、オブジェクト指向
データベースにおける、ビューインスタンス属性値の更
新方法に関する。
【0002】
【従来の技術】オブジェクト指向データベースのビュー
については、ウォン・キム;「モダンデータベース シ
ステムズ:ザ オブジェクト モデル、インタオペラビ
リティ、アンド ビヨンド」、アディソン ウェスリー
出版、1995年発行(Won Kim;MODERN
DATABASE SYSTEMS:The Obj
ect Model, Interoperabili
ty,and Beyond,Addison Wes
ley,Inc.1995)に記述されている。オブジ
ェクト指向データベースにおけるビューとは、1つまた
は複数のクラスの定義情報を元に、ユーザの要求に応じ
た仮想的なクラスを提供する機能であり、一般的にはデ
ータベースに対する質問の形で定義される。また、ビュ
ーのインスタンスは、ビューの定義に基づき、データベ
ース中のオブジェクトから、実行時に計算により求めら
れ、データベース中には格納されない。図13及び図1
4を用いて、簡単に説明する。図14はビュー定義の例
であって、ビュー1401は、2つの属性「所属」及び
「名前」を持ち、ビュー属性「所属」は、ビューの指す
クラス1201の持つ属性「会社名」に対応しており、
属性「名前」はクラス1201の属性「部門」のクラス
の属性「社員」のクラスの属性「社員名」に対応してい
ることを示している。後者の属性「名前」のように、定
義が2段以上になる属性のことを入れ子属性と呼ぶ。ま
た、属性値は、その定義のされ方により、数値、文字列
等の他、それらの集合、オブジェクト及びオブジェクト
集合等になる。この例では、「所属」は文字列型であ
り、「名前」は文字列の集合型である。入れ子属性を持
つビューの更新が可能な条件として、(1)ビューイン
スタンスとビューが定義されているクラスのインスタン
スが1:1でなければならない、(2)更新されるビュ
ー属性は派生属性であってはならない、(3)更新後に
ビューが再構築された時にビューにおける更新を反映す
る、が挙げられている。
【0003】
【発明が解決しようとする課題】図13に示すような構
造を持つ複合オブジェクトのクラス(図12)に対し
て、図14に示すようなビューを定義した場合で、ビュ
ーインスタンスの属性「名前」(文字列の集合型)に要
素を更新(追加)する場合、属性「名前」は入れ子集合
型を平坦化した派生属性であり、上記従来技術の(2)
を満たさないため属性値の更新を行うことができない。
本発明の第一の目的は、入れ子集合型属性を平坦化した
属性値における要素の更新において、中間のオブジェク
トを指定せずにデータベース中で表現・保持し、ビュー
の再現時に要素の更新結果を再現することを可能とする
ビュー更新方法を提供することである。本発明の第二の
目的は、中間オブジェクトに関する詳細な情報が与えら
れたときに、データベースの状態をスキーマ定義に基づ
く状態に戻すことを可能とするビュー更新方法を提供す
ることである。
【0004】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、一つ又は複数の名前付きスロットを持つ
オブジェクトであって、スロットには値あるいはオブジ
ェクト識別子を記憶し、スロット名によって前記記憶さ
れた値あるいはオブジェクト識別子にアクセスすること
が可能なオブジェクトを管理するデータベース管理シス
テムにおけるビュー更新方法であって、オブジェクトは
スロットとは別に他のオブジェクトへのリンクを構成す
る識別子を有し、ビュー属性更新処理においてユーザか
ら入力された属性値を格納するオブジェクトが一意に決
まらないとき、該属性値を格納するオブジェクトをデー
タベースから検索し、存在しなければ生成し、前記ビュ
ー属性更新処理にリンク設定処理を設け、該リンク設定
処理は前記属性値を格納するオブジェクトに最も近いオ
ブジェクトを求め、該最も近いオブジェクトと前記属性
値を格納するオブジェクトとの間の中間のノードに位置
する一つ又は複数の中間オブジェクトが特定できない場
合に、該特定できない中間オブジェクトをバイパスする
リンクを前記最も近いオブジェクトと前記属性値を格納
するオブジェクトとの間に設定し、その間のスロット名
の連鎖を経路情報として該リンクに設定するようにして
いる。また、経路情報によるスロット値あるいはオブジ
ェクト識別子の取得要求に応じて、前記設定されたリン
クの経路情報を利用してスロット値あるいはオブジェク
ト識別子を取得する属性値取得処理を有するようにして
いる。また、前記特定できない中間オブジェクトが特定
された場合に、該中間オブジェクトの特定によって前記
特定できない部分が無くなった場合はリンクを削除し、
該中間オブジェクトの特定によって前記特定できない部
分が無くならない場合は該部分に設定されているリンク
を、該特定された中間オブジェクトを経由するよう設定
すると同時に経路情報を変更するリンク更新処理を有す
るようにしている。
【0005】
【実施例】以下、図1〜図16を用いて本発明の実施例
について説明する。図1は、本発明が実施されるデータ
ベース管理システムのブロック図を示すものである。デ
ータベース2を管理するデータベース管理システム1に
は、ビュー属性更新処理5、ビュー属性参照処理7、ビ
ューインスタンス管理処理4、リンク更新処理9が含ま
れ、入出力手段3の要求を受けてビュー属性の参照・更
新、リンクの更新を行う。本発明で提供されるビュー更
新方法は、ビュー属性更新処理5、ビュー属性参照処理
7、及びリンク更新処理9に組み込まれ、それらにはリ
ンク設定処理6、属性値取得処理8が含まれる。本実施
例において、リンク設定処理6、属性値取得処理8は、
それぞれビュー属性更新処理5、ビュー属性参照処理7
の一部として実現されている。データベースオブジェク
ト、クラス定義情報、ビュー定義情報はデータベース2
に格納され、必要に応じて主記憶に読み込まれ、参照・
更新される。また、ビューインスタンスはビューインス
タンス管理処理4で管理される。
【0006】まず、本発明で用いられるデータ構造につ
いて説明する。図2にクラス定義情報の構成例を示す。
クラス定義情報は、このクラスのインスタンスがどのよ
うな属性を持っているかを定義している。上位のクラス
で定義された属性値等は下位のクラスに継承される。ク
ラス定義情報201は、スロット名記憶部202とデー
タ型記憶部203、データサイズ記憶部204、再利用
指定情報記憶部205、クラス名記憶部206からな
る。スロット名記憶部202には属性の定義情報が書き
込まれ、属性の定義情報は、例えば、後述する図12に
示されたクラス定義情報の場合、会社名,部門、部門
名,社員、社員名である。データ型記憶部203にはデ
ータの型が書き込まれ、図12の場合、データの型とし
て文字列、オブジェクト集合があり、オブジェクト集合
は他のインスタンスを指す識別子(ポインタ)の集合で
ある。データ型については、データ型がオブジェクトあ
るいはオブジェクト集合型の場合に、クラス名称(集合
型の場合は要素となるオブジェクトのクラス名)を含
む。データサイズ記憶部204は文字列、オブジェクト
集合のそれぞれのサイズであり、図12の場合、32は
文字列の文字数を示し、8は識別子(ポインタ)が8バ
イトであることを示す。再利用指定情報記憶部205
は、属性の型がオブジェクトあるいはオブジェクト集合
型の場合に、ビューインスタンスを通した属性値更新時
に入力された属性値と同じ属性値を持つオブジェクトが
データベースに存在した場合にデータベース中のオブジ
ェクトを再利用するかどうかを指定する。図12の場
合、YESは再利用することを示す。クラス名記憶部2
06にはクラスの名称が書き込まれ、図12の場合、会
社、部門、社員である。本クラス定義情報は、ユーザ定
義のクラス毎に存在し、データベース2中に記憶されて
おり、必要に応じて主記憶(図示せず)に読み込まれ
る。
【0007】図3はオブジェクトの構成例である。オブ
ジェクト301は、オブジェクトが属するクラス定義情
報201へのポインタ記憶部302、リンクリスト(後
述)へのポインタ303、及びデータを格納するスロッ
ト304から構成される。スロットはクラスへのポイン
タ201が指すクラス定義情報で指定されたスロット名
の順に存在し、個々のスロットはデータサイズ記憶部2
04で指定された長さを持つ。例えば、後述する図13
に示された1301のオブジェクトの場合、302はク
ラス定義情報1201を指すポインタ(“●”で示され
ている)であり、303はリンクリストへのポインタで
あり、この場合このポインタはNULLになっている。
スロットにはクラス定義情報1201のスロット名の順
に属性の実際の値として“ZZ会社”そして“●”で示
された集合型の属性の実際の値(識別子(ポインタ)の
集合となっている)が入っている。オブジェクトはデー
タベース2中に記憶され、必要に応じて主記憶に読み込
まれる。
【0008】図4はリンクリストの構成例である。リン
クリスト401は、スロット名リスト(後述)へのポイ
ンタ、及びリンク先オブジェクトへのポインタ403か
ら構成される。リンクリストはリンク元オブジェクトの
リンクリストへのポインタ303からポイントされる形
でデータベース2中に記憶されており、必要に応じて主
記憶に読み込まれる。リンクリストの例は後述する図1
5の1501である。
【0009】図5はスロット名リストの構成例である。
スロット名リスト501はスロット名記憶部502から
構成される。スロット名リストへのポインタ402から
ポイントされ、ビュー定義情報(後述)からもポイント
される。また、スロット名リストはリンク設定処理6及
びリンク更新処理9においても使用される。前2つの場
合、スロット名リスト501はデータベース2中に記憶
され、必要に応じて主記憶中に読み込まれる。スロット
名リストの例は後述する図14の1403、図15の1
502である。
【0010】図6はビュー定義情報の構成例である。ビ
ュー定義情報601は、クラス定義情報201へのポイ
ンタ602、ビュースロット名603、スロット名リス
トへのポインタ604から構成される。ビュースロット
名としてはビュー定義属性値が書き込まれる。ビュー定
義情報はデータベース中に記憶され、必要に応じて主記
憶に読み込まれる。ビュー定義情報の例は後述する図1
4の1401であり、ビュースロット名として、ビュー
定義属性値“所属”、“名前”が書き込まれ、また、ク
ラス定義情報201へのポインタ、スロット名リストへ
のポインタは“●”と記されている。
【0011】図7はビューインスタンスの構成例であ
る。ビューインスタンス701は、オブジェクトへのポ
インタ702と当該ビューインスタンスが属するビュー
定義情報601へのポインタからなる。ビューインスタ
ンスは、ビューインスタンス管理処理4において管理さ
れる。ビューインスタンスの例は、後述する図14の1
404であり、オブジェクトへのポインタと当該ビュー
インスタンスが属するビュー定義情報へのポインタはい
ずれも“●”と記されている。
【0012】次に、本発明で行われる処理について説明
する。図8は、ビューインスタンスの属性値の更新(追
加)を行う処理のフローチャートであり、ビュー属性更
新処理5及びリンク設定処理6で実施される。リンク設
定処理6で実施される部分はステップ(806−80
8)の部分である。本処理への入力として、ビューイン
スタンス701、及びビュースロット名、更新(追加)
するオブジェクト(以下、引数オブジェクトと呼ぶ)あ
るいは属性値を指定する。
【0013】まずステップ801でビューインスタンス
701からオブジェクト301を求める。次に、ユーザ
から入力された属性値(オブジェクト)を格納(ポイン
ト)するオブジェクトを求める(ステップ802)が、
これは、当該ビューインスタンス701の属するビュー
定義情報601が指すスロット名リストに記述されたス
ロット名にそってオブジェクトを順次辿っていくことで
求められる。ここでステップ802において検索したオ
ブジェクトが一意に決まるかどうかを判定する(ステッ
プ803)。一意に決まらない場合は、ビュースロット
の型がオブジェクト型/オブジェクト集合型で無い場合
は、引数オブジェクト、あるいは属性値を格納するオブ
ジェクト(属性値格納オブジェクト)を参照するオブジ
ェクトのクラスのスロットの再利用指定の値をもとに指
定属性値を持つオブジェクトを検索、あるいは生成して
属性値を代入する(ステップ805)。ここで、ビュー
スロットの型であるが、まずビュースロットの値は、当
該ビューインスタンス701の属するビュー定義情報6
01が指すスロット名リストに記述されたスロット名に
そってオブジェクトを順次辿っていくことで求められ
る。この辿った最終の属性の型をビュースロットの型と
する。途中に集合型のスロットが複数存在した場合は、
入れ子を展開した上で集合型とする。なお、ここでは図
示しないが、実際にはスロット名リスト及びクラス定義
情報からビュースロットの型を求めることが可能であ
る。ステップ806で、属性値格納オブジェクトあるい
は引数オブジェクト(ステップ804でその他と判定さ
れた場合はステップ805で取得し、オブジェクト型/
オブジェクト集合型と判定された場合は引数として取得
する)からビューインスタンスが指すオブジェクト間の
経路上で、一意に決定可能かつ現在データベースに存在
する、最も属性値格納オブジェクトあるいは引数オブジ
ェクトに近いオブジェクトを求める。ステップ807
で、ステップ806で求めたオブジェクトから属性値格
納オブジェクトあるいは引数オブジェクトまで辿るスロ
ット名の列を記録したスロット名リストを作成し、ステ
ップ808で両オブジェクト間にリンクを設定し、前ス
テップで求めたスロット名リストを格納する。
【0014】一方、ステップ803で一意に決定する場
合は、ビュースロットの型を判定し(ステップ80
9)、オブジェクト型あるいはオブジェクト集合型の場
合は802で求めたオブジェクトのスロットから引数オ
ブジェクトをポイントし(ステップ810)、そうでな
い場合にはステップ811で、802で求めたオブジェ
クトのスロットに属性値を格納する。
【0015】図9は、ビュー属性値参照処理7で実施さ
れる処理フローチャートであり、入力としてビューイン
スタンス及びスロット名が与えられる。まず。ステップ
901でビューインスタンスの指すオブジェクトを求
め、ビュー定義情報及びクラス定義情報を参照してビュ
ー属性に関連付けられたスロット名リスト及びビュー属
性の型を取得する(ステップ902)。次に、ステップ
903で属性値を取得する(処理は後述)。
【0016】図10は、図9のステップ903から呼び
出される処理のフローチャートであり、属性値取得処理
8において実施される。引数としてオブジェクト及びス
ロット名リスト、目的スロットの型が与えられる。ま
ず、スロット名リストの要素数を判定する(ステップ1
001)。要素数が1の場合は引数として与えられたオ
ブジェクトのスロットの値を取得し、終了する(ステッ
プ1003)。要素数が2以上の場合は、まずスロット
名リストで与えられるリンク先オブジェクト(の集合)
あるいはスロット値(の集合)を取得する(ステップ1
002)。次に、スロット名リストを2つに分割し各組
み合わせについて以下の処理を繰り返す(ステップ10
04とステップ1009の間)。ただし、スロットの型
がオブジェクト型/オブジェクト集合型でない場合は最
後に現れる分割は既にステップ1002で実施済みであ
るため組み合わせから省く。分割した前半部の要素数を
判定し(ステップ1005)、1つの場合はスロットの
指すオブジェクト(の集合)を取得し(ステップ100
7)、2以上の場合はリンク先オブジェクト(の集合)
を取得する(ステップ1006)。次にステップ100
6あるいは1007で求めた各オブジェクトとスロット
名リストの後半部について、再帰的に本処理を実施する
(ステップ1008)。
【0017】図11はリンク更新の処理のフローチャー
トであり、リンク更新処理1101で実施される。引数
として対象オブジェクト、リンク先オブジェクト、中間
オブジェクト及び中間オブジェクト挿入位置を表すスロ
ット名リストが与えられる。
【0018】まず、対象オブジェクトとリンク先オブジ
ェクトからその間に設定されたリンク401を求める
(ステップ1101)。次にリンク401の持つスロッ
ト名リストと引数として渡されたスロット名リストか
ら、中間オブジェクトからリンク先オブジェクトまでの
スロット名リストを作成する(ステップ1102)。引
数として渡されたスロット名リストの要素数が1の場
合、中間オブジェクトが対象オブジェクトのスロットか
ら指されていない場合に対象オブジェクトのスロットか
ら中間オブジェクトをポイントし(ステップ110
4)、2以上の場合は中間オブジェクトが対象オブジェ
クトから与えられたスロット名リストの情報から到達で
きない場合に対象オブジェクトと中間オブジェクト間に
リンクを設定し、引数として渡されたスロット名リスト
の値をリンクの指すスロット名リストに設定する(ステ
ップ1105)。次に、ステップ1102で生成した残
スロット名リストの要素数を判定する(ステップ110
6)。要素が1の場合は中間オブジェクトのスロットか
らリンク先オブジェクトをポイントし、2以上の場合は
中間オブジェクトとリンク先オブジェクト間にリンクを
設定し(ステップ1107)、ステップ1102で求め
た残スロット名リストの値をリンクの指すスロット名リ
ストに設定する(ステップ1108)。最後に1101
で求めたリンク及びそれがポイントするスロット名リス
トを削除する(ステップ1109)。
【0019】以下、ビュー属性値の追加及び参照、リン
ク更新の実例について説明する。
【0020】図12はビュー属性値追加例で用いるクラ
ス定義情報201の例である。ここではクラスは会社、
部門、社員の3種類存在し、それぞれクラス定義情報1
201、1202、1203によって定義されている。
ここで、クラス定義情報の型は201であり、各情報は
それぞれ領域202−206に格納される。会社クラス
には2つのスロット、会社名、部門が存在し、型はそれ
ぞれ文字列、部門オブジェクト集合、長さは32(文字
数)及び8(ポインタが8バイト)である(会社オブジ
ェクトの部門スロットの値はオブジェクトの集合を指し
ているため、長さはそれに必要な情報のサイズである。
8は要素数ではない)。また、部門スロットが指す部門
オブジェクトの再利用指定はYESである。部門クラス
には2つのスロット、部門名、社員が存在し、型はそれ
ぞれ文字列、社員オブジェクト集合、長さは32及び8
である(部門オブジェクトの社員スロットの値はオブジ
ェクトの集合を指しているため、長さはそれに必要な情
報のサイズである。8は要素数ではない)。また、社員
スロットが指す社員オブジェクトの再利用指定はYES
である。社員クラスには1つのスロット社員名が存在
し、型は文字列、長さは32である。
【0021】図13はオブジェクトの例である。オブジ
ェクトには会社オブジェクト1301(会社名=“ZZ
会社”)、2つの部門オブジェクト1302、1303
(それぞれ部門名=“A部門”、“B部門”)、3つの
社員オブジェクト1304、1305、1306(それ
ぞれ名前=“鈴木”、“田中”、“山本”)が存在す
る。会社オブジェクト1301の部門スロットは2つの
部門オブジェクト1302、1303を指し、部門オブ
ジェクト1302は社員スロットから社員オブジェクト
1304を、1303は社員スロットから1305、1
306を指す。また、各オブジェクトは領域302から
それぞれの属するクラスをポイントしており、リンクリ
スト格納領域は空(NULL)である。
【0022】図14はビュー定義情報及びビューインス
タンスの例である。ここでのビューはビュー定義情報1
401(型は601で定義)から、ビュー属性として所
属及び名前を持つ。またビュー属性所属はスロット名リ
スト1402(値は会社名)、ビュー属性名前はスロッ
ト名リスト1403(値は部門、社員、社員名)を持
つ。また、領域602から会社クラス1201を指す。
ビューインスタンス1404(構造は701で定義)
は、領域702から会社オブジェクト1301を、領域
703からビュー定義情報1401を指す。
【0023】(1) ビュー属性追加 ビューインスタンス1404のビュー属性名前の値に
「佐藤」を追加する場合の例について図15を用いて説
明する。まず、図8に示される処理が起動される。ま
ず、ビューインスタンス1404からオブジェクト13
01を求める(ステップ801)。次に属性値を格納す
るオブジェクトを求める(ステップ802)。ビュー属
性名前に対応したスロット名リスト1403をもとにま
ずスロット名リストの最初の要素部門スロットの指す部
門オブジェクト1302、1303を求め、次に各部門
オブジェクトが指す社員オブジェクト1304、130
5、1306を求める。ここで、スロット値を格納する
オブジェクトは一意に決まらないことがわかる(ステッ
プ803)。
【0024】次にビュースロット名前の型は社員オブジ
ェクトの社員名の型(文字列)であり(ステップ80
4)、オブジェクトあるいはオブジェクト集合型ではな
いので属性値を格納するオブジェクトを検索し(部門ク
ラスの社員スロットの再利用指定がYESのため)、存
在しなければ生成する(ステップ805)。ここで生成
されたオブジェクトが1503である。次に、オブジェ
クト1301と1503間で一意に決まる最も近いオブ
ジェクトを検索するが、会社クラスの部門スロットの型
が集合型であるため、最も近いオブジェクトは1301
自身である(ステップ806)。次にステップ807で
スロット名リストを作成するが、この要素は(部門、社
員)となる。ステップ808でリンク1501を生成
し、オブジェクト1301からポイントさせ、スロット
名リスト1502を作成し、前ステップで作成したスロ
ット名リストの値を格納し、リンク1501からポイン
トする。さらにオブジェクト1503をリンク1501
からポイントする(ステップ808)。
【0025】(2) ビュー属性参照 次に、ビューインスタンス1404の属性名前の値の取
得例について図15を用いて説明する。図9で示される
処理を起動する。まず、オブジェクト1301を求め
(ステップ901)、次にビュー属性に対応したスロッ
ト名リスト1403及び型(文字列)を取得する(ステ
ップ902)。そしてオブジェクト1301、スロット
名リスト1403、及び型(文字列)を引数として、図
10に示す処理をコールする(ステップ903)。
【0026】図10に示す処理では、スロット名リスト
の段数を判定するが(ステップ1001)、段数が3で
あるため、まず、リンク1501の先のオブジェクト1
503のスロット値「佐藤」を取得する(ステップ10
02)。ここで、スロットの型は文字列であるため、ス
ロット名リスト1403の(部門、社員)をスロット名
リストとして持つリンクを検索している。次に、スロッ
ト名リスト1403を前後に分割する。この組み合わせ
には((部門)、(社員、社員名))、((部門、社
員)、(社員名))があるが、後者は既にステップ10
02で実施済みであるため、前者について、以下のステ
ップを実施する(ステップ1004〜1009)。まず
スロット名前半部のスロット名リスト(部門)の要素数
は1であるためオブジェクト1301のスロット部門の
指すオブジェクト1302、1303を取得する(ステ
ップ1007)。次に取得したオブジェクトのそれぞれ
と後半部のスロット名リスト(社員、社員名)と型(文
字列)を引数として、再度図10に示す処理を実施す
る。この再帰のステップ1002で属性値「鈴木」「田
中」「山本」が取得され、ステップ1004−1009
は実施済みであるためスキップされる(ステップ100
8)。この結果属性値として「佐藤」「鈴木」「田中」
「山本」が取得される。
【0027】(3) リンク更新例 次に、対象オブジェクトとしてオブジェクト1301、
中間オブジェクトとしてオブジェクト1302、リンク
先オブジェクトとして1503、スロット名リストとし
て(部門)を指定してリンク更新を行う場合の例を図1
5、図16をもとに説明する。ここでは図11に示され
る処理が行われる。まずオブジェクト1301、150
3よりリンク1501を求める(ステップ1101)。
ステップ1102で残スロット名リストを生成するが、
リンク1501が持つスロット名リスト1502は(部
門、社員)、引数のスロット名リストは(部門)である
ため、残スロット名リストは(社員)となる。入力スロ
ット名リストの段数は1であるため(ステップ110
3)、対象オブジェクトのスロットが中間オブジェクト
を指しているかどうかを判定するが、ここではオブジェ
クト1302は指されているため何も行わない(ステッ
プ1104)。次に残スロットの段数であるが、これも
1のため(ステップ1106)、まず中間オブジェクト
1302のスロット社員からリンク先オブジェクト15
03を指し(ステップ1107)、リンク1501及び
スロット名リスト1502を削除する。
【0028】
【発明の効果】以上示したように、本発明によればビュ
ーインスタンスを通した属性値更新において、ビュー定
義から経路上のオブジェクトが特定できない場合でも属
性値の追加が可能となり、ビューを用いたアプリケーシ
ョンの開発効率を高めることが可能となる。
【図面の簡単な説明】
【図1】システムの構成の一例を示すブロック図であ
る。
【図2】クラス定義情報の構成例を示す図である。
【図3】オブジェクトの構成例を示す図である。
【図4】リンクの構成例を示す図である。
【図5】スロット名リストの構成例を示す図である。
【図6】ビュー定義情報の構成例を示す図である。
【図7】ビューインスタンスの構成例を示す図である。
【図8】ビュー属性値追加の処理例を示すフローチャー
トである。
【図9】ビュー属性値取得の処理例を示すフローチャー
トである。
【図10】オブジェクト属性値取得の処理を示すフロー
チャートである。
【図11】リンク更新の処理を示すフローチャートであ
る。
【図12】本発明の実施例において用いられるクラス定
義情報の例を示す図である。
【図13】本発明の実施例において用いられるオブジェ
クトの例を示す図である。
【図14】本発明の実施例において用いられるビュー定
義情報及びビューインスタンスの例を示す図である。
【図15】リンクの設定例を示す図である。
【図16】リンク更新の例を示す図である。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 一つ又は複数の名前付きスロットを持つ
    オブジェクトであって、スロットには値あるいはオブジ
    ェクト識別子を記憶し、スロット名によって前記記憶さ
    れた値あるいはオブジェクト識別子にアクセスすること
    が可能なオブジェクトを管理するデータベース管理シス
    テムにおけるビュー更新方法であって、 オブジェクトはスロットとは別に他のオブジェクトへの
    リンクを構成する識別子を有し、 ビュー属性更新処理においてユーザから入力された属性
    値を格納するオブジェクトが一意に決まらないとき、該
    属性値を格納するオブジェクトをデータベースから検索
    し、存在しなければ生成し、 前記ビュー属性更新処理にリンク設定処理を設け、該リ
    ンク設定処理は前記属性値を格納するオブジェクトに最
    も近いオブジェクトを求め、該最も近いオブジェクトと
    前記属性値を格納するオブジェクトとの間の中間のノー
    ドに位置する一つ又は複数の中間オブジェクトが特定で
    きない場合に、該特定できない中間オブジェクトをバイ
    パスするリンクを前記最も近いオブジェクトと前記属性
    値を格納するオブジェクトとの間に設定し、その間のス
    ロット名の連鎖を経路情報として該リンクに設定するこ
    とを特徴とするデータベース管理システムにおけるビュ
    ー更新方法。
  2. 【請求項2】 請求項1記載のビュー更新方法におい
    て、 経路情報によるスロット値あるいはオブジェクト識別子
    の取得要求に応じて、前記設定されたリンクの経路情報
    を利用してスロット値あるいはオブジェクト識別子を取
    得する属性値取得処理を有することを特徴とするデータ
    ベース管理システムにおけるデータベース管理システム
    におけるビュー更新方法。
  3. 【請求項3】 請求項1記載のビュー更新方法におい
    て、 前記特定できない中間オブジェクトが特定された場合
    に、該中間オブジェクトの特定によって前記特定できな
    い部分が無くなった場合はリンクを削除し、該中間オブ
    ジェクトの特定によって前記特定できない部分が無くな
    らない場合は該部分に設定されているリンクを、該特定
    された中間オブジェクトを経由するよう設定すると同時
    に経路情報を変更するリンク更新処理を有することを特
    徴とするデータベース管理システムにおけるビュー更新
    方法。
JP8034363A 1996-01-29 1996-01-29 データベース管理システムにおけるビュー更新方法 Pending JPH09204334A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8034363A JPH09204334A (ja) 1996-01-29 1996-01-29 データベース管理システムにおけるビュー更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8034363A JPH09204334A (ja) 1996-01-29 1996-01-29 データベース管理システムにおけるビュー更新方法

Publications (1)

Publication Number Publication Date
JPH09204334A true JPH09204334A (ja) 1997-08-05

Family

ID=12412091

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8034363A Pending JPH09204334A (ja) 1996-01-29 1996-01-29 データベース管理システムにおけるビュー更新方法

Country Status (1)

Country Link
JP (1) JPH09204334A (ja)

Similar Documents

Publication Publication Date Title
US6915340B2 (en) System and method for deriving future network configuration data from the current and previous network configuration data
US6240422B1 (en) Object to relational database mapping infrastructure in a customer care and billing system
JP4406609B2 (ja) 単一のインターフェイスからのデータの多重階層を管理するための手法
US20010042059A1 (en) Inventory managing method for automatic inventory retrieval and apparatus thereof
JP3714483B2 (ja) マネジメント・インフォメーション・ベース・管理システム
US20070088757A1 (en) System, method and software for creating, maintaining, navigating or manipulating complex data objects and their data relationships
JPH0652531B2 (ja) リレーシヨナル・データベース管理システム
JPH0934763A (ja) ファイル管理装置およびファイル管理方法
US7020659B2 (en) System and method for managing bi-directional relationships between objects
US6941309B2 (en) Object integrated management system
US6453324B1 (en) Method for maintaining a version history of objects in a repository
US20080168083A1 (en) Taxonomy object modeling
US6697817B2 (en) Variable-length database apparatus and method for accessing the same
JP4562749B2 (ja) 文書の圧縮格納方法及び装置
JPH09204334A (ja) データベース管理システムにおけるビュー更新方法
EP0394172A2 (en) Method of performing file services given partial file names
JPH05257765A (ja) データベース管理システム
JP2003157249A (ja) 文書の圧縮格納方法
JPH08329093A (ja) 分散ディレクトリシステム及び知識情報変更方法
JPH06103134A (ja) インデックスの構築方法
JP2926582B1 (ja) 製造業edi受注システムにおけるデータ分配装置
JPH07334525A (ja) 版管理を伴う構造化文書処理装置
JP3008500B2 (ja) 更新レコード読み出し機構
JP3887840B2 (ja) データ格納方法及び装置
JP3179077B2 (ja) 用語の一元管理方式