JPH0738194B2 - データベース管理システム - Google Patents

データベース管理システム

Info

Publication number
JPH0738194B2
JPH0738194B2 JP1095470A JP9547089A JPH0738194B2 JP H0738194 B2 JPH0738194 B2 JP H0738194B2 JP 1095470 A JP1095470 A JP 1095470A JP 9547089 A JP9547089 A JP 9547089A JP H0738194 B2 JPH0738194 B2 JP H0738194B2
Authority
JP
Japan
Prior art keywords
data set
key
phase
index
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.)
Expired - Lifetime
Application number
JP1095470A
Other languages
English (en)
Other versions
JPH0233665A (ja
Inventor
ドナルド・ジエームズ・ハデイール
ジユリイ・アン・ワツツ
Original Assignee
インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
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 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン filed Critical インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Publication of JPH0233665A publication Critical patent/JPH0233665A/ja
Publication of JPH0738194B2 publication Critical patent/JPH0738194B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は、データベース管理システムに関し、特に、係
るシステムにおけるデータの参照一貫性に関する。
B.従来技術 データベース管理システムとは、データを記録し保持す
るコンピュータ・システムである。リレーショナル・デ
ータベース管理システムにおいては、データは横方向の
行と縦方向の列を持つ「テーブル」の中に保管される。
例えば従業員テーブルの各行は、一従業員に関する情報
を表す。行の各列は、従業員のさまざまな属性(従業員
名、住所、所属部門等)を表す。インターナショナル・
ビジネス・マシーンズ・コーポレーション(IBM)社の
製品「データベース2」は、リレーショナル・データベ
ース管理システムの典型例である。
リレーショナル・テーブルに保管されたデータの特色
は、データが「参照一貫性」を持つ点にある。参照一貫
性とは保存データが論理的に矛盾しないことを言う。例
えば、従業員テーブルと部門テーブルを含むデータベー
スにおいて、ある従業員、が部門テーブル内に存在しな
い部門に所属するとなれば、これは参照一貫性を持たな
いことになる。このような、従業員テーブルの所属部門
は必ず部門テーブルに存在する値でなくてはならない、
といったデータに対する条件を「参照制約」と呼ぶ。部
門テーブル内の値には制約がない。この制約のある値を
「外部キー」と呼び、ない値を「基本キー」と呼ぶ。
C.発明が解決しようとする問題点 リレーショナル・データベース管理システムの最終目的
は、それが管理するテーブルの参照一貫性を確実にする
ことにある。これは参照制約の実施(emforcement)と
して知られている。従来技術において、命令文(ステー
トメント)ごと或いはトランザクション(1以上の命令
文から成る)ごとの参照制約実施が教示されている。こ
れらの方式では、データベース・レコードが「操作され
る」、すなわち追加(挿入)・更新(変更)・削除等さ
れるのと同じ順序で制約が実施される。従来技術の方式
では、多数のレコードを扱う大規模データベース操作に
おいて制約実施順序を再構成することができないため、
非常に効率が悪い。
本発明の目的は、大規模データベース操作時に参照制約
を実施する方式を提供することである。
また本発明の目的は、処理時間を短縮するべく効率的な
参照制約の実施を行なうことである。
また本発明の目的は、参照制約を侵害するレコードをデ
ータベース外に別に保管することにより、容易に修正及
び次の読出しを行なうことである。
D.問題点を解決するための手段 本発明は、データベース管理システムにおける参照制約
の実施方式である。最初に、少なくとも2つのテーブル
内レコード又は行が、テーブルへ読み出される等操作さ
れる。その後、操作される行及びその参照制約に関する
情報が保管され、基本キー制約に関する情報の次に外部
キーの情報という順序で配置される。そしてその順序に
従って、操作されるレコードの参照制約が実施される。
本発明のその他の特徴及び優位点は、後述の実施例に
て、付記する図とともに詳しく述べる。
E.実施例 第3図に示すのは、親テーブルDEPARTMENTテーブル10及
び従属テーブルEMPLOYEEテーブル12を含むリレーショナ
ル・データベースである。DEPARTMENTテーブル10は、DE
PTNO(部門番号)及びDEPTNAME(部門名)の2列を持
ち、部門には3つある(14参照)。EMPLOYEEテーブル12
は、EMPNO(従業員番号)、EMPNAME(従業員名)、DEPT
(所属部門)の3列を持つ。EMPLOYEEテーブル12の6行
は、本データベースにある6人の従業員の従業員番号、
名前、所属部門から成る。テーブル10及び12は、部門番
号を含む対応列DEPTNO及びDEPT間の参照制約16にて関連
付けられる。従属テーブル12の部門番号列DEPTは、制約
16の「外部キー」20として知られる。
従属テーブル(ここではEMPLOYEEテーブル12)の外部キ
ー値が親テーブル(ここではDEPARTMENTテーブル10)の
いずれかの行の基本キー値に存在すれば、その従属テー
ブルのデータ行は制約に関し参照一貫性を持つ。第3図
について言えば、EMPLOYEEテーブル12の1行目(J.Burk
e)は参照一貫性を持つが、2行目(N.Townes)は参照
制約16を侵害する。DEPARTMENTテーブル10には部門番号
DEPTNOが“046"である行が存在しないからである。
第3図はまた、DEPARTMENTテーブル10のDEPTNO列18に関
するインデックスDEPARTMENT.DEPTNOを示す。一般にデ
ータ処理システムにおけるインデックスは、キー(イン
デックス中に順番に複製が配列された行データの一部)
を与えられたデータ行の即時探索に用いられる。データ
ベースのインデックスは、書物の索引(書物内の単語や
文節を即座に探すことができる)に類似している。基本
キー上のインデックスは基本インデックスと呼ばれる。
第3図のインデックス22は、基本インデックスである。
本発明に係る実施例の主なフェーズ(段階)の概略を第
1図に示す。データ読出し(ロード)フェーズ24では、
全入力データ行即ちレコードが参照一貫性制約に関係な
く目標テーブル10及び12に入る。外部キー値及び制御情
報をデータ読出しフェーズ中に取り出し、テーブル10及
び12が読み出された後制約検査が行なえるようにする。
インデックス・キー値もデータ読出しフェーズ中に取り
出す。分類(ソート)フェーズ26では、キー値及びそれ
に付随する制御情報を分類し、インデックス更新及び制
約実施に最適な順序に並べ替える。インデックス更新フ
ェーズ28では、分類フェーズ26により分類済のキー値を
用いて、新規入力データを含むように基本インデックス
22を更新する。
実施フェーズ30では、適当な基本インデックス22の内容
に対して分類済外部キー値を評価し、データ読出しフェ
ーズ24により入力されたデータ行が参照一貫制約を侵害
しないか、判別する。破棄フェーズ32では、参照制約を
侵害する行及びその結果生じる新規の行を削除する。テ
ーブル10の破棄フェーズ32の後、12は再び参照一貫性を
持つ。最後にレポート・フェーズ34は、破棄フェーズ32
で削除された行の要約レポートを作成する。
これらのフェーズの実施例(後述)では、各フェーズの
制約実施処理における役割について詳細に述べる。明確
にするため擬似コードも用いる。
本方式は、特にシステムのテーブルへのデータのロード
(テーブルへの「定住」(populating)操作として知ら
れる)の間に、参照制約が関連記述子内に保管される
「データベース2」のようなデータベース製品の環境で
使用するのが望ましい。大量のデータを効率良くテーブ
ルに定住させるため、リレーショナル・データベース管
理システムには一般に、バッチ読出し(ロード)機能が
ある。普通は入力ファイル即ちデータ・セット内でこの
機能に入力データが渡され、その機能のコマンドの構文
の指示に従ってテーブルにデータを読み出す。IBM「デ
ータベース2」製品のバッチ読出し機能は、LOADユーテ
ィリティである。
第2図について言うと、テーブルに影響する参照制約16
は「データベース2」では、関連記述子により内部表現
される。関連記述子は、関連の親及び従属テーブルを識
別する情報、関連のキー、関連を支援する基本インデッ
クス等を含む。テーブルが従属であるような関連を表す
全関連記述子38は、テーブルを内部表現するテーブル記
述子40につながる従属関連連鎖39に結合する。同様に、
テーブルが親であるような関連を表す全関連記述子42
は、テーブル記述子40につながる親関連連鎖43に結合す
る。
同様に、「データベース2」でインデックス22はインデ
ックス記述子44(インデックスのキー列、インデックス
が昇順か降順かの指定等を含む)により表される。ある
テーブルのインデックスを表す全インデックス記述子44
は、そのテーブルの記述子40につながるインデックス連
鎖45に結合する。
データ読出しフェーズ24 第1図の流れ図にあるように、データ読出しフェーズ24
において入力データ・セット46からのレコードは、参照
一貫性制約侵害を考慮せず目標テーブル10及び12に読み
出される。各入力データ46が読み出されると、取り出さ
れた情報はワーク・データ・セットに入る。ワーク・デ
ータ・セットとはLOAD操作中に作成される一時的なもの
であり、操作が完了すると破棄される。
入力データ・レコード46から2種類の情報、キー情報と
マッピング情報が取り出される。キー情報は、続く実施
フェーズ30で発生する参照一貫性制約検査に用いられ
る。また、読出されたテーブル10及び12に関して定義さ
れたインデックス22の更新にも使われる。マッピング情
報は、破棄フェーズ32において制約侵害を起こした入力
データ・セット・レコードを破棄データ・セット48に複
写するのに用いられる。
キー・データ・セット50 データ読出しフェーズで、キー情報がキー・データ・セ
ット50に入る。第4図にあるように、入力データ・セッ
ト・レコード46がテーブルに読み出されると、テーブル
で定義された各外部キー或いはインデックス22について
のキー項目52がキー・データ・セット50に入る。
第4図に入力データ・セット46の例及び、データ読出し
フェーズ24の実行結果として生じる、キーとマップのデ
ータ・セット50及び53の内容を示す。第4図のキー・デ
ータ・セット項目52に関し次のように仮定する。テーブ
ル列ENOには内部識別番号10のインデックスが付加され
ている。テーブル列DNOは内部識別番号8の参照制約に
おける外部キーである。テーブル列JOBは内部識別番号
4の参照制約における外部キーである。
各キー項目52は、キー値54及び付随する制御情報(続く
LOAD操作時に必要となる)を含む。この制御情報の一項
目が入力データ・セット・レコードの番号(ISDRN)56
であり、キー値54の出所であるレコードの、入力データ
・セット46の基本位置を識別する。テーブル行記憶位置
(RID)58は、テーブル行14の、入力データ・セット・
レコード46が読み出されるアドレスを保管する。類別60
はキー値54を外部キー又はインデックス・キーとして
(或いは両方)識別する。オブジェクト識別子(OBID)
62は、外部キーについてキーが係わる特定の関連を、或
いはインデックス・キーについてキーが係わる特定のイ
ンデックス22を識別するための内部識別番号である。イ
ンデックス及び関連の両方にキーが係わる場合、OBIDは
関連のみを識別する。
第1表に、入力データベース46及びテーブル10からキー
項目52を作成するための擬似コードを示す。パフォーマ
ンスを良くするたえのバッファリング等手続き上の事柄
は、キー項目作成概念に属さないので省略した。
第1表 擬似コードによるキー・データ・セット生成 101 入力データ・セット・レコード・カウンタをゼロにセッ
トする. 102 DO UNTIL最後の入力データ・セット・レコードを読込
み終わるまで. 103 入力データ・セット・レコードを読込む. 104 入力データ・セット・レコード・カウンタを増分. 105 DO FOR入力データ・セット・レコードが読み込まれる
各テーブルに対し. 106 データをテーブルに読出す. 107 RID=データが読み出される位置. 108 DO FORテーブルの各従属関連記述子に対し. /=外部キー項目目生成=/ 109 類別=FOREIGN KEY. 110 関連のOBID=関連記述子の内部識別番号(=第4図の例
の8又は4). 111 キー値=現在の従属関連に係るテーブル列に読み出され
たデータの一部. 112 入力データ・セット・レコード番号(IDSRN)=入力デ
ータ・レコード・カウンタの値. 113 テーブル行記憶位置(RID)=上記RIDに保管された値. : 114 KEYワーク・データ・セットに外部キー項目を書き込
む. 115 END DO FOR各従属関連に対し. : 116 DO FORテーブルのインデックス記述子連鎖内の各イン
デックス記述子に対し. /=インデックス・キー項目生成=/ 117 類別=INDEX. 118 OBID=インデックスの内部識別番号(=第4図の10). 119 キー値=インデックス・キーに表されるテーブル列に読
み出されたデータの一部. 120 入力データ・セット・レコード番号(IDSRN)=入力デ
ータ・レコード・カウンタの値. 121 テーブル行記憶位置(RID)=上記RIDに保管された値. : 122 KEYワーク・データ・セットにインデックス・キー項目
を書き込む. 123 END DO FOR各インデックスに対し. : 124 END DO FOR各テーブルに対し. 125 END DO UNTIL全入力データ・レコードを読み込み終わ
るまで. 前述したようにキー情報は、実施フェーズ30で発生する
参照一貫性制約検査に用いられる。また、読出し済テー
ブル10及び12で定義されたインデックス22の更新にも使
われる。
マップ・データ・セット53 データ読出しフェーズ24でマップ情報は、マップ・デー
タ・セット53に入る。入力データ・セット46のレコード
がテーブル10及び12に読み出される時と、マップ項目64
がマップ・データ・セット53に入る。各マップ項目64
は、入力データ・セット・レコード番号(IDSRN)56、
入力データ・セット・レコード記憶位置(IDSLOCN)6
6、及びテーブル行記憶位置すなわち行ID(RID)58を含
む。読出し済レコードの入力データ・セット46中の基本
位置を、入力データ・セット・レコード番号56が再び保
管する。入力データ・セット・レコード記憶位置(IDS
LOCN)66は、読出されたレコードの入力データ・セッ
ト46中の物理的位置を記憶する。第4図には物理的位置
の値は明示せず、‘block,offset'という句で一般的に
表現してある。入力データ・セット・レコード46より生
成したテーブル行14のアドレスを、テーブル行記憶位置
(RID)58が再び保持する。
第2表に、入力データ・セット46及びテーブル10からマ
ップ項目64を作成するための擬似コードを示す。
第2表 擬似コードによるマップ・データ・セット生成 201 入力データ・セット・レコード・カウンタをゼロにセッ
トする. 202 DO UNTIL最後の入力データ・セット・レコードを読込
み終わるまで. 203 入力データ・セット・レコードを読込む 204 入力データ・セット・レコード・カウンタを増分. 205 LOCN=読み込まれた入力データ・セット・レコードのブ
ロック及びオフセット. 206 DO FOR入力データ・セット・レコードが読み出される
各テーブルに対し. 207 データをテーブルに読出す. : /=MAPデータ・セット項目構成=/ 208 IDSRN=入力データ・レコード・カウンタの値. 209 IDS LOCN=LOCNに保管された値. 210 RID=データが読み出される位置. : 211 MAPワーク・データ・セットにマップ項目を書き込む. 212 END DO FOR各テーブルに対し. 213 END DO UNTIL全入力データ・レコードを読み込み終わ
るまで. 前述したようにマッピング情報は、制約侵害を起こした
入力データ・セット・レコード46を破棄データ・セット
48に複写するのに用いられる。
分類フェーズ26 分類(ソート)フェーズ26には2つの機能がある。これ
に関して最初に第3図を再び参照し、本発明に係る方式
により参照一貫性を検査する方法を述べる。本方式で
は、検査する従属行の外部キー値20とマッチする項目に
ついて関連の基本インデックス22を調べ、各参照制約16
を検査する。外部キー値20が基本キー18のインデックス
22にあれば、従属行はその制約に関して参照一貫性を持
つ。これに対し外部キー値20が基本キー・インデックス
になければ、従属行が制約を侵害することになる。
上記論述のポイントは、制約検査が行なわれる以前に基
本インデックス22を作成しなければならない点にある。
これは本発明に係る遅延制約実施方式に欠かせない。し
かし、基本インデックス2をデータ読出しフェーズ24中
に更新するか或いは次に述べるように続くフェーズ中に
更新するかは、設計選択の問題である。
分類フェーズ26の第一の役割は、キー・データ・セット
50の項目を、インデックス・キーがキー・データ・セッ
トの最初に、そして外部キーが最後に来るよう並べ替え
ることである。キー・データ・セット50が分類される
と、基本キーに対する制約侵害を検査される外部キー20
が現れる以前にインデックス・キーが最初に現れ、イン
デックス22の更新に用いられる。このように、分類フェ
ーズ26の第1の役割は、キー・データ・セット50の項目
を類別フィールド60により順序付けることである。
分類フェーズ26の第2の役割は、参照制約の遅延実施を
最適化することである。これは、最適に制約検査を実施
されるようキー・データ・セット50の外部キー項目20を
並べ替えることである。遅延実施方式の一つの利点は、
このような最適化を実行できることにある。しかし、最
適化を行なわずに遅延方式により制約を実施することも
可能である。
参照制約検査のため基本インデックス22がアクセスされ
るので、制約検査の最適順序は、基本インデックス22が
記憶された必要なインデックス・ページが主記憶域内に
入って、全ての関連の検査に用いられた後に開放される
ことを保証する。本発明は、キー・データ・セット50の
項目52を類別順(最初にINDEX、次にBOTH、次にFOREIGN
KEYの順)に分類し、類別の内では関連又はキーが適
合するインデックスのOBID 62により、またOBIDの内で
はキー値54により分類し、制約検査順序を最適化する。
すなわちOBID 62及びキー値54は、大分類フィールドで
ある類別60内の小分類フィールドである。
第4図のキー・データ・セット50に対する分類フェーズ
26の動作を、第5図に示す。第5図にはインデックスで
ありしかも外部キー値であるキー値(類別=BOTH)は図
示しない。類別‘BOTH'のコードは‘INDEX'のコードと
‘FOREIGN KEY'のコードの間に入り、このような「兼
任の」キー値は、インデックスのみのキーと外部キーの
みのキーの間に分類されるようになっている。
要約すると分類フェーズ26は、データ読出しフェーズ24
で読出し済のデータ行の全インデックス及び外部キー値
を含むキー・データ・セット50を分類して、インデック
ス更新及び効率的な参照制約検査に最適な分類済キー・
データ・セット68にする。
インデックス更新フェーズ28 インデックス更新フェーズ28では、データ読出しフェー
ズ24で読出したテーブル10及び12に関して定義されたイ
ンデックスを、新規データに応じて更新する。読出した
テーブル10及び12に関して定義された、全インデックス
(基本インデックスでなくとも)が更新される。
インデックス更新28は、分類済キー・データ・セット68
の最初に現れるインデックス・キーから開始する。第5
図の分類済キー・データ・セットを例に取ると、最初の
3つのキー項目52を読み込んで内部識別番号10であるイ
ンデックス22の更新に用いる。4番目のキー項目52(類
別が‘INDEX'でも‘BTH'でもない)を読み込むと、イン
デックス更新フェーズ28の終了となる。
分類済データ・セットからインデックスが更新される仕
組みは従来技術により熟知されており、本発明に係る遅
延制約実施方式の記述には関係しない。分類フェーズの
項で説明したごとく、データ入力レコード46が読み出さ
れる順序による影響が出ないよう、基本インデックスが
制約検査実施以前に更新されることのみが必要である。
実施フェーズ30 実施フェーズ30では、データ読出しフェーズ24で読出し
たテーブル10及び12の行を検査して参照一貫性制約の侵
害を探し、これを修正する。この修正に含まれるのは、
参照一貫性制約侵害を起こしたテーブル行の削除、及び
データ読出しフェーズ24で読み出された行の結果生じた
ものの削除である。
後述するフェーズで、侵害を起こした行を含む入力デー
タ・セット・レコード24が破棄データ・セット48に複写
され、エラー要約レポート36が生成される。従って実施
フェーズ30のもう一つの役割は、発生した侵害に関する
情報の保管である。
エラー要約レポート36に報告される診断は実施フェーズ
30を2つの異なったサブフェーズ(検査サブフェーズ70
及び修正サブフェーズ72)の形で実施することにより改
善するのが望ましい。但しこれは本発明に係る遅延実施
方式にとって決定的なものではない。この2つのサブフ
ェーズについては次に述べる。
検査サブフェーズ70 第6図に示すように、検査サブフェーズ70への入力デー
タは以下より成る。分類フェーズ28で作成された分類済
キー・データ・セット68、キー・データ・セット50の外
部キー値が係わる関連38の基本インデックス22、及びテ
ーブル参照制約の内部表現すなわち関連記述子連鎖39及
び43である。下記に詳述するが、関連記述子連鎖39及び
43は、外部キー項目52に保管された関連のOBIDを関連の
基本インデックスOBIDに変換するのに用いる。
検査サブフェーズの出力データは、エラー・データ・セ
ット74(探知された各参照一貫性制約侵害についてのエ
ラー項目76を含む)である。実施フェーズ30で、エラー
・データ・セット74は修正サブフェーズ72への入力デー
タとして、内部的にのみ用いられる。第6図に示すよう
に各エラー項目76は、テーブル行記憶位置(RID)58、
入力データ・セット・レコード番号(IDSRN)56、入力
データ・セット・レコード記憶位置(IDS LOCN)66、
及び1以上のエラー・トークン文78を含む。テーブル行
記憶位置(RID)58は参照一貫性制約侵害を持つテーブ
ル行のアドレスを保管する。入力データ・セット・レコ
ード番号56は、テーブル行を生成した入力データ・セッ
ト・レコード46の基本位置を識別する。入力データ・セ
ット・レコード記憶位置(IDS LOCN)66は、テーブル
行を生成した入力データ・セット・レコード46の物理的
位置を記憶する。いずれも上述した通りである。入力デ
ータ・セット・レコード記憶位置(IDS LOCN)66はこ
の時点で不明なので、ゼロとして保管する。エラー・ト
ークン文78は、エラー要約レポート36を生成するのに用
いられる。
第3表に、検査及びエラー・データ・セット生成手順の
擬似コードを示す。そこに示すように、外部キーが係わ
る関連を支持する基本インデックス24に対して、分類済
キー・データ・セット68中の各外部キー値54を評価す
る。外部キー値54とマッチする基本キー値が見つかれ
ば、その外部キー値項目による表されるデータ行は制約
に関し参照一貫性を持つ。見つからなければデータ行は
制約侵害を持つので、エラー項目76を生成する。
第3表 擬似コードによる検査サブフェーズ 301 分類済キー・データ・セットの最初のFOREIGN KEY項目
に位置付ける. 302 DO UNTIL各外部キー項目処理が終わるまで. 303 キー・データ・セットから外部キー項目を読み込む. 304 読み込んだ外部キー項目の関連のOBIDとマッチする、従
属関連記述子と内部識別番号を探す. 305 この関連を支持する基本インデックスを識別する内部識
別番号を、関連記述子から判別する. 306 識別されたインデックスを調べ、処理項目の外部キー値
とマッチする基本キー値を探す. 307 IFマッチする基本キー値がインデックス中に見つかれば
THEN. 308 DO何もしない. 309 ELSE参照一貫性制約侵害探知 /=エラー項目作成及び書き込み=/ 310 RID=外部キー項目のRID値. 311 IDSRN=外部キー項目の入力データ・セット・レコード
番号. 312 IDS LOCN=0. /=この時点では不明=/ 313 エラー・トークン文=関連の外部名. 314 エラー・データ・セットにエラー項目を書き込む. 315 END ELSE. 316 END DO UNTIL各外部キー項目の処理が終わるまで. 検査サブフェーズ70により作成されるエラー・データ・
セット74は、後述の修正サブフェーズの入力データとな
る。
修正サブフェーズ72 データ読出しフェーズ24で読み出されて検査サブフェー
ズ70で参照一貫性制約侵害を持つと判断された行を、修
正フェーズ72で削除する。このような行の結果として生
じた新規行も、「カスケード削除」として知られる手順
において削除する。修正サブフェーズ72の結果、データ
読出しフェーズ24で読み出されてテーブル10及び12に残
っている全データ行が、参照一貫性を持つことになる。
修正サブフェーズ72は第7図に示す。
修正フェーズ72への入力データは、検査サブフェーズ70
により作成されたエラー・データ・セット74、及び参照
一貫性制約侵害を持つ行を含むテーブル10及び12から成
る。修正サブフェーズ72の出力データは、エラー行削除
済のテーブル10及び12、及び各エラー行についての項目
82を含む削除データ・セット80である。エラー行には2
つの型がある。一次エラーを持つものと、二次エラーを
持つものである。一次エラーとは直接の参照一貫性制約
侵害であり、一次エラーを起こすレコードが制約侵害の
「原因である」と言える。二次エラーとは持ち越しによ
るエラーである。参照一貫性制約侵害を持つレコードの
結果として生じたため削除されたレコードは、二次エラ
ーを持つ。
削除データ・セット80に入った各項目82は、エラー重大
度標識84、テーブル行記憶位置(RID)58、入力データ
・セット・レコード番号(IDSRN)56、入力データ・セ
ット・レコード記憶位置(IDS LOCN)66、及び1以上
のエラー・トークン文78を含む。エラー重大度標識84
は、この項目が表わす行が一次或いは二次エラー(前
述)のため削除されたかどうかを示す。テーブル行記憶
位置(RID)58、入力データ・セット・レコード番号(I
DSRN)56、及び入力データ・セット・レコード記憶位置
(IDS LOCN)66については前に述べた通りである。エ
ラー・トークン文78は、エラーが一次であるか二次であ
るかにより異なる。一次エラーの場合エラー・トークン
文には、入力データ・セット・レコード46の目標テーブ
ル名、及び制約が侵害された関連名が入る。二次エラー
の場合トークン78には、レコードの目標テーブル名、及
び該二次エラーを作成すべくカスケードした一次エラー
の入力データ・セット・レコード番号(IDSRN)58が入
る。
第4表に、修正及び削除データ・セット80生成手順の擬
似コードを示す。そこに示すように、各エラー・データ
・セット項目76に対応するデータ行はカスケード削除さ
れる。各削除行(直接或いはカスケード経由いずれも)
について削除データ・セット80に項目82が作成され、破
棄フェーズ32(後述する)への入力データとして用いら
れる。
第4表 擬似コードによる修正サブフェーズ 401 DO UNTILエラー・データ・セット中の全エラー項目処
理が終わるまで. 402 エラー項目読み込み. 403 エラー項目が表わすエラー・データ行に位置付ける(そ
のテーブルの行位置(RID)は項目中に存在する). : 404 行のカスケード削除. : 405 DO FORカスケード削除により削除される各行に対し. /=各削除行についてDELETI=/ /=ONデータ・セット項目を作成=/ 406 IF一行目(エラーを持つ)ならばTHEN. 407 エラー重大度=PRIMARY. 408 DELETION項目の残り=処理中のエラー項目と同様. 409 ELSE/=二次エラーを削除=/ 410 エラー重大度=SECONDARY. 411 RID=今削除されたレコードのテーブル行記憶位置(RI
D) 412 IDSRN=0、(この時点では不明). 413 IDS LOCN=0、(この時点では不明). 414 エラー・トークン文= −レコードが削除されたテーブル名、及び −二次エラーを作成すべくカスケードした、一次エラー
の入力データ・セット・レコード番号(処理中のエラー
項目のIDSRN). 415 END ELSE. : 416 削除データ・セットに削除データ・セット項目を書き込
む. 417 END DO FORカスケード削除される各行に対し. 418 END DO UNTIL全エラー項目処理が終わるまで. 修正サブフェーズ72が完了すると、データ読出しフェー
ズ24で読み出されてテーブル10及び12に残っている全デ
ータが、参照一貫性を持つことになる。この時点で参照
制約実施が完了する。残るフェーズは遅延制約実施方式
の有効性を改善するための破棄フェーズ32及びレポート
・フェーズ34である。破棄フェーズ32では、参照一貫性
を持たない行を含む入力データ・セット・レコード46を
破棄データ・セット48に複写し、訂正或いはLOAD手順へ
の再入力を行なう。レポート・フェーズ34で破棄データ
・セットの手引となる表形式のエラー・レポートを作成
し、破棄されたレコードとその理由を識別する。
破棄フェーズ32 第8図に示すように破棄フェーズ32では、入力データ・
セット・レコード46を破棄データ・セット48に複写す
る。データ読出しフェーズ24で読出し後実施フェーズ30
で(参照一貫性制約侵害或いはその結果行ゆえに)削除
されたテーブル行を生成したのが、これらの複写レコー
ドである。破棄フェーズ32は実際には2つのサブフェー
ズ、組合せ/分類サブフェーズ86と複写サブフェーズ88
から成る。
組合せ/分類サブフェーズ86では、マップ項目と削除デ
ータ・セット53及び80とを組み合わせ、その結果を分類
してマップ済削除データ・セット90を作成する。次に複
写サブフェーズ88で、このデータ・セット90を用いてエ
ラー・レコードにアクセスし、それらを破棄データ・セ
ット48に複写する。
削除データ・セット80の項目の各入力データ・セット・
レコード記憶位置(IDS LOCN)フィールド58にゼロが
記録されている(この時点では不明)ので、マップ済削
除データ・セット90作成以前に組合せ/分類サブフェー
ズ86で、実際のIDS LOCN値を判別しなくてならない。
この不明IDS LOCN値66を解明するのに必要な情報は、
データ読出しフェーズ24で作成されるマップ・データ・
セット53に保管されている。組合せ/分類サブフェーズ
86でまず、マップ・データ・セット53及び削除データ・
セット80を、対応するテーブル行記憶位置(RID)フィ
ールド56の順に分類する。次に組合せ/分類サブフェー
ズ86は分類済削除データ・セット80を操作する。テーブ
ル行記憶位置(RID)値56を用いて、各削除データ・セ
ット項目に対しマップ・データ・セット53を問合せ、各
項目の入力データ・セット・レコード記憶位置(IDS L
OCN)66の実際の値を検索する。これが完了すると、削
除データ・セット項目82を各入力データ・セット・レコ
ード記憶位置(IDS LOCN)66の順に分類し、複写サブ
フェーズ88で用いるマップ済削除データ・セット90を作
成する。
複写サブフェーズ88では、マップ削除データ・セット90
の項目92を順次、項目に特定された入力データ・セット
46の記憶位置(IDS LOCN)66へどんどん読み込み、そ
こで探知した入力データ・セット・レコードを破棄デー
タ・セット48へ複写する。このように破棄フェーズ32が
完了すると、データ読出しフェーズ24で読み出されて目
標テーブル10及び12に残っているレコードが参照一貫性
を持つことになり、参照一貫性侵害行を生成した入力デ
ータ・セット・レコードがすべて、破棄データ・セット
48に入る。
組合せ/分類フェーズ86及び複写フェーズ88実行の仕組
みは従来技術により熟知されるため、詳述しない。
レポート・フェーズ34 レポート・フェーズ34では、要約エラー・レポートを生
成して、LOAD操作中に起こった参照一貫性制約侵害をユ
ーザーに知らせる。要約レポートは破棄データ・セット
48の手引であり、レコード破棄の理由を記述する。レポ
ート生成プログラム自体は従来技術により熟知されるの
で、ここでは要約エラー・レポート36の内容についての
み述べる。
レポート・フェーズ34は、破棄フェーズ32で作成された
マップ済削除データ・セット90のエラー特定トークン78
を、入力データとして用いる。レポート・フェーズ34で
まず、マップ済削除データ・セット項目92をエラー重要
度84(最初がPRIMARY、次にSECONDARY)の順、エラー重
要度の中では入力データ・セット・レコード番号(IDSR
N)58順に分類する。この分類により要約エラー・レポ
ート36はまず、入力データ・セット46の、参照一貫性制
約侵害を起こしたレコードをリストする。これによりユ
ーザーは、修正する必要のある破棄データ・セット48の
項目を迅速に識別できる。一般に二次エラーを持つ破棄
データ・セット48のレコードは、PRIMARY重要度エラー
を持つ入力データ・セット・レコードが原因のカスケー
ド削除の結果破棄されるだけなので、修正の必要はな
い。
こうして分類されたマップ済削除データ・セットの各項
目が一行ずつ要約エラー・レポート36にリストされ、エ
ラー重要度(PRIMARY又はSECONDARY)、エラーを起こし
た入力データ・セット・レコードの番号(IDSRN)58、
破棄データ・セット48中の破棄されたレコード数、参照
制約が侵害された関連(エラー・トークン文に表示)、
二次エラーの場合には一次エラーによる削除を起こした
入力データ・セット・レコードのレコード番号(IDSR
N)58(エラー・トークン文に表示)が示される。エラ
ー要約レポート36の例を第5表に示す。
本発明に係る遅延実施方式は、各レコード読出しに応じ
て参照一貫性を分析する従来の方式に比べ、特筆すべき
優位点を持つ。本発明により入力データ・レコードは、
最適な制約実施の利点を保持し、なおかつ順不同に読み
出すことができる。これに対し従来方式では親及び従属
レコードを読出す順序に制限があり、読出し以前に入力
データを分類するのに性能面でコストがかかった。従来
方式では巡回式データの読出しは不可能だったが、本発
明では巡回式に関連付けられた入力データを自動的に処
理することができる。本発明に係る遅延方式では外部キ
ー値を取り出してから分類するので、参照一貫性検査を
最適の順序で進められる。従来方式では次レコード処理
以前に入力レコードの全制約を検査するので、遅延実施
方式のような最適化は望めない。
本発明に係る遅延実施方式の特定の実施例について述べ
てきたが、その他の例についても本発明の目的及び主旨
を逸脱することなく実施できる点理解されよう。例えば
基本インデックスの更新を遅延させて、別個のインデッ
クス更新フェーズにすることをせず、データ読出しフェ
ーズ中に行なうこともできる。この場合、キー・データ
・セットは外部キーのみから成る。しかし一般には、イ
ンデックス更新は遅延させて行なう方が効率的である。
その他の実施例としては、制約検査及び修正の同時実行
(2つのサブフェーズに分けず)が挙げられる。本発明
の良好な実施例に対する別の代替技術としては、基本キ
ー値の検査に用いられる基本インデックスと他の「持続
構造」(参照制約検査以前に読出し入力データに応じて
該構造の更新が行なわれるような、テーブル行上の分類
済順序、或いはハッシュ・テーブル等)との置換えが挙
げられる。遅延実施方式はテーブルに対するLOAD操作に
限定されるものでなく、他の大規模データベース操作に
も容易に適用できよう。
F.発明の効果 本発明を用いれば、データベースにおいて効率的に参照
制約を行なうことができる。
【図面の簡単な説明】
第1図は本発明に係る方式による実施例の流れ図であ
る。 第2図は1テーブルについて参照制約の2つの連鎖を示
す概略図であり、1つはテーブルが親である制約連鎖、
もう1つはテーブルが従属である制約連鎖である。 第3図は、インデックス付きの親テーブルDEPARTMENT及
び従属テーブルEMPLOYEEの参照制約を含むリレーショナ
ル・データベースを示す。 第4図は第1図におけるデータ読出しフェーズの詳細図
である。 第5図は第1図における分類フェーズの詳細図である。 第6図は第1図における実施のサブフェーズである検査
フェーズの詳細図である。 第7図は第1図における実施のサブフェーズである修正
フェーズの詳細図である。 第8図は第1図における破棄フェーズの詳細図である。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】データベース管理システムにおいて参照制
    約を行う方法であって、 2つ以上のデータのレコードを操作するステップと、 前記操作されたレコード及びその参照制約に関する情報
    を記憶するステップと、 前記記憶されたレコード及びその参照情報を、基本キー
    についての情報が外部キーについての情報よりも先行す
    る順序に配列するステップと、 前記配列された情報を用いてインデックスを更新するス
    テップと、 前記配列された情報及び前記更新されたインデックスを
    用いて参照制約を行うステップと、 を含むデータベース管理システムにおいて参照制約を行
    う方法。
  2. 【請求項2】少なくとも1つのテーブル及び少なくとも
    1つのインデックスを有するリレーショナル・データベ
    ース管理システムにおいて、複数の新しい行をテーブル
    に導入する方法であって、 前記テーブルに複数の新しい行をロードするステップ
    と、 前記新しい行及びその参照制約に関する情報を記憶する
    ステップと、 インデックス・キーについての情報が非インデックス・
    キーについての情報よりも先行し且つ基本キーについて
    の情報が外部キーについての情報よりも先行するように
    前記記憶された行及び制約情報をソートするステップ
    と、 前記ソートされた情報を用いてインデックスを更新する
    ステップと、 前記ソートされた情報及び前記更新されたインデックス
    を用いて、前記新しい行が参照制約を侵犯しているか否
    かを検査し、参照制約を侵犯する新しい行を削除するス
    テップと、 を含むデータベース・システムに新しい行を導入する方
    法。
JP1095470A 1988-07-15 1989-04-17 データベース管理システム Expired - Lifetime JPH0738194B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/219,512 US4933848A (en) 1988-07-15 1988-07-15 Method for enforcing referential constraints in a database management system
US219512 1988-07-15

Publications (2)

Publication Number Publication Date
JPH0233665A JPH0233665A (ja) 1990-02-02
JPH0738194B2 true JPH0738194B2 (ja) 1995-04-26

Family

ID=22819571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1095470A Expired - Lifetime JPH0738194B2 (ja) 1988-07-15 1989-04-17 データベース管理システム

Country Status (4)

Country Link
US (1) US4933848A (ja)
EP (1) EP0351210B1 (ja)
JP (1) JPH0738194B2 (ja)
DE (1) DE68929132T2 (ja)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0360387B1 (en) * 1988-09-23 1996-05-08 International Business Machines Corporation Data base management system
US5101345A (en) * 1988-11-29 1992-03-31 International Business Machines Inc. Method of filing stapled documents with a staple relationship involving one or more application programs
US5226158A (en) * 1989-05-24 1993-07-06 International Business Machines Corporation Method and apparatus for maintaining referential integrity within a relational database
KR940004389B1 (ko) * 1989-10-13 1994-05-23 인터내셔널 비지네스 머신즈 코포레이션 관계형 데이타베이스에 대한 액세스플랜 발생 방법 및 시스템
US5604899A (en) * 1990-05-21 1997-02-18 Financial Systems Technology Pty. Ltd. Data relationships processor with unlimited expansion capability
US5404509A (en) * 1992-05-08 1995-04-04 Klein; Laurence C. Conducting and managing sampled information audits for the determination of database accuracy
SE508828C2 (sv) * 1992-12-08 1998-11-09 Ericsson Telefon Ab L M System för relationsåterhämtning av databas i händelse av fel
JP2583010B2 (ja) * 1993-01-07 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 多層インデックス構造におけるローカルインデックステーブル及び大域インデックステーブルの間の一貫性を維持する方法
US5488722A (en) * 1993-05-28 1996-01-30 International Business Machines Corporation System and method for automating implementation and execution of constraint most likely to be violated in a database
US6163783A (en) * 1993-12-16 2000-12-19 Bmc Software, Inc. Check data operation for DB2
US5579515A (en) * 1993-12-16 1996-11-26 Bmc Software, Inc. Method of checking index integrity in a DB2 database
US5499359A (en) * 1994-01-18 1996-03-12 Borland International, Inc. Methods for improved referential integrity in a relational database management system
US5513350A (en) * 1994-05-27 1996-04-30 At&T Corp. Update constraints in transactions which may abort
US5678038A (en) * 1994-06-21 1997-10-14 International Business Machines Corporation Storing and retrieving heterogeneous classification systems utilizing globally unique identifiers
CA2130065C (en) * 1994-08-12 1999-03-02 Michael Joel Cincinatus Utilizing pseudotables as a method and mechanism for providing database monitor information
US5706494A (en) * 1995-02-10 1998-01-06 International Business Machines Corporation System and method for constraint checking bulk data in a database
US5974409A (en) * 1995-08-23 1999-10-26 Microsoft Corporation System and method for locating information in an on-line network
US5960194A (en) * 1995-09-11 1999-09-28 International Business Machines Corporation Method for generating a multi-tiered index for partitioned data
JP3046251B2 (ja) * 1996-10-15 2000-05-29 大光炉材株式会社 緻密質流し込み耐火組成物の湿式吹付け施工方法
US6754656B1 (en) * 1996-10-22 2004-06-22 International Business Machines Corporation System and method for selective partition locking
US7480653B2 (en) * 1996-10-22 2009-01-20 International Business Machines Corporation System and method for selective partition locking
US5845285A (en) * 1997-01-07 1998-12-01 Klein; Laurence C. Computer system and method of data analysis
US6026406A (en) * 1997-06-04 2000-02-15 Oracle Corporation Batch processing of updates to indexes
US6073140A (en) * 1997-07-29 2000-06-06 Acxiom Corporation Method and system for the creation, enhancement and update of remote data using persistent keys
US6523041B1 (en) 1997-07-29 2003-02-18 Acxiom Corporation Data linking system and method using tokens
US6098075A (en) * 1997-12-16 2000-08-01 International Business Machines Corporation Deferred referential integrity checking based on determining whether row at-a-time referential integrity checking would yield the same results as deferred integrity checking
US6427143B1 (en) * 1998-04-10 2002-07-30 Computer Associates Think, Inc. Method for loading rows into a database table while enforcing constraints
US6304876B1 (en) 1998-06-05 2001-10-16 Computer Associates Think, Inc. Method for enforcing integrity constraints in a database table using an index
US6189010B1 (en) 1998-06-10 2001-02-13 Platinum Technology, Inc. Method for repairing constraint violations in a database management system
US6112209A (en) * 1998-06-17 2000-08-29 Gusack; Mark David Associative database model for electronic-based informational assemblies
US6295539B1 (en) 1998-09-14 2001-09-25 Computer Associates Think, Inc. Dynamic determination of optimal process for enforcing constraints
JP3612449B2 (ja) * 1999-07-27 2005-01-19 エヌイーシーシステムテクノロジー株式会社 分散データベースシステムにおける主従関係情報同期方式
US6453314B1 (en) 1999-07-30 2002-09-17 International Business Machines Corporation System and method for selective incremental deferred constraint processing after bulk loading data
US6339777B1 (en) 1999-07-30 2002-01-15 International Business Machines Corporation Method and system for handling foreign key update in an object-oriented database environment
US6338114B1 (en) 1999-08-18 2002-01-08 International Business Machines Corporation Method, system, and program for using a table to determine an erase operation to perform
US6463429B1 (en) 2000-04-12 2002-10-08 International Business Machines Corporation System and method for consistency constraint management in database middleware
AU2001273650A1 (en) * 2000-07-18 2002-01-30 Delta Airlines, Inc. Method and system for conducting a target audit in a high volume transaction environment
CA2326805A1 (en) 2000-11-24 2002-05-24 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for deleting data in a database
JP4131780B2 (ja) 2001-03-30 2008-08-13 株式会社東芝 分散トランザクション処理システム、分散トランザクション処理方法及び分散トランザクション処理プログラム
US20040210564A1 (en) * 2001-06-26 2004-10-21 Kenneth Oksanen Indexing method and system for relational databases
US7502791B2 (en) * 2002-11-26 2009-03-10 Norsync Technology A/S Database constraint enforcer
US20040236744A1 (en) * 2003-05-22 2004-11-25 Desai Paramesh S. Method for ensuring referential integrity in highly concurrent datbase environments
US6885930B2 (en) * 2003-07-31 2005-04-26 Siemens Energy & Automation, Inc. System and method for slip slide control
US7839513B2 (en) * 2004-02-24 2010-11-23 Xerox Corporation Hybrid document automation system
US7930291B2 (en) * 2004-06-18 2011-04-19 Bmc Software, Inc. Constraint processing
US7664790B2 (en) * 2004-06-18 2010-02-16 Bmc Software, Inc. Cascade delete processing
US20060085464A1 (en) * 2004-10-14 2006-04-20 International Business Machines Corporation Method and system for providing referential integrity constraints
US9514163B2 (en) * 2005-11-17 2016-12-06 International Business Machines Corporation Database consolidation tool
US8682863B2 (en) * 2006-10-04 2014-03-25 Salesforce.Com, Inc. Methods and systems for bulk row save logic in an object relational mapping layer and application framework
US8548942B2 (en) 2006-10-04 2013-10-01 Salesforce.Com, Inc. Methods and systems for recursive saving of hierarchical objects to a database
US8161010B2 (en) * 2006-10-04 2012-04-17 Salesforce.Com, Inc. Methods and systems for providing fault recovery to side effects occurring during data processing
US8108367B2 (en) * 2008-05-20 2012-01-31 International Business Machines Corporation Constraints with hidden rows in a database
US7949640B2 (en) * 2008-10-31 2011-05-24 Gravic, Inc. Referential integrity, consistency, and completeness loading of databases
US8250048B2 (en) * 2009-04-20 2012-08-21 Oracle International Corporation Access control for graph data
US8301660B2 (en) * 2009-07-22 2012-10-30 Oracle International Corporation Enforcing restrictions for graph data manipulation operations
US9026561B2 (en) 2012-07-02 2015-05-05 International Business Machines Corporation Automated report of broken relationships between tables
US20150227576A1 (en) * 2014-02-10 2015-08-13 Klaus Plate Checking the completeness and correctness of transitions in electronic data processing
KR101547466B1 (ko) * 2014-03-28 2015-08-26 고려대학교 산학협력단 오라클 데이터베이스에서 데이터를 복원하는 방법 및 장치

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4627019A (en) * 1982-07-08 1986-12-02 At&T Bell Laboratories Database management system for controlling concurrent access to a database
US4631664A (en) * 1983-07-19 1986-12-23 Bachman Information Systems, Inc. Partnership data base management system and method
US4769772A (en) * 1985-02-28 1988-09-06 Honeywell Bull, Inc. Automated query optimization method using both global and parallel local optimizations for materialization access planning for distributed databases
JPS61208124A (ja) * 1985-03-12 1986-09-16 Oki Electric Ind Co Ltd 分散デ−タベ−ス管理システムにおける結合演算処理方式

Also Published As

Publication number Publication date
EP0351210A2 (en) 1990-01-17
EP0351210B1 (en) 2000-01-05
DE68929132T2 (de) 2000-07-13
EP0351210A3 (en) 1992-10-14
JPH0233665A (ja) 1990-02-02
US4933848A (en) 1990-06-12
DE68929132D1 (de) 2000-02-10

Similar Documents

Publication Publication Date Title
JPH0738194B2 (ja) データベース管理システム
EP0360387B1 (en) Data base management system
Hammer et al. Semantic integrity in a relational data base system
US6453314B1 (en) System and method for selective incremental deferred constraint processing after bulk loading data
US4947320A (en) Method for referential constraint enforcement in a database management system
US8645331B2 (en) Cascade delete processing
US6484181B2 (en) Method and system for handling foreign key update in an object-oriented database environment
US7251650B2 (en) Method, system, and article of manufacture for processing updates to insert operations
US9449067B2 (en) Constraint processing
US20090063400A1 (en) Apparatus, system, and method for improving update performance for indexing using delta key updates
US6343286B1 (en) Efficient technique to defer large object access with intermediate results
US20070214168A1 (en) Method and System for Removing Rows from Directory Tables
US7440956B2 (en) Enforcing constraints from a parent table to a child table
US6401089B2 (en) Method for maintaining exception tables for a check utility
EP1208481B1 (en) Method for checking tablespaces involved in referential integrity
Chen On the signature trees and balanced signature trees
Karasalo et al. The Design of Cantor-A New System for Data Analysis.
JP3066836B2 (ja) 知識ベースシステムにおける高速アクセス方式
Nixon et al. Beyond NEXUS: Universal cladistic data objects
Glazener et al. Terse Literatures. III. The ARTEC Computer Program
Malcher et al. Tables and Constraints
Chung-Shu Avoiding redundant record accesses in unsorted multilist file organizations
Chen On the general signature trees
JPH08287076A (ja) データベース管理装置
JPH03191442A (ja) 関係型データベース管理システム

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080426

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080426

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090426

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090426

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090426

Year of fee payment: 14

EXPY Cancellation because of completion of term