JPS62164136A - デ−タベ−ス・アクセス制御方式 - Google Patents

デ−タベ−ス・アクセス制御方式

Info

Publication number
JPS62164136A
JPS62164136A JP61004927A JP492786A JPS62164136A JP S62164136 A JPS62164136 A JP S62164136A JP 61004927 A JP61004927 A JP 61004927A JP 492786 A JP492786 A JP 492786A JP S62164136 A JPS62164136 A JP S62164136A
Authority
JP
Japan
Prior art keywords
definition information
database
record
information
directory
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.)
Granted
Application number
JP61004927A
Other languages
English (en)
Other versions
JP2602205B2 (ja
Inventor
Kazuaki Tanaka
和明 田中
Ichiro Yokoyama
一郎 横山
Shigeru Yoneda
茂 米田
Satoru Wakayama
和歌山 哲
Makoto Urakawa
浦川 誠
Takashi Iihama
飯浜 尚
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 JP61004927A priority Critical patent/JP2602205B2/ja
Priority to DE3750515T priority patent/DE3750515T2/de
Priority to EP87100472A priority patent/EP0230279B1/en
Priority to US07/004,072 priority patent/US4819160A/en
Publication of JPS62164136A publication Critical patent/JPS62164136A/ja
Application granted granted Critical
Publication of JP2602205B2 publication Critical patent/JP2602205B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • 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/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、データベースシステムのアクセス制御方式に
関するもので、アプリケーションプロゲラ11からのデ
ータベースシステムアクセス要求に対する正常かつ高速
な実行に好適なアクセス制御方式に関する。
〔発明の背景〕
従来、データディクショナリ、ディレクトリを有するデ
ータベースシステムとアプリケーションプログラムとの
関連を提案した幾つかの現存システムについてニーシー
エム コンビュティング サーベイズ、14巻12号1
982゜7 (ACM  Computing  5u
rvey s 、 V o L 、 14 、 N 0
2 、 J u n e 1982)におけるフランク
 ダブり二一アレン、メアリーイーエス ルーミスおよ
びミッシェルブイマニノ(FRANK  W、ALLE
N。
MARY  E、S、L○○MIS、およびMICHE
L  V、MANNINO) による「ザインデグレイ
テッド デイクシヨナリ/ディレクトリ システム」 
(“THE  INTEGRATED  Dictio
nary/Directory  System”)と
題する文献において論じられている。この論文では、カ
リネイム データベース システム(CULLINAN
E  Database  Systems)において
アプリケーションプログラムのコンパイル前に、デイク
シヨナリ中の定義情報を検索し、ファイルやサブスキー
マの情報を取り込み、データベースシステムのアクセス
命令(DMLData  Manipulation 
 Languageデータ操作言語)をあるプログラム
セブメントから他のセブメントへの連係を示すCALL
文に事前変換して2次的なソースプログラムを生成する
プリコンパイラ方式が報告されている。
2次的なソースプログラムを作成しなければならないこ
とは処理の高速化にとっては障害であった。
〔発明の目的〕
本発明の目的は定義情報を格納するデータディクショナ
リ・ディレクトリシステムを内包するデータベースシス
テムにおいて、アプリケーションプログラムのコンパイ
ル時に使用される定義情報とアプリケーションプログラ
ムの実行時にデータベース管理プログラムが参照する定
義情報が一致していることを保証し、これによりコンパ
イル時に事前処理を行なうことを可能とし、もって高速
なプログラムの処理を得ることにある。
〔発明の概要〕
本発明は、標準のプログラミング言語の言語プロセサの
処理の中で、DMLを解析することやデータベース定義
情報との整合性の確認情報。
データベースシステム管理プログラムが実行時に参照す
るディレクトリテーブルの位置情報を埋め込んだオブジ
ェクトを生成することにある。
データベース定義情報の整合性が容易に確認できるため
、2次的なソースプログラムは不要であり、又、C0P
Y文などで取込まれるアプリケーションプログラム固有
のデータ情報をDML解析時に使用して解析範囲を拡大
できるといった利点がある。
〔発明の実施例〕
データディクショナリ・ディレクトリシステムでは、デ
ータベース定義、端末・回線定義、システム環境・運用
定義などのデータベースシステム定義情報を、定義の登
録・更新に適した形態でディクショナリに、データベー
スシステム実行に適した形態でディレクトリに格納し管
理している。
即ち、ディレクトリには、実際にデータベースの作成ま
たはシステムの運用に必要な定義情報が、ディクショナ
リの定義情報をもとに編集されて格納される。
一方、データベース管理システム(DEMS :データ
ベースシステム管理用プログラムにより機能が遂行され
る)では、アプリケーションプロゲラ11から、データ
ベースへのデータの格納、データベースから必要なデー
タの検索、データベース中のデータの更新、あるいは、
端末とのメツセージの送受信といったデータベースシス
テム・アクセス命令が発行されると、先に示したディレ
クトリ中のデータベースシステムの各種定義情報を参照
し、それに基づきアクセス命令に対応する処理を行なっ
ている。
従来の方式では、アプリケーションプログラム実行時に
、アクセス命令とデータベースシステムの各種定義情報
との間の整合性をチェックしたり、アクセス命令の処理
に必要な定義情報を求めていた。また、その際には、一
般にテーブル形式あるいはポインタで結びつけられてい
る数多くの同種の定義情報の中から目的のものを探索す
るための処理を行なっていた。
これに対して本発明においては、これら実行時に行なわ
れていた処理の中で、実行に先立つアプリケーションプ
ログラムのコンパイル段階で事前に処理できるものを済
ましてしまう。
そのために本発明では、アプリケーションプログラムの
コンパイル時に、ディクショナリに登録されたデータベ
ースシステムの定義情報を参照し、データベースシステ
ムのアクセス命令の正当性の確認、実行時に参照する定
義情報の場所を示す情報などを取得してオブジェクトモ
ジュールに埋込むといったステップを設けた。
ところでアプリケーションプログラムをコンパイルした
時点とそれが実行される時期は:般に異なることから、
アプリケーションプログラムがコンパイルされるときに
参照したディクショナリ中の定義情報と、アプリケーシ
ョンプログラムが実行時にデータベース管理プログラム
によって参照されるディレクトリ中の定義情報とが一致
していることを確認する必要がある。
即ち、定義情報を世代管理したとき1世代の不一致によ
り、不正な実行結果を生じる可能性がある。
そこで、更にアプリケーションプログラムのコンパイル
によって生成されるオブジェクトモジュール中に、コン
パイル時に参照した定義情報の世代管理情報を埋めこみ
、実行に際して。
データベース管理システムが参照する定義情報の■代管
理情報とを比較し、妥当なものであれば、そのアプリケ
ーションプログラムを実行するステップを設けた。
本ステップにより、アプリケーション・プログラムの実
行を高速にするため、そのコンパイル時に参照した定義
情報と、実行時にデータベース管理プログラムが参照す
る定義情報との間に世代のズレが生じないことから、高
速かつ正常な実行ができる。
以上の本発明の実施例においてはアプリケーションプロ
グラムの実行時に行なっていた処理をコンパイル時に行
なうことにより、実行時の処理量を減らすことができ、
実行時性能を向上させる。
コンパイル時と実行時の定義情報の一致を確認すること
が容易に行なえるという効果がある。
更には、従来、アプリケーションプログラムが実行時に
異常終了したり、あるいはデータベースの破壊、不正な
データに基づく他アプリケーションプログラムの異常処
理などにより発見されていたアプリケーションプログラ
ム中のデータベースアクセス命令不良を、アプリケーシ
ョンプログラムのコンパイル時に発見することによりア
プリケーションプログラムのデバッグ期間の短縮、アプ
リケーションプログラムの正常な実行の保証ひいては、
データベースシステム全体の信頼性の向上という効果が
派生する。
以下、本発明の一実施例を図を参照しながらより詳細に
説明する。
第1図において、1は標準プログラム言語で記述された
アプリケーションプログラムが登録されるソース・ライ
ブラリ、2は標準プログラム言語を翻訳する言語プロセ
サ、3はオブジェクトモジュールを登録するオブジェク
トライブラリ、4はオブジェクトモジュールを実行形式
のロードモジュールに変換するリンケージエディタ、5
はロードモジュールを登録するロードライブラリ、6は
データベースアクセス(格納、検索、更新など)や端末
とのメツセージ送受信を行なうデータベースシステム管
理プログラム。
7はデータベース、8は端末、9はデータベースの定義
情報をソース形式で登録したディクショナリ・ファイル
、10はディクショナリから。
データベースシステム管理プログラムが実行時に参照し
やすい形式に編集したデータベースシステムの定義情報
(以下、ディレクトリテーブルと呼ぶ)を生成するディ
レクトリ生成プログラム、11はディレクトリテーブル
を登録するディレクトリファイルである。
第1図は各種ファイルとその処理の関係が分り易いよう
に表記しであるが、ファイル1,3゜5.7,9,11
は磁気ディスク装置に格納され、プログラム2,4,6
.toは電子計算機の主記憶装置に格納され中央処理装
置において実行されることによってその機能が遂行され
る。
本発明の対象は、データベースアクセスや端末送受信な
どデータベースシステム全体であるが以下の説明では、
データベースアクセスに話を絞る。またデータベースの
定義仕様はl5O(X3H2−84−48)(Draf
t  Proposed)Network  Data
base  Langvage(以下NDLと略す)に
基づく。
ここでレコードはタイプ別にまとめられたデータを意味
し、2つのレコードの集まりをセットと称する。更に、
レコードを構成するフィールドはコンポーネントタイプ
と称す。NDLでは、データベースの論理的な構造は、
レコードタイプ(以下レコード)、そのレコードを構成
するコンポーネントタイプ(以下コンポーネント)およ
びレコード間の関係を示すセットタイプ(以下セット)
によって定義される。以下。
レコード、フィールド、セットなどによって定義される
データベースの論理的な構造を論理スキーマとよぶ。1
つの論理スキーマは1つのデータベースに対応する。又
、論理スキーマの一部分を再定義したもの即ち、論理ス
キーマの中からユーザアプリケーションプログラム毎に
使用する部分を抜き出したものをサブスキーマとよぶ。
サブスキーマは、論理スキーマのレコードに対してレコ
ードビュー、コンポーネントに対してコンポーネントビ
ューセットに対してセットビューによって定義される。
データベースの利用者は、このサブスキーマの範囲内で
データベースを利用できる。
論理スキーマの定義例を次に示す。データベースの論理
構造が第2図のとおりとし、レコード名RECI、RE
C2,各レコードを構成するコンポーネント名が夫々+
 C1l、C12゜とC21,C22,C23,レコー
ドRECIとRFe5のセット名5ETIであると−N
DLでは次のように定義できる。
SCIIEMA  5CHI RECORD  RECL ITEM  C1l  CHARACTER(2)IT
EM  C12CIIARACTER(2)RECOR
D  RFe5 ITEM  C21C1(ARACTER(4)丁TE
M   C2’2   CHARACTER(2)IT
鼎 C23CIIARACTER(2)SET   5
ETL O讐NERREC! 0RDERFIR5T MEMBERRFe5 INSERTION  AUTOMATICRETEN
TION  FIXED なおオーナー(OWNER)とはセットにおける親のレ
コード、メンバ(MEMBER)とは子のレコードを意
味する。例えば企業のレコードとその企業において取り
扱われる製品のレコードが親子の関係にある1つのセッ
トである。
ここで、論理スキーマ名称を5CHIとした。
同様にサブスキーマの構造が第3図のとおりとし、レコ
ードビュー名RECVI、RECV2、各レコードビュ
ーを構成するコンポーネントビュー名が夫々CVI 1
.CVI 2. とCV21、CV22.L/ml−ド
ビュ−RE CV 1とRECV2のセットビュー名5
ETVIであると、NDLでは次のように定義できる。
SUBSCIIEMA  5UBSi  OF  5e
llRECOR[)  RECIRENAMED  R
ECVIITEM   C1l   RENAMED 
  CVLLITEM   C12RENAMED  
CV12RECORD  RFe5  RENAMED
  RECV2ITEM   C21RENAMED 
 CV211TEM   C22RENAMED  C
V22SET     5ETI  RENAMED 
 5ETVI論理スキーマやサブスキーマは1個々に名
称やバージョン番号が付与されてディクショナリに登録
される。論理スキーマの定義情報を登録するディクショ
ナリの構造を第4図に示す。
第4図では、スキーマ名や、システム内−意のスキーマ
番号、スキーマバージョン番号および論理スキーマ全体
に関係するスキーマ情報がレコード41に、レコード名
やスキーマ内−tのレコード番号およびレコード単位の
レコード情報がレコード42に、コンポーネント名やレ
コード内−意のコンポーネント番号、コンポーネント情
報のコンポーネント情報がレコード43に、セット名や
スキーマ内−意のセット番号、セットの親となるオーナ
レコードのレコード番号およびセット単位のセット情報
がレコード44に、セットの子となるメンバレコードの
レコード番号とメンバレコード単位のメンバレコード情
報がレコード45に登録される。
又、レコード41とレコード42、レコード42とレコ
ード43、レコード41とレコード44、レコード44
とレコード45とがそれぞれセット関係を有する。
同様にサブスキーマの定義情報を登録するディクショナ
リの構造を第5図に示す。
第5図では、サブスキーマ名やスキーマ内で一意なサブ
スキーマ番号、サブスキーマバージョン番号およびサブ
スキーマ全体に関係するサブスキーマ情報がレコード5
1に、レコードビュー名やサブスキーマ内−意のレコー
ドビュ一番号、レコードビューに対応するレコードのレ
コード名とレコード番号およびレコードビュ一単位のレ
コードビュー情報がレコード52に。
コンポーネントビュー名やレコードビュー内−意のコン
ポーネントビュ一番号、コンポーネントビューに対応す
るコンポーネント名とコンポーネント番号およびコンポ
ーネントビュ一単位のコンポーネントビュー情報がレコ
ード53に、セットビュー名とサブスキーマ内−意のセ
ットビュ一番号、セットビューに対応するセットのセッ
ト名とセット番号およびセットビュ一単位のセットビュ
ー情報がレコード54に登録される。又、レコード51
とレコード52、レコード52とレコード53、レコー
ド51とレコード54とが、それぞれセット関係を有す
る。
又、ある名称とバージョン番号とで識別される論理スキ
ーマと、ある名称とバージョン番号とで識別されるサブ
スキーマとが正しく関係付けられたとき、この1組の論
理スキーマとサブスキーマに対して世代番号が付与され
る。
名称が同じ組合せでも、バージョン番号が異なれば別の
世代番号が与えられる。世代番号は関係付けられた時点
に依存し、バージョン番号の大きさに依存しない。
世代番号を登録するディクショナリの構造を、第6図に
示す。第6図では、関係付けられた論理スキーマのスキ
ーマ番号とバージョン番号。
サブスキーマのサブスキーマ番号とバージョン番号およ
び世代番号とがレコード61に登録される。
ディクショナリに登録された定義情報は、第1図に示す
ディレクトリ生成プログラム10によってデータベース
管理プログラム6が実行時に参照しやすい形式(ディレ
クトリテーブル)に編集されディレクトリファイル11
に登録される。ディクショナリからディレクトリを作る
ことはよく知られているのでディレクトリ生成プログラ
ム10は詳述しない。その際世代番号も合わせて登録さ
れる。
ディレクトリテーブルの例を第7図に示す。
ここでビュー情報は、ビューの種別毎に1まとまりのテ
ーブルとして構成される。また、個々のビュー情報は、
各テーブルの第何番目即ち、配列番号が、ディクショナ
リ中のビュ一番号と一致するように生成される。
他方、データベースシステムの利用者は、アプリケーシ
ョンプログラムをC0BOL言語やPL/I言語などの
標準プログラム言語を用いて作成する。その中で、デー
タベースシステムのアクセス命令は、例えば、次のよう
に記述される。
サブスキーマの例として先に示した5UBS1を用い、
C0BOL言語による記述例を示す。
? DATA  DIVISION SOB−5CHEMA  5ECTIONDB  5U
BSI  リITHIN  5CHIPROCEDUR
E  DIVISION? FIND  FIR3T  RECVI  IN  5
PTVIWHERE  CIL=’AB’AND  C
l2=’CD’? DATA  DIVfSIONで、コノアプリケーショ
ンプログラムで使用するユーザデータベースの論理スキ
ーマ名や、サブスキーマ名が指定される。
PROCEDURE  DIVISIONにおいて、デ
ータベースアクセス命令が記述される。
上記の例では、ユーザデータベース中から、セットビュ
ー5ETVIに属するレコードビューRECVIの実現
値の中で、コンポーネントビューC1lの値が’ AB
’であり、かつC12の値が’ CD’である実現値の
並びの中で、先頭(FIR8T)のものを検索するデー
タベースアクセス命令である。
第1図に示すソースライブラリ1中のアプリケーション
プログラムは、言語プロセサ2によってオブジェクトモ
ジュールに変換されオブジェクトライブラリ3に登録さ
れる、その処理の中には、第8図に示すように、DAT
A  DIVISIONの解析101と、PROCED
URE  DIVISION+7)解析102がある。
DATA  DIVISIONの解析101の中では、
第9図に基づき説明されるようにサブスキーマセクショ
ンの正当性が確認される。
第9図はDATA  DIVISIONの解析101の
詳細を示す。はじめに、ユーザがサブスキーマセクショ
ンを指定したかを判定しく201)、サブスキーマセク
ションで指定された論理スキーマ名に相当する論理スキ
ーマの定義が第1図のディクショナリ9に登録されてい
ることを確認する(202)。
登録されていれば(203Yes)同様にサブスキーマ
名に相当するサブスキーマの定義がディクショナリ9に
登録されていることを確認する(204)。
311aされていれば(205Yes)更に、サブスキ
ーマセクションで世代番号が指定されていると、論理ス
キーマ名、サブスキーマ名および世代番号で特定される
第6図に示す世代情報が登録されていることも合わせて
確認する。もし世代番号が指定されない場合、論理スキ
ーマ名とサブスキーマ名をもつ第6図の世代情報がある
ことを確認するとともに、その世代番号が最新のものを
、当該サブスキーマセクションの世代番号とする。(2
06) サブスキーマセクションの解析の中で、ユーザ記述の中
にディクショナリに登録されている定義情報との間の不
整合があれば(203)。
(205)、(207)NODンパイルエラーとして、
その不良内容をメツセージ出力する(208)、(20
9)、(210)。
又、PROCEDURE  DIVISIONの解析1
02の中で、データベースシステムへのアクセス命令の
正当性の確認処理やアプリケーションプログラムの実行
待性能向上のため、定義情報テーブルの生成処理が行な
われる。第10図にPROCEDURE  DIVIS
IONの解析の詳細を示す。第10図をもとに説明する
と、まず、PROCEDURE  DIVISIONに
記述されている文がデータベースアクセス命令であるこ
とを判定しく301)、各アクセス命令対応(302,
303)の処理(304,305,306,307) 
 を行なう。
FIND命令の場合(302Yes)ユーザが記述した
FIND命令の正当性を確認しく304)、正常か否か
を判定して(305)、エラーメツセージを出力したり
 (307)、FIND命令の実行時テーブルの生成を
行なう(306)。
以下、FIND命令の正当性確認処理304につき更に
詳細を第11図で説明する。正当性確認処理では、FI
ND命令中に記述されるレコードビュー名、セットビュ
ー名、コンポーネントビュー名のそれぞれについて記述
されているかどうか、及びアクセス命令中のサブスキー
マセクションで指定されたサブスキーマで定義されたも
のであることを確認する(401 。
405.402,408,403,404,411)。
本確認処理の中で、ユーザ記述の中に。
ディクショナリに登録されている定義情報との間に不整
合6.9.12があれば(406゜409.412No
) 、コンパイルエラーとして、その不良内容をメツセ
ージ出力する(407,410,41.3)  。
次にFIND命令の実行時テーブル生成処理306につ
きその詳細を第12図で説明する。
実行時テーブル生成処理では、データベースシステムア
クセス命令文に対して、各アクセス命令対応にまず、第
13図に示すテーブルを生成する(501,502,5
03)。第13図は。
スキーマ番号81、サブスキーマ番号821世代番号8
3.データベースシステムアクセス命令種別84、セッ
トビュ一番号85.セット番号86、レコードビュ一番
号87.レコードタイプ番号88、検索方向やカーソル
制御情報などのアクセス命令情報89.検索条件情報9
0からなるテーブル構成を示す。
次に、第13図に示すテーブルを第1引数とするCAL
L文を生成する(504)。このCALL文は、その後
一般のCALL文と同様にオブジェクトに展開される。
次に、第1図のオブジェクトライブラリ3中のオブジェ
クトモジュールは、ユーザがリンケージエディタ4を起
動することにより、ロードモジュールに変換されてロー
ドライブラリ5に登録される。
その後、ユーザがロードモジュールを実行させ、その中
でデータベースシステムアクセス命令が発行されると、
ロードモジュールからデータベースシステム管理プログ
ラム6へ、引数の1つとして、アクセス命令の情報(実
行時テーブル)が渡される。データベースシステム管理
プログラム6のデータベースアクセス命令に応答してデ
ィレクトリ11を主記憶装置ヘロードする処理を第14
図に示す。
データベースシステム管理プログラム6は、第14図に
示すように、ユーザアプリケーションプログラムからの
第1回目のデータベースアクセス命令の場合には(60
1Yes)、実行時テーブルの内容に基づき上記の例で
は、スキーマ番号、サブスキーマ番号、世代番号をキー
として第1図のディレクトリファイル11から、実行に
必要な第7図に示すようなディレクトリテーブルを主記
憶装置にロードする(603)。
キーと一致するディレクトリテーブルがディレクトリフ
ァイル中になければ(604)、エラーメツセージを出
力する(606)。キーは第15図に示すワークエリア
にセーブする(605)。
第2回目以降のアクセス命令発行時(6o2No)は、
第1回目にロードしたディレクトリテーブルのキーと、
当該アクセス命令の実行時テーブルの内容とが一致して
いることを確認しく607)、不一致であれば、新たな
ディレクトリテーブルのロードを行なう。尚、ディレク
トリテーブルをデータベースシステム管理プログラムが
UAP実行前に、主記憶上にロードにおく方式が考えら
れろ。その方式では、第14図に示す処理にかえて、第
16U4に示すように前もって主記憶上にロードされて
いるディレクトリテーブルのキーと、データベースシス
テムアクセス命令の実行時テーブルのキーの値が一致す
るかを確認しく1601)、一致しなげれば、エラーメ
ツセージを出力する(1602)処理とすればよい。以
上のように実行時テーブル(凹代番号を有する)に一致
するディレクトリがあるかどうかをチェックして一致す
るディレクトリがあるときそのディレクトリをデータベ
ース管理プログラムが使用するようにしたので、コンパ
イル時とユーザアプリケーションプログラム実行時のデ
ィレクトリの整合性がチェックされた上で使用されるこ
とが保証される。
一方、アクセス命令に対するデータベース管理プログラ
ムの処理の中で、アクセス命令中に記述されたレコード
ビュー名、セットビュー名、コンポーネントビュー名は
、第7図に示すようなディレクトリテーブル中の各ビュ
ー情報の配列番号に一致するビュ一番号に置きかえられ
て実行時テーブルにセットされているので、即ち、コン
パイル時にできる処理が済んでいるので実行時に該当す
るビュー情報を探す処理が不要となり、実行時性能が向
上する6 上記処理を、従来のデータベースアクセス制御方式に追
加することで本発明を実施できる。
〔発明の効果〕
本発明によれば、データディクショナリ・ディレクトリ
機能を有するデータベースシステムにおいて、アプリケ
ーションプログラムのコンパイル時に、ディクショナリ
中の定義情報を参照することにより次の効果がある。
(1)従来アプリケーションプログラムの実行時に行な
っていた処理を事前に行なうことから、実行時の処理量
が減り実行性能を向上できる。
【図面の簡単な説明】
第1図は本発明の一実施例のデータベースシステム構成
図。 第2図は、データベースの論理的な構成を例示した図で
ある。 第3図は、第2図をもとに、データベースの使用範囲を
ビューとして例示した図である。 第4図は、論理スキーマの定義のディクショナリ内構造
を表現した図である。 第5図は、サブスキーマの定義のディクショナリ内構造
を表現した図である。 第6図は、世代情報のディクショナリ内構造を表現した
図である。 第7図は、1つのディレクトリテーブルの構造を表現し
た図である。 第8図は、言語プロセサの処理の一部を表現した図であ
る。 第9図は、第8図で示した処理の中で、サブスキーマセ
クションの構文解析処理の一部を表現した図である。 第10図は、第8図で示した処理の中で。 rPROcEDURE  DIVISIONJ に記述
されたデータベースアクセス命令文の構文解析処理の一
部を表現した図である。 第11図は、第10図で示した処理の中で、アクセス命
令文の正当性を確認する処理の概要を表現した図である
。 第12図は、第10図で示した処理の中で。 アクセス命令文の実行時テーブルを生成する処理の概要
を表現した図である。 第13図は、第12図で示した処理の中で生成される実
行時テーブルの構成を表現した図である。 第14図は、データベースシステム管理プログラムの中
で、アプリケーションプログラムからのデータベースア
クセス命令に対して、ディレクトリファイルからのディ
レクトリテーブルのロード処理概要を表現した図である
。 第15図は、第14図で示した処理の中でディレクトリ
テーブルのキーをセーブするためのワークエリアの構成
を表現した図である。 第16図は、データベースシステム管理プログラムがデ
ィレクトリテーブルをUAP実行実行時日−ドする方式
をとった場合、第14図に相当する処理概要を表現した
図である。 61・・・世代番号を記憶するレコード。 7“壬べ 代理人弁理士 小 川 勝゛\、方゛′第 1 図 ! 第2図 栴 3 図 第4図 栴 5 図 栴6図 にI 第 7 区 第 8 図 高 q 図 車 IO図 嶌 lz  図 察I3図 第 15  図 第 14  図

Claims (1)

  1. 【特許請求の範囲】 1、ソースプログラミング言語で記述されたアプリケー
    ションプログラムをコンパイルしてオブジェクトモジュ
    ールを生成し、リンケージをとってロードモジュールを
    生成後、そのロードモジュールを実行することにより所
    望の結果を得るデータベースシステムにおいて、前期デ
    ータベースシステムはデータベースシステムの定義情報
    を一元管理するデータディクショナリ・ディレクトリシ
    ステムを有し、アプリケーションプログラムのコンパイ
    ル時に、その中のデータベースアクセス命令が正常に実
    行可能か否かをディクショナリに登録されている定義情
    報をもとに確認、定義情報をオブジェクトモジュール中
    に埋め込み、ロードモジュールの実行時にディレクトリ
    中のデータベースシステムの定義情報に加えコンパイル
    時に埋め込んだ定義情報を利用してデータベースアクセ
    ス制御を行なうことを特徴とするデータベースアクセス
    制御方式。 2、特許請求の範囲第1項記載のデータベースアクセス
    制御方式において、データディクショナリ・ディレクト
    リシステムにおいて、データベースシステムコンパイル
    時に参照したディクショナリ中の定義情報の世代を示す
    情報をオブジェクトモジュールに埋込むとともに、アプ
    リケーションプログラム実行時、ディレクトリ中のデー
    タベースシステムの定義情報の世代と、ロードモジュー
    ル中の定義情報の前記世代を示す情報の世代とが一致し
    ているかを確認することを特徴とするデータベースアク
    セス制御方式。
JP61004927A 1986-01-16 1986-01-16 データベース・アクセス制御方法 Expired - Lifetime JP2602205B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP61004927A JP2602205B2 (ja) 1986-01-16 1986-01-16 データベース・アクセス制御方法
DE3750515T DE3750515T2 (de) 1986-01-16 1987-01-15 Verfahren zur Zugriffssteuerung einer Datenbasis.
EP87100472A EP0230279B1 (en) 1986-01-16 1987-01-15 Method of controlling database access
US07/004,072 US4819160A (en) 1986-01-16 1987-01-16 Method of processing data access in a database management system with data dictionary directory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61004927A JP2602205B2 (ja) 1986-01-16 1986-01-16 データベース・アクセス制御方法

Publications (2)

Publication Number Publication Date
JPS62164136A true JPS62164136A (ja) 1987-07-20
JP2602205B2 JP2602205B2 (ja) 1997-04-23

Family

ID=11597228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61004927A Expired - Lifetime JP2602205B2 (ja) 1986-01-16 1986-01-16 データベース・アクセス制御方法

Country Status (4)

Country Link
US (1) US4819160A (ja)
EP (1) EP0230279B1 (ja)
JP (1) JP2602205B2 (ja)
DE (1) DE3750515T2 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2644728B2 (ja) * 1986-01-27 1997-08-25 株式会社日立製作所 データディクショナリ・ディレクトリシステム
JPH01162979A (ja) * 1987-12-19 1989-06-27 Ricoh Co Ltd データベース管理システムの機能拡張装置
US5214779A (en) * 1988-06-30 1993-05-25 International Business Machines Corporation Variable construct representation embedded in data stream which references definition for dynamically generating data used in processing the data stream
US5345587A (en) * 1988-09-14 1994-09-06 Digital Equipment Corporation Extensible entity management system including a dispatching kernel and modules which independently interpret and execute commands
US5230049A (en) * 1988-11-29 1993-07-20 International Business Machines Corporation Program source code translator
US5167011A (en) * 1989-02-15 1992-11-24 W. H. Morris Method for coodinating information storage and retrieval
JP2592955B2 (ja) * 1989-04-04 1997-03-19 株式会社東芝 プログラム自動生成装置
US5291601A (en) * 1989-06-01 1994-03-01 Hewlett-Packard Company Shared libraries implemented with linking program loader
US5185887A (en) * 1989-07-06 1993-02-09 Hitachi, Ltd. Database generation management method and system
JPH0370048A (ja) * 1989-08-09 1991-03-26 Hitachi Ltd ディクショナリ創成方法
CN1029050C (zh) * 1989-10-13 1995-06-21 国际商业机器公司 在数据库系统中强化实施参照约束
US5448726A (en) * 1989-10-23 1995-09-05 International Business Machines Corporation Data base management system with data dictionary cache including a single loadable object descriptor
US5222234A (en) * 1989-12-28 1993-06-22 International Business Machines Corp. Combining search criteria to form a single search and saving search results for additional searches in a document interchange system
DE69031028T2 (de) * 1990-02-26 1997-11-20 Oracle Corp System zum physikalischen Entwurf von Datenbanken
JP2720904B2 (ja) * 1990-08-31 1998-03-04 富士通株式会社 自己記述によるデータベース管理システムの構成方法および開発/変更方法
US5457800A (en) * 1991-05-02 1995-10-10 Smiths Industries Aerospace & Defense Systems, Inc. Adaptable datalink interface
US5488727A (en) * 1991-09-30 1996-01-30 International Business Machines Corporation Methods to support multimethod function overloading with compile-time type checking
JPH05250244A (ja) * 1992-03-04 1993-09-28 Nec Corp データベースシステム
US5418957A (en) * 1992-03-09 1995-05-23 Narayan; Rom Network data dictionary
JPH06214865A (ja) * 1993-01-12 1994-08-05 Fujitsu Ltd オブジェクト・ベース・データ処理装置
US5557724A (en) * 1993-10-12 1996-09-17 Intel Corporation User interface, method, and apparatus selecting and playing channels having video, audio, and/or text streams
US5410698A (en) * 1993-10-12 1995-04-25 Intel Corporation Method and system for dynamic loading of software libraries
US6279029B1 (en) 1993-10-12 2001-08-21 Intel Corporation Server/client architecture and method for multicasting on a computer network
JP3526595B2 (ja) * 1993-10-29 2004-05-17 富士通株式会社 情報管理機構
US5410693A (en) * 1994-01-26 1995-04-25 Wall Data Incorporated Method and apparatus for accessing a database
JPH07225707A (ja) * 1994-02-10 1995-08-22 Fujitsu Ltd アプリケーションのテスト方法及びそのテスト支援装置
US5623660A (en) * 1994-04-22 1997-04-22 Josephson; Jeffrey L. System for regulating access to data base for purposes of data base management
US5675785A (en) * 1994-10-04 1997-10-07 Hewlett-Packard Company Data warehouse which is accessed by a user using a schema of virtual tables
US5696973A (en) * 1995-02-17 1997-12-09 International Business Machines Corporation Index-based method for supporting multimethod function overloading with compile-time type checking and run-time dispatch
US5926637A (en) * 1997-08-20 1999-07-20 Bea Systems, Inc. Service interface repository code generation data
US6366917B1 (en) 1998-04-01 2002-04-02 Webputty, Inc. Method of modifying a populated database structure by modifying metadata describing the database structure
US6018742A (en) * 1998-07-07 2000-01-25 Perigis Corporation Constructing a bifurcated database of context-dependent and context-independent data items
JP3213585B2 (ja) * 1998-07-09 2001-10-02 株式会社インフォメックス データ検索方法及び装置、データ検索システム、記録媒体
DE10040987B4 (de) * 1999-09-29 2006-10-12 International Business Machines Corp. Verfahren und Vorrichtung für übereinstimmende Aktualisierungen von redundanten Daten in relationalen Datenbanken
US6625597B1 (en) 2000-07-25 2003-09-23 Mobashar Yazdani Information exchange system
WO2002103573A1 (en) * 2001-06-14 2002-12-27 Ubs Ag A flexible virtual database system including a hierarchical application parameter repository
US6763347B1 (en) * 2001-10-19 2004-07-13 Nick Zhang Indexing management for hierarchical main memory
US7885976B2 (en) * 2007-02-23 2011-02-08 International Business Machines Corporation Identification, notification, and control of data access quantity and patterns
US8068599B2 (en) 2008-01-09 2011-11-29 Accenture Global Services Limited Call center application data and interoperation architecture for a telecommunication service center
US11349957B2 (en) * 2020-05-14 2022-05-31 Bank Of America Corporation Automatic knowledge management for data lineage tracking

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58166461A (ja) * 1982-03-27 1983-10-01 Fujitsu Ltd 関係型デ−タベ−ス・システムにおける構文チエツク方式
JPS593554A (ja) * 1982-06-30 1984-01-10 Fujitsu Ltd デ−タベ−スアクセス制御方式

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4130867A (en) * 1975-06-19 1978-12-19 Honeywell Information Systems Inc. Database instruction apparatus for determining a database record type
JPS5839341A (ja) * 1981-09-02 1983-03-08 Toshiba Corp デ−タベ−スマネジメントシステムにおけるデ−タのアクセス制御方法及び装置
US4631664A (en) * 1983-07-19 1986-12-23 Bachman Information Systems, Inc. Partnership data base management system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58166461A (ja) * 1982-03-27 1983-10-01 Fujitsu Ltd 関係型デ−タベ−ス・システムにおける構文チエツク方式
JPS593554A (ja) * 1982-06-30 1984-01-10 Fujitsu Ltd デ−タベ−スアクセス制御方式

Also Published As

Publication number Publication date
DE3750515D1 (de) 1994-10-20
EP0230279A3 (en) 1990-12-27
JP2602205B2 (ja) 1997-04-23
US4819160A (en) 1989-04-04
EP0230279B1 (en) 1994-09-14
EP0230279A2 (en) 1987-07-29
DE3750515T2 (de) 1995-01-12

Similar Documents

Publication Publication Date Title
JPS62164136A (ja) デ−タベ−ス・アクセス制御方式
US7992141B2 (en) Method and apparatus for building executable computer programs using compiled program libraries
JP2811990B2 (ja) プログラム処理装置及びプログラム処理方法
CN107861728B (zh) 用于传统程序语言向现代程序语言转换的方法及其系统
US20030093433A1 (en) Method and system for software application development and customizible runtime environment
US4979109A (en) Method of controlling a data dictionary directory system in a data base system
EP0839358B1 (en) Emulator for an sql relational-database
CN1976320B (zh) 数据访问控制方法及系统
CN114281342A (zh) 一种代码自动生成方法
CN113204571A (zh) 涉及写入操作的sql执行方法、装置及存储介质
JP2004516574A (ja) ソフトウェアコンパイラ用の組み込みシステム用のロバストロギングシステム
CN111694846B (zh) 一种基于Type 2 JDBC驱动的分离模式分布式存储过程实现方法
CN117421302A (zh) 一种数据处理方法及相关设备
US7765531B2 (en) Systems and methods for handling multiple static query modules for distinct environments
CN110647535A (zh) 一种将业务数据更新至Hive的方法、终端及存储介质
CN111723104A (zh) 一种数据处理系统中语法分析的方法、装置及系统
CN116627390B (zh) 航空软件开发中icd文件的替代方法及装置
JP2004086545A (ja) データ項目の状態を管理することでプログラムを自動生成するプログラム開発支援システム
KR100331470B1 (ko) 교환기 데이터베이스 무결성 보장 장치 및 방법
KR100353452B1 (ko) 교환시스템의 데이타 베이스 생성방법
CN114238469B (zh) 数据提取接口开放方法、装置、计算机设备及存储介质
WO2024113831A1 (zh) 一种内存安全管理方法及设备
JPH06348564A (ja) アプリケーションプログラムの自動チェック方式
JP3210203B2 (ja) プログラム試験方法及びsqlシミュレータ
JPH1040089A (ja) データ移行プログラム生成方式

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term