JPH08314951A - Structure display method for relational data base and relational data base system - Google Patents

Structure display method for relational data base and relational data base system

Info

Publication number
JPH08314951A
JPH08314951A JP7114949A JP11494995A JPH08314951A JP H08314951 A JPH08314951 A JP H08314951A JP 7114949 A JP7114949 A JP 7114949A JP 11494995 A JP11494995 A JP 11494995A JP H08314951 A JPH08314951 A JP H08314951A
Authority
JP
Japan
Prior art keywords
layer
tables
field
fields
relation
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
JP7114949A
Other languages
Japanese (ja)
Inventor
Susumu Tsuhara
進 津原
Shigeru Motobayashi
繁 本林
Kenichi Kihara
健一 木原
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 JP7114949A priority Critical patent/JPH08314951A/en
Publication of JPH08314951A publication Critical patent/JPH08314951A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PURPOSE: To display the structure of a relational data base in a form which is easy to understand. CONSTITUTION: The relational data base is separated into plural data bases for groups without having mutual relations (a). The tables of the separated data bases are rearranged so that the backflow of the relation becomes less (b), and they are divided into layers along the order of the relation (c). The tables of the respective layers are arranged by rearranging the crossing of arrows showing the relation between the tables so that it becomes less (d). Fields in the tables are arranged by rearranging the arrows showing the relation between the fields so that it becomes less (e).

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、リレ−ショナルデータ
ベースに関し、特に、リレ−ショナルデータベ−スの構
造を、利用者が当該構造を容易に理解できるように表示
する技術に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a relational database, and more particularly to a technique for displaying the structure of a relational database so that a user can easily understand the structure.

【0002】[0002]

【従来の技術】リレ−ショナルデータベ−スは、それぞ
れ1または複数のフィ−ルドからなる複数のテ−ブルに
よって構成される。また、リレ−ショナルデータベ−ス
においては、異なるテ−ブルに属する、複数のフィ−ル
ドが相互に関係づけられる。
2. Description of the Related Art A relational database is composed of a plurality of tables each having one or a plurality of fields. In the relational database, a plurality of fields belonging to different tables are associated with each other.

【0003】このようなリレ−ショナルデータベ−スの
構造を表示する技術としては、John L. Viescas著:
Windows版 Microsoft Access 1.1 オフィシャルガ
イド:pp.492-494,アスキー(1994.7)"に記載されて
いる技術が知られている。
A technique for displaying the structure of such a relational database is described by John L. Viescas:
The technology described in "Windows version Microsoft Access 1.1 Official Guide: pp.492-494, ASCII (1994.7)" is known.

【0004】この技術では、リレ−ショナルデータベ−
スの構造を、各テ−ブルをリスト形式でフィ−ルド名称
を表した表として同一画面上に表示する。そして、関係
づけられているフィ−ルドについては、これらのフィ−
ルド名称間を結ぶ線分を、テ−ブルを表す表と共に前記
画面上に表示する。
In this technique, a relational database is used.
The table structure is displayed on the same screen as a table showing the field names of each table in a list format. And for the related fields, these fields
A line segment connecting the field names is displayed on the screen together with a table showing the table.

【0005】このようなリレ−ショナルデータベ−スの
構造をグラフィックで表示する技術は、利用者がリレ−
ショナルデータベースを構築する際等に、その構造を理
解する上で極めて有意義なものである。
In the technique of displaying the structure of such a relational database by a graphic, the user can
It is extremely meaningful for understanding the structure of a conditional database when constructing it.

【0006】[0006]

【発明が解決しようとする課題】しかし、前述したJoh
n L. Viescas著:Windows版 Microsoft Access
1.1 オフィシャルガイド:pp.492-494,アスキー(19
94.7)"に記載されている技術によるリレ−ショナルデ
ータベ−スの構造表示は、リレ−ショナルデータベ−ス
の構造を利用者が理解しやすいように表示するという観
点において満足できるものではなかった。
However, the above-mentioned Joh
n L. Viescas: Windows Version Microsoft Acccess
1.1 Official Guide: pp.492-494, ASCII (19
The structure display of the relational database by the technique described in "94.7)" was not satisfactory from the viewpoint of displaying the structure of the relational database so that the user could easily understand it.

【0007】なぜならば、リレ−ショナルデータベ−ス
の構造が複雑である場合等には、リレ−ショナルデータ
ベースの構造を理解するためには、構造の概略を把握
し、その後に、必要に応じて、その詳細な構造を把握で
きるようにすることが好ましいが、前述した技術ではこ
のような点について考慮がなされていない。
This is because, in the case where the structure of the relational database is complicated, in order to understand the structure of the relational database, an outline of the structure is grasped, and thereafter, if necessary. However, it is preferable to be able to grasp the detailed structure thereof, but such a point is not taken into consideration in the technique described above.

【0008】また、前述した技術では、リレ−ショナル
データベ−スの構造が複雑である場合等には、関係づけ
られているフィ−ルドのフィ−ルド名称を結ぶ線分が交
叉したりする等錯走するため、その表示よりリレ−ショ
ナルデータベ−スの構造を、ただちに理解することが困
難となる。
Further, in the above-mentioned technique, when the structure of the relational database is complicated, the line segments connecting the field names of the related fields may cross each other. It is difficult to understand the structure of the relational database immediately from the display because of the complicated movement.

【0009】そこで、本発明は、より利用者にとって理
解が容易なリレ−ショナルデータベースの構造表示を行
うことを目的とする。
Therefore, an object of the present invention is to display the structure of a relational database that is easier for users to understand.

【0010】[0010]

【課題を解決するための手段】前記目的達成のために、
本発明は、たとえば、他のフィ−ルドとリレ−ションを
持ち得るフィ−ルドを有するテ−ブルを複数含むリレ−
ショナルデータベースの構造を表示する方法であって、
各テ−ブルに属するフィ−ルド間のリレ−ションを解析
し、解析した各テ−ブルに属するフィ−ルド間のリレ−
ションに従って、リレ−ショナルデータベ−スの各テ−
ブル間の関係を解析し、テ−ブルを特定するテ−ブル名
称を、解析したテ−ブル間の関係を認識可能に表わした
表示と、各テ−ブルを特定するテ−ブル名称と各フィ−
ルドを特定するフィ−ルド名称を、解析したテ−ブル間
の関係の構造と解析した各テ−ブルに属するフィ−ルド
間のリレ−ションとを認識可能に表わした表示との、2
種類の表示を選択的に行うことを特徴とするリレ−ショ
ナルデータベースの構造を表示する方法を提供する。
[Means for Solving the Problems] To achieve the above object,
The present invention relates to, for example, a relay including a plurality of tables each having a field capable of having a relationship with another field.
A method of displaying the structure of an optional database,
The relation between the fields belonging to each table is analyzed, and the relation between the fields belonging to each analyzed table is analyzed.
Each relational database table according to
A table name that analyzes the relationship between the tables and identifies the table, a display that shows the relationship between the analyzed tables in a recognizable manner, and a table name that identifies each table Fee
A field name for identifying a field and a display recognizing the structure of the relationship between the analyzed tables and the relation between the fields belonging to each analyzed table.
Provided is a method for displaying the structure of a relational database, which is characterized by selectively displaying types.

【0011】[0011]

【作用】たとえば、前述した2種類の表示を選択的に行
う方法によれば、ユ−ザは、まず、テ−ブルを特定する
テ−ブル名称を、解析したテ−ブル間の関係を認識可能
に表わした表示によって大局的にリレ−ショナルデータ
ベースの構造を把握し、その後に、リレ−ショナルデー
タベースの詳細な構造を、フィ−ルド名称を、解析した
テ−ブル間の関係の構造と解析した各テ−ブルに属する
フィ−ルド間のリレ−ションとを認識可能に表わした表
示によって、階層的に把握することができる。
For example, according to the above-described method of selectively displaying two types of display, the user first recognizes the table name specifying the table and recognizes the relationship between the analyzed tables. The structure of the relational database is grasped comprehensively by the possible display, and then the detailed structure of the relational database, the field name, the structure of the relation between the analyzed tables and the structure are analyzed. The relation between the fields belonging to each table can be recognized in a hierarchical manner by the recognizable display.

【0012】[0012]

【実施例】以下、本発明の一実施例について図面を参照
して説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings.

【0013】図1に、本実施例に係るRDB(elatio
nal ata ase:リレーショナル・データベース)を
利用する情報ネットワークの一例を示す。
FIG. 1 shows the RDB ( R elatio) according to this embodiment.
nal D ata B ase: shows an example of information networks utilizing a relational database).

【0014】図示した情報ネットワ−クは、サーバ機1
0、クライアント機40、LAN(ocal rea etw
ork:ローカル・エリア・ネットワーク)30を構成要
素とするCSS(lient erver ystem:クライア
ント・サーバ・システム)である。
The illustrated information network is a server machine 1.
0, the client machine 40, LAN (L ocal A rea N etw
ork: CSS to components of local area network) 30 (C lient S erver S ystem: a client-server system).

【0015】サーバ機10は、例えばワークステーショ
ン又はパーソナル・コンピュータである。同様に、クラ
イアント機40も、ワークステーション又はパーソナル
・コンピュータであるが、安価にシステムを構築できる
こと、多くのユーザが使い慣れていること(ユーザが操
作するのはクライアント機)等からパーソナル・コンピ
ュータが多く用いられている。
The server machine 10 is, for example, a workstation or a personal computer. Similarly, the client machine 40 is also a workstation or a personal computer, but many personal computers are used because the system can be constructed inexpensively and many users are accustomed to using it (the user operates the client machine). It is used.

【0016】LAN30は、例えばイーサネット等で構
成され、サーバ機10、クライアント機40は、これを
介して、相互間の通信を行う。この通信はOSI(pe
n ystems nterconnection:開放型システム間相互
接続)7層モデルに準拠して行われる(サーバ機、クラ
イアント機とも、いわゆる、物理層、通信プロトコル
層、アプリケーション層を備えている)。
The LAN 30 is composed of, for example, Ethernet or the like, and the server machine 10 and the client machine 40 communicate with each other via this. This communication is OSI (O pe
n S ystems I nterconnection: performed in compliance with the Open Systems Interconnection) 7 layer model (server machine, both the client machine, a so-called physical layer, a communication protocol layer, an application layer).

【0017】このような構成において、サ−バ機20
は、リレ−ショナルデータベ−ス20を保持している。
また、サ−バ機20は、複数のクライアント機40上で
実行されるリレ−ショナルデータベース用プログラムの
要求に応じてリレ−ショナルデータベ−ス20にアクセ
スし、その結果を、クライアント機40上のリレ−ショ
ナルデータベース用プログラムに戻す。すなわち、各ク
ライアント機40上で実行されるリレ−ショナルデータ
ベース用プログラムは、リレ−ショナルデータベ−スを
直接アクセスする場合と同様にアクセスすることができ
る。すなわち、複数のクライアント機40で、リレ−シ
ョナルデータベ−ス20を共用可能な構成となってい
る。
In such a configuration, the server machine 20
Holds a relational database 20.
Further, the server machine 20 accesses the relational database 20 in response to the request of the relational database program executed on the plurality of client machines 40, and the result is accessed on the client machines 40. Return to the relational database program. That is, the relational database program executed on each client machine 40 can be accessed in the same manner as when the relational database is directly accessed. That is, the plurality of client machines 40 can share the relational database 20.

【0018】次に、図2に、サーバ機10、クライアン
ト機40のハードウェア構成例を示す。
Next, FIG. 2 shows a hardware configuration example of the server machine 10 and the client machine 40.

【0019】図示するように、サーバ機10、クライア
ント機40共に、CPU(entralrocessing ni
t:中央処理装置)50、主メモリ60、ハードディス
ク70、フレキシブルディスク80、プリンタ90、キ
ーボード100、マウス110、ディスプレイ120、
LANボード130、バス140で構成される。
[0019] As shown, the server machine 10, the client machine 40 together, CPU (C entral P rocessing U ni
t: central processing unit) 50, main memory 60, hard disk 70, flexible disk 80, printer 90, keyboard 100, mouse 110, display 120,
It is composed of a LAN board 130 and a bus 140.

【0020】CPU50は、例えば64ビットまたは3
2ビットのマイクロプロセッサである。主メモリ60に
は、通信プロトコル・ソフト、OS(perating yst
em:基本ソフトウェア)、ミドル・ソフト、その上で動
作するAP(pplicationrogram:応用プログラ
ム)、およびデータが、ハードディスク70等よりロー
ドされる。ハードディスク70は、上記プログラムやデ
ータを格納する。
The CPU 50 is, for example, 64 bits or 3
It is a 2-bit microprocessor. The main memory 60, a communication protocol software, OS (O perating S yst
em: basic software), middle software, AP to operate on (A pplication P rogram: application program), and data is loaded from the hard disk 70 or the like. The hard disk 70 stores the programs and data described above.

【0021】フレキシブルディスク80は、前述したプ
ログラムやデータを外部より提供したり、これを外部へ
出力したりするために使用される。
The flexible disk 80 is used for providing the above-mentioned programs and data from the outside and outputting the programs and data to the outside.

【0022】プリンタ90は、サーバ機10やクライア
ント機40上に搭載されたAPよりの要求に従った印刷
を実行したり、画面のハード・コピーをとったりするた
めに使用される。
The printer 90 is used to execute printing in accordance with a request from an AP installed on the server machine 10 or the client machine 40, and to make a hard copy of a screen.

【0023】キーボード100、マウス110、ディス
プレイ120は、ともに利用者との間の入出力装置であ
る。
The keyboard 100, mouse 110, and display 120 are all input / output devices with the user.

【0024】特に、クライアント機40では、主メモリ
60上のリレ−ショナルデータベース用プログラムをC
PU50が実行することにより、クライアント機40上
に後述する各種のウインドウをディスプレイ120に表
示するが、ユーザは、マウス110またはキーボード1
00からの入力により、上記ウインドウを操作して対話
的に各種作業を実行することができる。
In particular, in the client machine 40, the relational database program on the main memory 60 is stored in C
By executing the PU 50, various windows, which will be described later, are displayed on the display 120 on the client machine 40. The user uses the mouse 110 or the keyboard 1.
By inputting from 00, various works can be interactively executed by operating the window.

【0025】LANボード130は、サーバ機10、ク
ライアント機40相互間の通信を、LAN30を介して
行うために使用される。
The LAN board 130 is used to perform communication between the server machine 10 and the client machine 40 via the LAN 30.

【0026】ここで、クライアント機40上において実
行される各プログラムの関係を図3に示す。
Here, the relationship between the programs executed on the client machine 40 is shown in FIG.

【0027】図示するように、各種の応用プログラム
pplication rogram:AP1〜APn)は、オペレ
ーティング・システム150(ウインドウ・システムを
含む)の上でメッセージ(図中の矢印)駆動で実行され
る。
[0027] As shown, various application programs (A pplication P rogram: AP 1 ~AP n) is run on the message (arrow in the figure) driven on top of an operating system 150 (including the windowing system) To be done.

【0028】前述したリレ−ショナルデータベース用プ
ログラムが、図中ハッチングを施したAP1である。A
1は、上記メッセージをハンドリング(メッセージの
取得と配送)するメイン関数170と、ここから配送さ
れてくるメッセージに駆動されて各種処理を実行する親
ウインドウ関数180、子ウインドウ関数190から成
る(構成によっては、孫ウインドウ関数等も設けること
もあるが、ここでは省略する)。
The above-mentioned relational database program is AP 1 hatched in the figure. A
P 1 is composed of a main function 170 that handles the above-mentioned message (acquisition and delivery of the message), a parent window function 180 and a child window function 190 that are driven by the message delivered from here to execute various processes (configuration). Depending on the case, a grandchild window function or the like may be provided, but it is omitted here).

【0029】上記親ウインドウ関数180、各子ウイン
ドウ関数190は、クライアント機40上に表示される
一つのウィンドウに対応している。親ウインドウ関数1
80、各子ウインドウ関数190は、この対応するウィ
ンドウの表示を制御すると共に、表示したウィンドウ上
で行われたユ−ザの操作等に応じてメッセージを生成す
る。 さて、親ウインドウ関数180、各子ウインドウ
関数190によって、生成されたメッセ−ジは、オペレ
ーティグ・システム150内のメッセージ・キューに取
り込まれ、その後、順次、メイン関数170により取り
出され、指定されたウインドウ関数180、190へ配
送される。
The parent window function 180 and each child window function 190 correspond to one window displayed on the client machine 40. Parent window function 1
80, each child window function 190 controls the display of the corresponding window, and also generates a message according to the user's operation performed on the displayed window. Now, the messages generated by the parent window function 180 and each child window function 190 are fetched in the message queue in the operating system 150, and then sequentially fetched by the main function 170 and designated. It is delivered to the window functions 180 and 190.

【0030】上記メイン関数170及びウインドウ関数
180、190の、基本的な処理フローを図4に示す。
同図(a)がメイン関数170、(b)がウインドウ関
数180、190の処理フローである(ウインドウ関数
の基本的な処理手順は、親ウインドウ、子ウインドウの
種別に依存せず同一である)。
FIG. 4 shows a basic processing flow of the main function 170 and the window functions 180 and 190.
The figure (a) is the processing flow of the main function 170 and the figure (b) is the window function 180, 190 (The basic processing procedure of the window function is the same regardless of the types of the parent window and the child window). .

【0031】メイン関数170では、同図(a)に示し
たように、ステップ10で、ウインドウのクラス登録、
作成、表示等の初期設定を行った後、ステップ20で、
オペレーティング・システム150内のメッセージ・キ
ューからメッセージを取得し(ステップ30)、取得し
たメッセージをウインドウ関数180、190へ配送す
る(ステップ40)処理を繰り返す。
In the main function 170, as shown in FIG. 7A, in step 10, the window class registration,
After initial settings such as creation and display, in step 20,
The process of acquiring a message from the message queue in the operating system 150 (step 30) and delivering the acquired message to the window functions 180 and 190 (step 40) is repeated.

【0032】また、ウインドウ関数180、190で
は、同図(b)に示したように、ステップ10で、メイ
ン関数170から配送されたメッセージの種別を判定
し、ステップ20〜40で、メッセージの種別に対応し
た各種の処理を行う。
Further, in the window functions 180 and 190, the type of the message delivered from the main function 170 is determined in step 10 and the type of message is determined in steps 20 to 40 as shown in FIG. Various processes corresponding to are performed.

【0033】さて、このような構成において、リレ−シ
ョナルデータベース用プログラムは、親ウインドウ関数
180としてメインメニュ−ウィンドウを制御するウィ
ンドウ関数を備えている。また、主要な子ウインドウ関
数190としては、リレ−ショナルデータベ−スの構造
を定義するためのウィンドウ関数や、リレ−ショナルデ
ータベ−ス20にデータを登録するためのウィンドウ関
数や、リレ−ショナルデータベ−ス20のデータを検索
するためのウィンドウ関数や、リレ−ショナルデータベ
−スの構造を表示するためのウィンドウ関数を備えてい
る。前述したように、これらの子ウィンドウ関数は、メ
イン関数170から配送されたメッセージによって起
動、動作する。
In such a structure, the relational database program has a window function for controlling the main menu window as the parent window function 180. As the main child window function 190, a window function for defining the structure of the relational database, a window function for registering data in the relational database 20, and a relational database function. A window function for searching the data of the base 20 and a window function for displaying the structure of the relational database are provided. As described above, these child window functions are activated and operated by the message delivered from the main function 170.

【0034】いま、リレ−ショナルデータベ−ス20の
利用に着目すると、リレ−ショナルデータベ−ス20に
データを登録するためのデータ登録ウィンドウ関数50
1と、リレ−ショナルデータベ−スのデータを検索する
ためのウィンドウ関数502と、データベ−スの構造を
表示するための構造表示ウィンドウ関数503と、リレ
−ショナルデータベ−ス20によって図5に示すような
システムが構築されている。データ登録ウィンドウ関数
は、たとえば、データ登録用のウィンドウを表示し、そ
のウィンドウ内の操作に応じてデータベ−ス本体にデー
タを登録する。同様に、データ検索ウィンドウ関数は、
たとえば、データ検索用のウィンドウを表示し、そのウ
ィンドウ内の操作に応じて、ユ−ザから指定された条件
を満足するデータをデータベ−ス本体から検索し表示す
る。そして、構造表示ウィンドウ関数は、構造表示用の
ウィンドウを表示し、当該ウィンドウ内にデータベ−ス
本体の構造を表示する。
Now, focusing on the use of the relational database 20, a data registration window function 50 for registering data in the relational database 20.
5, a window function 502 for retrieving relational database data, a structure display window function 503 for displaying the structure of the database, and a relational database 20 as shown in FIG. Such a system is built. The data registration window function displays, for example, a data registration window and registers data in the database main body according to an operation in the window. Similarly, the data search window function is
For example, a data search window is displayed, and data satisfying the conditions specified by the user is searched from the database main body and displayed according to the operation in the window. Then, the structure display window function displays a structure display window and displays the structure of the database main body in the window.

【0035】本実施例では、後述するように、構造表示
ウィンドウ関数として、表形式表示ウィンドウ関数50
5と、グラフィック形式表示ウィンドウ関数506の2
種類を設けている。なお、表形式表示ウィンドウ関数5
05と、グラフィック形式表示ウィンドウ関数506
は、その処理に、テ−ブル504を用いる。
In the present embodiment, as will be described later, the tabular display window function 50 is used as the structure display window function.
5 and 2 of the graphic format display window function 506
There are different types. In addition, tabular display window function 5
05 and graphic format display window function 506
Uses the table 504 for its processing.

【0036】さて、図6(a)はクライアント機40の
電源をオンした直後にクライアント機50上に表示され
る画面であり、スクリーン200には、OS150によ
って本データベース・ソフトのアイコン210が表示さ
れている。この状態で、ユーザが、アイコン210をマ
ウスによりダブル・クリックすると、メイン関数170
が起動し、メイン関数170によって親ウィンドウ関数
180が起動される。この結果、ダブルクリックされた
アイコン210の表示は、親ウィンドウ関数180に対
応するメインメニュ−ウインドウ220の表示へと変化
する(同図(b))。
FIG. 6A shows a screen displayed on the client machine 50 immediately after the power of the client machine 40 is turned on. On the screen 200, the OS 150 displays the database software icon 210. ing. In this state, when the user double-clicks the icon 210 with the mouse, the main function 170
Is started, and the parent window function 180 is started by the main function 170. As a result, the display of the icon 210 double-clicked changes to the display of the main menu window 220 corresponding to the parent window function 180 ((b) in the figure).

【0037】同図(b)において、ユーザが、メインメ
ニュ−ウインドウ220中のメニュー・バーを操作し、
メイン・メニュー「ファイル」のサブ・メニュー「開
く」を選択すると、同図(c)に示したように、親ウィ
ンドウ関数10は、ダイアログ・ボックス230を表示
して、複数存在するデータベースのうちで、どのデータ
ベースを開くのかを指定するようにユ−ザに要求する。
ユーザが、ダイアログ・ボックス230内に表示される
データベース・リストの中から、目的のデータベースを
マウス/キーボードで指定すると、同図(d)に示した
如く、親ウィンドウ関数10は、ダイアログ・ボックス
230の表示を閉じ、所定のメッセ−ジを送出し、デー
タベースへのアクセスを受け付けるための子ウィンドウ
関数190を起動する。
In FIG. 7B, the user operates the menu bar in the main menu window 220,
When the submenu "Open" of the main menu "File" is selected, the parent window function 10 displays the dialog box 230 as shown in FIG. , Ask the user to specify which database to open.
When the user designates the target database from the database list displayed in the dialog box 230 with the mouse / keyboard, the parent window function 10 displays the dialog box 230 as shown in FIG. Is closed, a predetermined message is sent, and a child window function 190 for accepting access to the database is activated.

【0038】この子ウィンドウ関数190は、子ウイン
ドウ240を表示する。このウィンドウのクライアント
・エリアには先に指定されたデータベースへのアクセス
のためのインタフェースが表示される。
This child window function 190 displays the child window 240. The client area of this window displays the interface for accessing the previously specified database.

【0039】ユーザはこのインタフェースを介して、必
要な作業を実施する。例えば、このインタフェースを用
いてデータベース内の特定のテーブルを開くように指示
された場合には、同図(e)に示したように、子ウイン
ドウ250が開かれ、指定したテーブルの各フィールド
の詳細構成、各フィールドに登録されているデータ、そ
の他を参照できるようになる。また、同様に、このイン
タフェースを介しておこなわれた作業に応じて、前述し
たリレ−ショナルデータベ−スの構造を定義するための
ウィンドウ関数や、リレ−ショナルデータベ−スにデー
タを登録するためのウィンドウ関数や、リレ−ショナル
データベ−スのデータを検索するためのウィンドウ関数
の子ウインドウが開かれ、リレ−ショナルデータベ−ス
の構造の定義やデータの登録やデータの検索を行うこと
ができる。
The user performs the necessary work through this interface. For example, when it is instructed to open a specific table in the database using this interface, the child window 250 is opened and details of each field of the specified table are displayed, as shown in FIG. You can refer to the configuration, data registered in each field, and so on. Similarly, according to the work performed through this interface, the window function for defining the structure of the relational database described above and the data for registering the data in the relational database are registered. A child window of a window function or a window function for retrieving relational database data is opened, and the relational database structure can be defined, data can be registered, and data can be retrieved.

【0040】また、同様に、このインタフェースを介し
て、データベース構造の問い合わせをユーザが要求する
と、前述した構造表示ウィンドウ関数の一つである表形
式表示ウィンドウ関数505が起動する。この表形式表
示ウィンドウ関数505は、子ウインドウ260を表示
し、そのクライアント・エリアに、指定されたデータベ
ースの構造を表形式で表示する。
Similarly, when the user requests an inquiry about the database structure via this interface, the table display window function 505, which is one of the structure display window functions described above, is activated. This tabular display window function 505 displays the child window 260 and displays the structure of the specified database in the tabular format in its client area.

【0041】ユーザはこれによって、データベースの概
略構造を把握できる。
The user can grasp the general structure of the database by this.

【0042】また、ユ−ザは、さらに詳細な内容を参照
したい時、このウインドウ260上で、目的のテーブル
をマウスでダブル・クリックする。
When the user wants to refer to more detailed contents, he double-clicks the target table on the window 260 with the mouse.

【0043】そうすると、表形式表示ウィンドウ関数5
05は終了しウインドウ260は表示されなくなりると
共に、前述した構造表示ウィンドウ関数の一つであるグ
ラフィック形式表示ウィンドウ関数506が起動する。
このグラフィック表示ウィンドウ関数は、子ウインドウ
270を表示し、そのクライアント・エリアに、先に指
定されたテーブルを含むデータベースの詳細な構造をグ
ラフィック形式で表示する。
Then, the tabular display window function 5
05 ends and the window 260 is not displayed, and the graphic format display window function 506, which is one of the structure display window functions described above, is activated.
This graphic display window function displays the child window 270 and, in its client area, the detailed structure of the database, including the previously specified tables, in graphic form.

【0044】ユーザはこれを参照して各テーブルのフィ
ールド構成、フィールド間のリレーション等を把握する
ことができる。
The user can grasp the field structure of each table, the relation between the fields, etc. by referring to this.

【0045】上記表形式表示部は、図5(d)のデータ
ベース・ウインドウ240を用いてデータベース構造の
表形式表示をユーザが要求した時、データベース構造を
整理し、その結果を図7(a)の構造図表形式表示ウイ
ンドウ260に表形式で表示する。
When the user requests the tabular display of the database structure by using the database window 240 of FIG. 5D, the tabular display section arranges the database structure, and the result is shown in FIG. 7A. The structure diagram is displayed in a table format in the display window 260.

【0046】また、上記グラフィック形式表示部は、上
記ウインドウ260上で、目的のテーブルを指定した
時、そのテーブルを含むデータベースの詳細な構造を整
理し、その結果を図7(b)の構造図グラフィック形式
表示ウインドウ270にグラフィック形式で表示する。
Further, when the target table is designated on the window 260, the graphic format display unit arranges the detailed structure of the database including the table, and the result is shown in the structure diagram of FIG. 7 (b). A graphic format is displayed in the graphic format display window 270.

【0047】ここで、本実施例に係るリレ−ショナルデ
ータベ−ス20内におけるリレ−ション(関係)につい
て説明する。
Now, the relation (relationship) in the relational database 20 according to this embodiment will be described.

【0048】本実施例に係るリレ−ショナルデータベ−
ス20においては、ある1つのテ−ブルと他のある1つ
のテ−ブルとの間では、1つのフィ−ルド同士のみがリ
レ−ションを持つことができる。すなわち、テ−ブルA
のフィ−ルドaとテ−ブルBのフィ−ルドbの間にリレ
−ションがある場合、テ−ブルAのフィ−ルドとテ−ブ
ルBのフィ−ルドとの間に、これ以外のリレ−ションは
存在し得ない。
Relational database according to the present embodiment
In the field 20, between one certain table and another certain table, only one field can have a relation. That is, table A
If there is a relation between the field a of the table A and the field b of the table B, other than that between the field of the table A and the field of the table B. There can be no relation.

【0049】また、フィ−ルドとフィ−ルドとの間のリ
レ−ションとしては、1対1のリレ−ションと1対多の
リレ−ションの2種類が存在する。
There are two types of relations between fields, one-to-one relations and one-to-many relations.

【0050】テ−ブルAとテ−ブルBが、それぞれフィ
−ルドaa(主キ−)を持ち、このテ−ブルAの各レコ
−ドが、テ−ブルBの各レコ−ドとフィ−ルドaa(主
キ−)の値に関して1対1に対応する場合、このテ−ブ
ルAのフィ−ルドaaとテ−ブルBのフィ−ルドaaは
1対1のリレ−ションを持つ。ただし、ここでは、フィ
−ルドaa(主キ−)の値が同じである場合に、フィ−
ルドaa(主キ−)の値に関して2つのレコ−ドは対応
するものとしている。なお、1つのテ−ブル内において
各レコ−ドは主キ−のフィ−ルドの値として一意の値を
持つ。逆にいえば、主キ−のフィ−ルドの値は、1つの
テ−ブル内においてレコ−ドを一意に特定する。
Each of the table A and the table B has a field aa (main key), and each record of the table A is associated with each record and the field of the table B. In the case where there is a one-to-one correspondence with respect to the value of the field aa (main key), the field aa of the table A and the field aa of the table B have a one-to-one relation. However, here, if the values of the field aa (main key) are the same, the fields are
The two records correspond to the value of the field aa (main key). Each record in a table has a unique value as the value of the field of the main key. Conversely, the value of the field of the main key uniquely identifies the record within one table.

【0051】たとえば、フィ−ルド”社員コ−ド”とフ
ィ−ルド”社員名”とフィ−ルド”電話番号”を持つテ
−ブルを分割して、フィ−ルド”社員コ−ド”とフィ−
ルド”社員名”よりなるテ−ブルAと、フィ−ルド”社
員コ−ド”とフィ−ルド”電話番号”よりなるテ−ブル
Bを作成した場合を考えると、このテ−ブルAとテ−ブ
ルBの各レコ−ドはフィ−ルド”社員コード”に関して
1対1に対応するので、テ−ブルAのフィ−ルド”社員
コ−ド”と、テ−ブルBのフィ−ルド”社員コ−ド”は
1対1のリレ−ションを持つ。
For example, a table having a field "employee code", a field "employee name", and a field "telephone number" is divided into field "employee code". Fee
Considering the case where a table A consisting of a field "employee name" and a table B consisting of a field "employee code" and a field "phone number" are created, this table A Since each record of table B corresponds to the field "employee code" on a one-to-one basis, table A's field "employee code" and table B's field "Employee code" has a one-to-one relation.

【0052】また、本実施例では、あるテ−ブルAのフ
ィ−ルドと、他のあるテ−ブルBのフィ−ルドが1対1
に対応している場合テ−ブルAとテ−ブルBは1対1に
対応していると呼ぶこととする。
In this embodiment, the field of a certain table A and the field of another table B are one-to-one.
Table A and table B correspond to one-to-one correspondence.

【0053】次に、テ−ブルAがフィ−ルドaa(主キ
−)を持ち、テ−ブルBがフィ−ルドaaを主キ−以外
の外部キ−として持つ場合、テ−ブルAのフィ−ルドa
aとテ−ブルBのフィ−ルドaaは1対多に対応すると
いう。たとえば、フィ−ルド”部”を主キ−として、そ
の他のフィ−ルドとしてフィ−ルド”所在地”等をもつ
テ−ブル”部リスト”と、フィ−ルド”社員番号”を主
キ−として持ち、その他のフィ−ルド”社員名”、”
部”を持つテ−ブル”社員リスト”が存在する場合、テ
−ブル”部リスト”のフィ−ルド”部”と、テ−ブル”
社員リスト”のフィ−ルド”部”は1対多に対応する。
なぜならば、フィ−ルド”部”として値”経理”を持つ
テ−ブル”部リスト”のレコ−ドは必ず一つであるが、
フィ−ルド”部”として値”経理”を持つテ−ブル”社
員リスト”のレコ−ドは複数存在し得るからである。こ
の例では、テ−ブル”部リスト”のフィ−ルド”部”が
1対多の1側であり、テ−ブル”社員リスト”のフィ−
ルド”部”が多側である。
Next, when the table A has the field aa (main key) and the table B has the field aa as an external key other than the main key, the table A Field a
It is said that a and the field aa of the table B correspond one-to-many. For example, the field "part" is the main key, the table "part list" having the field "location" etc. as the other fields, and the field "employee number" is the main key. Owned, other fields "employee name", "
If there is a table "employee list" that has a department "," the field "part" of the table "part list" and the table "table"
The field "part" of the employee list corresponds to one to many.
Because there is always one record in the table "part list" which has the value "accounting" as the field "part",
This is because there can be a plurality of records in the table "employee list" having the value "accounting" as the field "section". In this example, the field "part" of the table "part list" is one-to-many one side, and the field of the table "employee list" is one side.
Rud "part" is multi-sided.

【0054】ここで、本実施例では1側のフィ−ルドを
多側のフィ−ルドに先行していると呼ぶ。また、逆に、
多側のフィ−ルドを1側のフィ−ルドに後続していると
呼ぶ。
Here, in this embodiment, the field on one side is called to precede the field on many sides. On the contrary,
The multi-sided field is called following the one-sided field.

【0055】また、あるテ−ブルAのフィ−ルドと、他
のあるテ−ブルBのフィ−ルドが1対多に対応している
場合、テ−ブルAとテ−ブルBは1対多に対応している
と呼ぶこととする。そして、前述した1対多対応の関係
において、1側のフィ−ルドを持つテ−ブルは多側のフ
ィ−ルドを持つテ−ブルに先行していると言い、多側の
フィ−ルドを持つテ−ブルは1側のフィ−ルドを持つテ
−ブルに後続していると言う。
Further, when the field of a certain table A and the field of another certain table B are in a one-to-many correspondence, the table A and the table B are in one pair. We call it multi-purpose. And, in the above-mentioned one-to-many correspondence, it is said that the table having the one-sided field precedes the table having the many-sided field. The table that it has is said to follow the table that has the field on the one side.

【0056】また、前述した1対1に対応しているフィ
−ルドの各々は、他方のフィ−ルドに対して先行したフ
ィ−ルドであり、かつ、後続したフィ−ルドであるもの
とする。また、同様に、前述した1対1に対応している
テ−ブルの各々は、他方のテ−ブルに対して先行したテ
−ブルであり、かつ、後続したテ−ブルであるものとす
るまた、以下の説明では、他のフィ−ルドとリレ−ショ
ンを持つフィ−ルドを固定フィ−ルドと呼び、他のフィ
−ルドとリレ−ションを持たないフィ−ルドを浮動フィ
−ルドと呼ぶこととする。
Further, each of the above-mentioned one-to-one corresponding fields is a field which precedes the other field and a field which follows the other field. . Similarly, each of the above-described one-to-one correspondence tables is a table that precedes the other table and a table that follows the other table. Further, in the following description, a field having another field and a relation is called a fixed field, and a field having no other field and a relation is called a floating field. I will call it.

【0057】なお、前述した1対1の対応、1対多の対
応については、前述したJohn L.Viescas著:Window
s版 Microsoft Access 1.1 オフィシャルガイド4,
アスキー(1994.7)"等に詳しい。
Regarding the one-to-one correspondence and the one-to-many correspondence described above, by John L. Viescas mentioned above: Window
s Version Microsoft Acccess 1.1 Official Guide 4,
Detailed in "Ascii (1994.7)" etc.

【0058】以下、本実施例の特徴である表形式表示ウ
ィンドウ関数505と、グラフィック形式表示ウィンド
ウ関数506の詳細について説明する。
Details of the table format display window function 505 and the graphic format display window function 506, which are the features of this embodiment, will be described below.

【0059】まず、あらかじめ表形式表示ウィンドウ関
数505が、その処理に用いるテ−ブルの構成について
説明しておく。
First, the structure of the table used by the tabular display window function 505 for its processing will be described in advance.

【0060】このようなテ−ブルとしては、テーブル/
フィールド属性テーブル340、テーブル管理テーブル
-A350、テーブル順序テーブル360、層別テーブ
ル管理テーブル370、テーブル管理テーブル-B38
0を設ける。
As such a table, a table /
Field attribute table 340, table management table
-A350, table order table 360, stratified table management table 370, table management table-B38
0 is set.

【0061】図8、図9に、テーブル/フィールド属性
テーブル340の構成を示す。
8 and 9 show the structure of the table / field attribute table 340.

【0062】本テーブルはテーブル属性テーブルとフィ
ールド属性テーブルの二つより成る。 図8は、そのう
ちのテーブル属性テーブルの構成を示したものである。
This table is composed of two tables, a table attribute table and a field attribute table. FIG. 8 shows the structure of the table attribute table.

【0063】テーブル属性テーブルは、同図(a)の管
理データ、同図(b)のテ−ブルリスト、同図(c)の
先行/後続テ−ブルリスト、同図(d)のフィ−ルド順
序リスト−A、同図(e)のフィ−ルド順序リスト−B
より成る。同図(d)のフィ−ルド順序リスト−A、同
図(e)のフィ−ルド順序リスト−Bはリレ−ショナル
データベ−ス20を構成する各テ−ブル毎に設けられ
る。また、同図(d)のフィ−ルド順序リスト−Aは、
固定フィ−ルドと浮動フィ−ルドのそれぞれについて設
けられる。同図(c)の先行/後続テ−ブルリストは、
各テ−ブル毎に先行テ−ブルと後続テ−ブルのそれぞれ
について1つずつ設けられる。
The table attribute table includes the management data shown in FIG. 9A, the table list shown in FIG. 9B, the preceding / successive table list shown in FIG. Field order list-A, field order list-B in FIG.
Consists of The field order list-A shown in FIG. 7D and the field order list-B shown in FIG. 8E are provided for each table constituting the relational database 20. The field order list-A in FIG.
It is provided for each of the fixed field and the floating field. The preceding / successive table list in FIG.
One is provided for each of the preceding table and the subsequent table for each table.

【0064】管理データとしては、同図(a)の構成に
より、データベースに含まれる複数のテーブルの総数
と、同図(b)に示したテーブル・リストの位置を示す
エントリ行No.を保持する。
As the management data, the configuration shown in FIG. 11A holds the total number of a plurality of tables included in the database and the entry row No. indicating the position of the table list shown in FIG. .

【0065】テ−ブルリストは、同図(b)の構成によ
り、各テーブル毎に、テーブル名、先行テーブル総数、
対応するテ−ブルの先行テ−ブルについての先行/後続
テーブル・リストの位置をエントリ行No.、後続テーブ
ル総数、対応するテ−ブルの後続テ−ブルについての先
行/後続テーブル・リストの位置を示すエントリ行N
o.、固定フィールド総数、対応するテ−ブルについての
フィールド順序リスト-Aの位置を示すエントリ行N
o.、対応するテ−ブルについてのフィールド順序リスト
-Bの位置を示すエントリ行No.、浮動フィールド総
数、対応するテ−ブルについてのフィールド順序リスト
-Aの位置を示すエントリ行No.、表示様式グレード値
(FULL、HALF、NON)、テーブル表示様式、
浮動フィールド表示フィールド数、テーブル表示位置
(横、縦)を保持する。
The table list has the table name, the total number of preceding tables, and the
The position of the preceding / succeeding table list for the preceding table of the corresponding table is set to the entry row No., the total number of succeeding tables, and the position of the preceding / succeeding table list for the succeeding table of the corresponding table. Entry line N indicating
o., total number of fixed fields, field order list for corresponding table-entry row N indicating position of A
o., field ordered list for the corresponding table
-Entry row No. indicating B position, total number of floating fields, field order list for corresponding table
-Entry line No. indicating the position of A, display style grade value (FULL, HALF, NON), table display style,
Holds the number of floating field display fields and the table display position (horizontal, vertical).

【0066】また、先行/後続テーブル・リストは同図
(c)に示す構成により、各テーブルの先行/後続テー
ブルのテーブルNo.と、1対多か1対1かのリレーショ
ン種別を保持する。
The preceding / succeeding table list holds the table No. of the preceding / succeeding table of each table and the relation type of one-to-many or one-to-one with the configuration shown in FIG.

【0067】また、フィールド順序リスト-Aは、同図
(d)に示す構成により、対応するテ−ブルに含まれる
複数の固定フィールドもしくは浮動フィールドのフィー
ルドNo.を保持する。
Further, the field order list-A has the field No. of a plurality of fixed fields or floating fields included in the corresponding table by the structure shown in FIG.

【0068】また、フィールド順序リスト-Bは、同図
(e)に示す構成により、対応するテーブルの複数の固
定フィールドのフィールドNo.を保持する。
The field order list-B holds the fields No. of a plurality of fixed fields in the corresponding table with the configuration shown in FIG.

【0069】次に、図9に、テーブル/フィールド属性
テーブル340のうちのフィールド属性テーブルの構成
を示す。
Next, FIG. 9 shows the structure of the field attribute table of the table / field attribute table 340.

【0070】本テ−ブルは、同図(a)の管理データ、
同図(b)のフィ−ルドリスト、同図(c)の先行/後
続フィ−ルドリストより成る。同図(c)の先行/後続
フィ−ルドリストは、フィ−ルド毎に先行フィ−ルドと
後続フィ−ルドのそれぞれについて設ける。
This table includes the management data shown in FIG.
It is composed of the field list shown in FIG. 9B and the preceding / succeeding field list shown in FIG. The preceding / succeeding field list of FIG. 7C is provided for each of the preceding and succeeding fields for each field.

【0071】同図(a)の管理データとしては、図示す
るように、データベースに存在するフィールドの総数
と、同図(b)に示したフィールド・リストの位置を示
すエントリ行No.を保持する。
As the management data of FIG. 9A, as shown in the figure, the total number of fields existing in the database and the entry row No. indicating the position of the field list shown in FIG. .

【0072】また、フィ−ルドリストは同図(b)の構
成により、各フィールド毎に、フィールド名、所属テー
ブルNo.、テーブル内配置順序、先行フィールド総数、
対応するフィ−ルドの先行フィ−ルドについての先行/
後続フィールド・リストの位置を示すエントリ行No.、
後続フィールド総数、対応するフィ−ルドの後続フィ−
ルドについての先行/後続フィールド・リストの位置を
示すエントリ行No.を保持する。
Further, the field list has the field name, the belonging table No., the arrangement order in the table, the total number of the preceding fields, for each field, by the structure of FIG.
Preceding / preceding field of the corresponding field /
Entry line No. indicating the position of the subsequent field list,
Total number of trailing fields, trailing field of the corresponding field
Holds an entry row No. indicating the position of the leading / successive field list for the field.

【0073】また、先行/後続フィールド・リストは同
図(c)の構成により、各フィールドの先行/後続フィ
ールドのフィールドNo.、このフィールドとの間のリレ
ーションを矢印で表示するか否か(矢頭と矢尾間の結合
線を表示するか否か)のリレーション表示可否フラグを
保持する。
In the preceding / succeeding field list, the field No. of the preceding / succeeding field of each field and the relation between this field and the field are displayed by arrows according to the structure of FIG. And whether or not to display the connection line between the arrow and Yao).

【0074】次に、図10に、テーブル管理テーブル-
A350の構成を示す。
Next, FIG. 10 shows a table management table-
The structure of A350 is shown.

【0075】図示するようにテーブル管理テーブル-A
350は、同図(a)に示す管理データ、同図(b)に
示すデータベ−スリスト、同図(c)に示すテ−ブル順
序リスト−Aより成る。同図(c)に示すテ−ブル順序
リスト−Aは、データベ−ス毎に設ける。
As shown, the table management table-A
Reference numeral 350 includes the management data shown in FIG. 9A, the database list shown in FIG. 7B, and the table order list-A shown in FIG. The table order list-A shown in FIG. 7C is provided for each database.

【0076】管理データとしては、同図(a)に示すよ
うに、相互にリレーションのないデータベースの総数
と、同図(b)に示したデータベース・リスト-Aの位
置を示すエントリ行No.を保持する。
As the management data, as shown in FIG. 11A, the total number of databases having no relation to each other and the entry line No. showing the position of the database list-A shown in FIG. Hold.

【0077】また、データベース・リスト-Aは、同図
(b)に示すように、各データベース毎に、データベ−
スに含まれるテーブルのテーブル総数、対応するデータ
ベ−スのテーブル順序リスト-Aへのエントリ行No.を
保持する。
The database list-A, as shown in FIG. 7B, is a database list for each database.
The table stores the total number of tables included in the table and the entry row No. to the table order list-A of the corresponding database.

【0078】また、同図(c)により、各データベース
に含まれる複数のテーブルのテーブルNo.を保持する。
Further, as shown in FIG. 9C, the table No. of a plurality of tables included in each database is held.

【0079】次に、図11に、テーブル管理テーブル-
Bの構成を示す。
Next, FIG. 11 shows a table management table-
The structure of B is shown.

【0080】図示するように、本テ−ブルは、同図
(a)に示す管理データと、同図(b)に示すデータベ
−スリスト−Bと、同図(c)に示す層リスト−Bと、
同図(d)に示すテ−ブル順序リスト−Bより成る。同
図(c)に示す層リスト−Bは相互にリレーションのな
いデータベース毎に設ける。また、同図(d)に示すテ
−ブル順序リスト−Bは、リレーションのないデータベ
ース各々の層毎に設ける。
As shown in the figure, this table has the management data shown in FIG. 9A, the database list B shown in FIG. 9B, and the layer list B shown in FIG. When,
It is composed of a table order list-B shown in FIG. The layer list-B shown in FIG. 7C is provided for each database having no relation with each other. Further, the table order list-B shown in FIG. 9D is provided for each layer of each database having no relation.

【0081】同図(a)に示すように、管理データとし
ては、相互にリレーションのないデータベースの総数
と、データベース・リスト-Bの位置を示すエントリ行
No.を保持する。
As shown in FIG. 9A, as the management data, the total number of databases having no relation to each other and the entry row No. indicating the position of the database list-B are held.

【0082】また、データベ−スリスト−Bは、同図
(b)に示すように、相互にリレーションのないデータ
ベ−ス毎に、データベースを構成する層の総数、対応す
るデータベ−スの層リスト-Bの位置を示すエントリ行
No.、ウインドウ・サイズ、データベース配置領域のサ
イズ(横、縦)を保持する。
The database list B is, as shown in FIG. 6B, the total number of layers constituting the database and the layer list of the corresponding database for each database having no relation with each other. The entry row No. indicating the position of B, the window size, and the size (horizontal, vertical) of the database arrangement area are held.

【0083】また、同図(c)に示すように、層リスト
−Bは、対応するデータベースを構成する各層の層内に
存在するテーブルのテーブル総数、対応する層について
のテーブル順序リスト-Bの位置を示すエントリ行No.
を保持する。
Further, as shown in FIG. 10C, the layer list-B is the total number of tables existing in the layer of each layer constituting the corresponding database, and the table order list-B of the corresponding layer. Entry line No. indicating position
Hold.

【0084】また、テ−ブル順序リスト−Bは、同図
(d)に示すように、対応するデータベースの対応する
層内に存在する各テーブルのテーブルNo.を保持する。
The table order list-B holds the table No. of each table existing in the corresponding layer of the corresponding database, as shown in FIG.

【0085】次に、図12に、テーブル順序テーブル3
60の構成を示す。
Next, FIG. 12 shows the table order table 3
The structure of 60 is shown.

【0086】図示するように、本テ−ブルは、データベ
ースに含まれる複数のテーブルの一次元的な整列順序に
従ってテーブルNo.で保持する。
As shown in the figure, this table holds the table No. in accordance with the one-dimensional arrangement order of the plurality of tables included in the database.

【0087】次に、図13に、層別テーブル管理テーブ
ル370の構成を示す。
Next, FIG. 13 shows the structure of the stratified table management table 370.

【0088】本テ−ブルは、相互にリレーションのない
データベース毎に作成される。また、本テ−ブルは、同
図(a)に示す管理データと、同図(b)に示す層リス
ト−Bと、同図(c)に示すテ−ブル順序リスト−Cよ
り成る。テ−ブル順序リスト−Cは、各層毎に設けられ
る。
This table is created for each database having no relation to each other. The table is composed of the management data shown in FIG. 9A, the layer list-B shown in FIG. 7B, and the table order list-C shown in FIG. The table order list-C is provided for each layer.

【0089】同図(a)に示すように、管理データとし
ては、対応するデータベースを構成する複数の層の総
数、対応するデータベ−スの層リスト-Cの位置を示す
エントリ行No.を保持する。
As shown in FIG. 9A, as the management data, the total number of a plurality of layers forming the corresponding database and the entry row No. indicating the position of the layer list-C of the corresponding database are held. To do.

【0090】また、同図(b)に示すように、層リスト
−Cは、対応するデータベースを構成する各層毎に、層
内に存在する複数テーブルの総数、対応する層について
のテーブル順序リスト-Cの位置を示すエントリ行No.
を保持する。
Further, as shown in FIG. 10B, the layer list-C is, for each layer constituting the corresponding database, the total number of plural tables existing in the layer and the table order list for the corresponding layer. Entry line No. indicating the position of C
Hold.

【0091】また、同図(c)に示すようにテ−ブル順
序リスト−Bは、対応する層内に存在する各テーブルの
テーブルNo.を保持する。
Further, as shown in FIG. 9C, the table order list-B holds the table No. of each table existing in the corresponding layer.

【0092】以上、表形式表示ウィンドウ関数505
が、その処理に用いるテ−ブルについて説明した。
The table format display window function 505 has been described above.
Explained the table used for the processing.

【0093】以下、表形式表示ウィンドウ関数505の
行う処理の内容について説明する。
The contents of the processing performed by the tabular display window function 505 will be described below.

【0094】図14は、前述した各テ−ブルと、表形式
表示ウィンドウ関数505の行う、表形式表示全体制御
処理330、テ−ブル作成処理3000、データベ−ス
分離処理280、テーブル順序付け処理290、テーブ
ル層分類処理300、層内テーブル順序付け処理31
0、データベース構造表形式表示320の各処理と、前
述したテ−ブル処理の関係を示したものである。
FIG. 14 is a table format display overall control process 330, a table creation process 3000, a database separation process 280, and a table ordering process 290, which are performed by the tables and the table format display window function 505. , Table layer classification processing 300, in-layer table ordering processing 31
0 shows the relationship between each processing of the database structure table format display 320 and the above-mentioned table processing.

【0095】ここで、表形式表示全体制御処理330
は、他の処理の実行を図15に示す手順で制御する。
Here, the tabular display overall control process 330 is performed.
Controls the execution of other processing in the procedure shown in FIG.

【0096】すなわち、まず、テ−ブル作成処理300
0を起動し(ステップ5)、テ−ブル/フィ−ルド属性
テ−ブル340を作成する。次に、ステップ10でデー
タベース分離処理280を起動して、異なるデータベ−
スに属するテ−ブル間にリレ−ションが無くなるよう
に、リレ−ショナルデータベ−ス20を複数のデータベ
−スに分離する。本明細書では、このようにして分離さ
れた各データベ−スを相互にリレ−ションの無いデータ
ベ−スと呼んでいる。
That is, first, the table creation processing 300
0 is started (step 5), and the table / field attribute table 340 is created. Next, in step 10, the database separation processing 280 is started to execute different database processing.
The relational data base 20 is separated into a plurality of data bases so that there is no relation between the tables belonging to the data bases. In this specification, each of the databases thus separated is referred to as a database having no relation to each other.

【0097】そして、ステップ20〜60で、ステップ
10で分離した各データベースにつき、構造化が必要な
(複数のテーブルを含んだ)データベースを対象に、テ
ーブル順序付け処理290、テーブル層分類処理30
0、層内テーブル順序付け処理310を起動して、その
構造化を行い、ステップ70でデータベース構造表形式
表示320を起動して、上記構造化処理の結果を表形式
で表示する。
Then, in steps 20 to 60, for each of the databases separated in step 10, a table ordering process 290 and a table layer classification process 30 are applied to the databases (including a plurality of tables) that need to be structured.
0, the in-layer table ordering process 310 is activated to perform structuring, and the database structure table format display 320 is activated in step 70 to display the result of the structuring process in a table format.

【0098】以下、個々の処理の詳細について説明す
る。
The details of each processing will be described below.

【0099】まず、テ−ブル作成処理3000について
説明する。
First, the table creating process 3000 will be described.

【0100】この処理は、リレ−ショナルデータベ−ス
20を解析し、テ−ブル/フィ−ルド属性テ−ブル34
0を作成する処理である。
In this processing, the relational database 20 is analyzed and the table / field attribute table 34 is analyzed.
This is a process of creating 0.

【0101】この処理では、図8(a)の管理データと
して、リレ−ショナルデータベース20に含まれるテー
ブルの総数を記述し、同図bのテ−ブルリストを作成
し、その位置を表すエントリ行No.を記述する。
In this process, the total number of tables included in the relational database 20 is described as the management data of FIG. 8A, the table list of FIG. 8B is created, and the entry line indicating the position is written. No. Describe.

【0102】また、同図(b)のテ−ブルリストの作成
においては、リレ−ショナルデータベース20に含まれ
る各テーブルについて、順次、図8(b)のテ−ブルリ
ストのテーブル名にテ−ブル名を記述し、先行テーブル
総数に、そのテ−ブルに先行するテ−ブルの総数を記述
し、そのテ−ブルに先行するテ−ブルを記述するための
先行/後続テ−ブルリスト(同図c)を作成し、その位
置を表すエントリ行No.を記述し、後続テーブル総数
に、そのテ−ブルに後続するテ−ブルの総数を記述し、
そのテ−ブルに後続するテ−ブルを記述するための先行
/後続テ−ブルリスト(同図c)を作成し、その位置を
表すエントリ行No.を記述し、固定フィ−ルド総数
に、そのテ−ブルに含まれる固定フイ−ルドの総数を記
述し、固定フィ−ルドについてのフィ−ルド順序リスト
−A(同図d)を作成し、その位置を表すエントリ行N
o.を記述し、浮動フィ−ルド総数に、そのテ−ブルに
含まれる浮動フィ−ルドの総数を記述し、浮動フィ−ル
ドについてのフィ−ルド順序リスト−A(同図d)を作
成し、その位置を表すエントリ行No.を記述する。図
8(b)のテ−ブルリストの他のフィ−ルドは、この時
点では、その領域のみが確保される。
In creating the table list of FIG. 8B, the table names of the tables included in the relational database 20 are sequentially added to the table names of the table of FIG. 8B. Table name for describing the table name, describing the total number of tables preceding the table in the total number of preceding tables, and describing the preceding / succeeding table list for describing the table preceding the table ( In the same figure c), the entry line No. indicating the position is created. , And describe the total number of subsequent tables in the total number of subsequent tables,
A preceding / succeeding table list (c in the figure) for describing a table following the table is created, and an entry line No. , The total number of fixed fields contained in the table is described in the total number of fixed fields, and the field order list-A (FIG. 4D) for the fixed fields is created. Entry line N that represents the position
o. , The total number of floating fields included in the table is described in the total number of floating fields, and a field order list-A (FIG. 4D) for the floating fields is created. Entry line number indicating the position Describe. As for the other fields in the table list of FIG. 8B, only that area is secured at this point.

【0103】次に、同図(c)の先行/後続テ−ブルリ
ストの作成においては、その先行/後続テ−ブルリスト
に対応するテ−ブルに先行もしくは後続するテ−ブルを
特定するテ−ブルNoと、対応するテ−ブルとテ−ブル
Noで特定されるテ−ブルとの間のリレ−ションが1対
1か1対多のいずれであるかを示すリレ−ション種別を
記述する。
Next, in the preparation of the preceding / successive table list of FIG. 10C, the table which precedes or follows the table corresponding to the preceding / successive table list is specified. -Description of the relation type indicating whether the relation between the table No. and the table specified by the table No. is one-to-one or one-to-many. To do.

【0104】また、同図(d)のフィ−ルド順序リスト
−Aの作成においては、そのフィ−ルド順序リスト−A
に対応するテ−ブルに含まれる固定もしくは浮動フィ−
ルドを特定するフィ−ルドNo.を記述する。
In the creation of the field order list-A shown in FIG. 9D, the field order list-A is created.
Fixed or floating file included in the table corresponding to
Field No. that specifies the field. Describe.

【0105】なお、この時点では、同図(e)のフィ−
ルド順序リスト−Bは作成されない。
At this point, the field shown in FIG.
The ordered list-B is not created.

【0106】また、このテ−ブル作成処理3000で
は、図9(a)の管理データとして、リレ−ショナルデ
ータベース20に含まれるフィールドの総数を記述し、
同図(b)のフィ−ルドリストを作成し、その位置を表
すエントリ行No.を記述する。
In the table creating process 3000, the total number of fields included in the relational database 20 is described as the management data of FIG.
The field list shown in FIG. 9B is created, and the entry line No. Describe.

【0107】また、同図(b)のフィ−ルドリストの作
成においては、リレ−ショナルデータベース20に含ま
れるフィールド毎に、順次、そのフィ−ルドのフィール
ド名を記述し、そのフィ−ルドの属するテ−ブルを特定
する所属テーブルNo.を記述し、そのフィ−ルドに先行
するフィ−ルドの総数を表す先行フィールド総数を記述
し、そのテ−ブルに後続するテ−ブルを記述するための
先行/後続フィ−ルドリスト(同図c)を作成し、その
位置を表すエントリ行No.を記述し、そのフィ−ルド
に後続するフィ−ルドの総数を表す後続フィールド総数
を記述し、そのテ−ブルに後続するテ−ブルを記述する
ための先行/後続フィ−ルドリスト(同図c)を作成
し、その位置を表すエントリ行No.を記述する。
In the creation of the field list shown in FIG. 10B, the field name of the field is sequentially described for each field included in the relational database 20, and the field belongs. To describe the belonging table No. that specifies a table, describe the total number of preceding fields that represent the total number of fields that precede the field, and describe the table that follows the table. A preceding / succeeding field list (c in the same figure) is created, and the entry line No. indicating the position is set. , The following field total number indicating the total number of fields following the field, and the preceding / succeeding field list for describing the table following the table (see FIG. ) Is created and the entry line No. indicating the position is created. Describe.

【0108】図9(b)のフィ−ルドリストのテ−ブル
内フィ−ルド順序は、この時点では、その領域のみが確
保される。
In the field order in the table of the field list in FIG. 9B, only that area is secured at this point.

【0109】また、同図(c)の先行/後続フィールド
・リストの作成においては、対応するフィールドに先行
もしくは後続するフィ−ルドを特定するフィールドNo.
を記述する。リレ−ション表示可否フラグは、この時点
では領域のみが確保される。
In the preparation of the preceding / succeeding field list shown in FIG. 13C, the field No. for specifying the field preceding or succeeding the corresponding field is selected.
Describe. As for the relation display enable / disable flag, only the area is secured at this point.

【0110】以上、テ−ブル作成処理300について説
明したが、この処理は必ずしも表形式表示ウィンドウ関
数505の一部として行う必要はなく、以下に説明する
各処理に先立ち行われておればよい。
Although the table creating process 300 has been described above, this process need not necessarily be performed as a part of the tabular display window function 505, and may be performed prior to each process described below.

【0111】次に、データベース分離処理280の詳細
について説明する。
Next, details of the database separation processing 280 will be described.

【0112】この処理では、異なるデータベ−スに属す
るテ−ブル間にリレ−ショナルが無くなるように、リレ
−ショナルデータベ−ス20を複数のデータベ−スに分
離する。すなわち、リレ−ショナルデータベ−ス20
を、相互にリレーションのない複数のデータベースに分
離する。
In this process, the relational data base 20 is separated into a plurality of data bases so that the relational data is eliminated between the tables belonging to different data bases. That is, the relational database 20
Is separated into multiple databases that are not related to each other.

【0113】その処理例を図16に示す。FIG. 16 shows an example of the processing.

【0114】同図(a)は、分離処理前のデータベース
構造、同図(b)、(c)、(d)は、分離処理後のデ
ータベース構造である。矩形はテーブルを(矩形内はテ
ーブルNo.)、矩形間の矢印はテーブル間の1対多のリ
レーションを表している。矢印の矢尾に位置するテーブ
ルが1側、矢頭に位置するテーブルが多側である。
FIG. 13A shows the database structure before the separation processing, and FIGS. 13B, 13C and 13D show the database structure after the separation processing. A rectangle represents a table (a table No. in the rectangle), and an arrow between the rectangles represents a one-to-many relation between the tables. The table located in the arrow tail is one side, and the table located in the arrow head is multi-sided.

【0115】また、同図(a)において、テーブル-1
とテーブル-5は1対多のリレーションで結合されてお
り、図中では、この1対1のリレーションを、テーブル
間を双方向に矢印で結合して表している。
Further, in the same figure (a), Table-1
And Table-5 are connected by a one-to-many relation, and in the figure, this one-to-one relation is represented by connecting the tables in two directions with arrows.

【0116】さて、同図(a)は、相互にリレーション
のない三つのデータベース構造(同図(b)、(c)、
(d))の集合体である。本分離処理では、この同図
(a)を分離して、同図(b)、(c)、(d)を得る
処理を行う。
By the way, FIG. 10A shows three database structures having no relation to each other (FIGS. 8B and 8C).
It is an aggregate of (d)). In this separation process, the process shown in FIG. 14A is separated to obtain processes shown in FIGS.

【0117】その分離処理の手順を図17に示す。The procedure of the separation processing is shown in FIG.

【0118】図17(a)に示した正方マトリクスが図
16(a)に示した分離処理前のデータベースを記述し
ている。縦に配置した各テーブルが1側、横に配置した
各テーブルが多側のテーブルである。黒で示したマトリ
クス要素が、リレーションありを、白で示した要素がリ
レーションなしを示している。例えば、第1行第5列目
の黒要素は、テーブル-1とテーブル-5とが1対多(テ
ーブル-1が1側、テーブル-5が多側)のリレーション
を有していることを示す。また、1対1のリレーション
は、テーブル-5とテーブル-6のように、1対多のリレ
ーションを双方向に設定することにより示すこととして
いる。
The square matrix shown in FIG. 17 (a) describes the database before the separation process shown in FIG. 16 (a). Each vertically arranged table is one side, and each horizontally arranged table is a multi-sided table. The matrix elements shown in black show relations, and the elements shown in white show no relations. For example, the black element in the 1st row and the 5th column indicates that table-1 and table-5 have a one-to-many relationship (table-1 is one side, table-5 is many side). Show. The one-to-one relation is shown by setting the one-to-many relation bidirectionally as in Table-5 and Table-6.

【0119】このような正方マトリクスは、図8のテー
ブル属性テーブルの情報より作成することができる。
Such a square matrix can be created from the information in the table attribute table of FIG.

【0120】さて、本分離処理は、データベースに含ま
れるテーブルの数を基本とする逐次処理により行う。
Now, this separation processing is performed by sequential processing based on the number of tables included in the database.

【0121】すなわち、まずテーブル数が一個のデータ
ベースの分離可能性を調べる。例えば、テーブル-4が
分離可能か否かの判定は、図17の正方マトリクスの第
4行の対角要素を除くすべての要素が白で、かつ、第4
列の対角要素を除くすべての要素が白である時、分離可
能と判定できる。この判定をテーブル-1〜テーブル-1
0のすべてのテーブルにつき行う。図17(a)の例で
は、上記条件を満たすテーブルとしてテーブル-4が検
出されるので、これを分離する。図17(b)、(c)
に、この分離結果を示す。
That is, first, the separability of a database having one table is examined. For example, whether or not Table-4 is separable is determined by determining that all the elements except the diagonal elements in the fourth row of the square matrix of FIG.
When all the elements except the diagonal elements of the column are white, it can be determined that they are separable. This judgment is made in Table-1 to Table-1.
Do this for all 0 tables. In the example of FIG. 17A, table-4 is detected as the table satisfying the above condition, and therefore this is separated. 17 (b), (c)
The separation result is shown in FIG.

【0122】つぎに、テーブル数が二個のデータベース
の分離可能性を調べる。対象は、一個のデータベースに
ついての分離を行った後に残った図17(b)に示した
マトリクスである。まず、テーブルの可能なすべての組
み合わせを列挙し、その組み合わせの各々につき、その
分離可能性を調べる。例えば、テーブル-9とテーブル-
10で構成されるデータベースが分離可能か否かの判定
では、対象マトリクスにおいて、テーブル-9とテーブ
ル-10からテーブル-9’を合成する。
Next, the separability of a database having two tables will be examined. The target is the matrix shown in FIG. 17 (b) that remains after performing the separation for one database. First, it enumerates all possible combinations in the table and examines the separability of each of the combinations. For example, Table-9 and Table-
In the determination as to whether the database composed of 10 is separable, Table-9 and Table-9 'to Table-9' are combined in the target matrix.

【0123】その合成方法を図18に示す。同図(a)
は、図17(b)に示したマトリクスと同じものであ
る。図18(a)において、まず、第10行の各行要素
を、第9行の対応する列の行要素に重畳し、行9’を得
る(図18(b))。重畳の規則は、白要素と白要素が
重畳された場合は重畳後に白要素が得られるものとし、
それ以外は全て黒要素が得られるものとするそして、次
に、第10行をマトリクスから除去する(図18
(c))。
The synthesis method is shown in FIG. FIG.
Is the same as the matrix shown in FIG. In FIG. 18A, first, each row element of the 10th row is superimposed on the row element of the corresponding column of the 9th row to obtain row 9 ′ (FIG. 18B). The rule of superposition is that if a white element and a white element are superposed, a white element is obtained after the superposition,
Assume that all black elements are obtained except for that, and then, the tenth row is removed from the matrix (FIG. 18).
(C)).

【0124】列も同様に処理し、同図(e)を得る。The columns are processed in the same manner to obtain FIG.

【0125】図17(e)における合成テーブル-9’
の分離可能性の判定は、上記と同様にして行う。この結
果、図16(b)は、同図(d)、(e)に分離され
る。
Composition table-9 'in FIG. 17 (e).
The determination of the separability is performed in the same manner as above. As a result, FIG. 16B is separated into FIGS. 16D and 16E.

【0126】テーブル数が三個以上のデータベースの分
離可能性も、上記と同様にして調べる。
The possibility of separating a database having three or more tables is also examined in the same manner as above.

【0127】上記のような判定及び分離処理により、図
15(a)は、同図(b)、(c)、(d)に分離され
る。
By the determination and separation processing as described above, FIG. 15A is separated into FIG. 15B, FIG. 15C and FIG.

【0128】そして、分離が終了したならば、その結果
に従い図10のテーブル管理テーブル-A350を作成
する。
When the separation is completed, the table management table-A350 of FIG. 10 is created according to the result.

【0129】すなわち、まず、同図(a)の管理データ
を作成し、分離した相互にリレーションのないデータベ
ースの総数を記述し、同図(b)に示したデータベース
・リスト-Aを作成し、その位置を示すエントリ行No.
を記述する。
That is, first, the management data of the same figure (a) is created, the total number of separated databases having no relation to each other is described, and the database list-A shown in the same figure (b) is created. Entry line No. indicating the position
Describe.

【0130】また、同図(b)に示すデータベース・リ
スト-Aの作成においては、各データベース毎に、順
次、データベ−スに含まれるテーブルのテーブル総数を
記述し、図10(c)のテーブル順序リスト-Aを作成
し、その位置を示すエントリ行No.を記述する。
In the creation of the database list-A shown in FIG. 10B, the total number of tables included in the database is sequentially described for each database, and the table shown in FIG. An ordered list-A is created and an entry line No. indicating its position is described.

【0131】また、図10(c)に示すテ−ブル順序リ
ストには、対応するデータベースに含まれる複数のテー
ブルのテーブルNo.を任意の順序で記述する。
The table No. of a plurality of tables included in the corresponding database is described in an arbitrary order in the table order list shown in FIG.

【0132】次に、テーブルの順序付け処理290、テ
ーブルの層分類処理300、層内のテーブル順序付け処
理310について説明する。
Next, the table ordering process 290, the table layer classification process 300, and the in-layer table ordering process 310 will be described.

【0133】図15に示すように、これらの処理は、各
データベースに関して繰り返し行われる。
As shown in FIG. 15, these processes are repeated for each database.

【0134】すなわち、表形式表示全体制御330は、
分離された各データベ−スを順次処理対象とし(ステッ
プ20)、ステップ30で、対象データベースに含まれ
るテーブルの総数を参照し、それが二個以上の時、構造
化が必要と判定し、テーブルの順序付け処理290、テ
ーブルの層分類処理300、層内のテーブル順序付け処
理310を実行させデータベースを構造化する(ステッ
プ40〜60)。テーブルの総数が一個の時はテーブル
の順序付け処理290、テーブルの層分類処理300、
層内のテーブル順序付け処理310は行わない。
That is, the tabular display overall control 330
Each separated database is sequentially processed (step 20), the total number of tables included in the target database is referred to in step 30, and when there are two or more, it is determined that structuring is necessary, The ordering process 290, the table layer classification process 300, and the in-layer table ordering process 310 are executed to structure the database (steps 40 to 60). When the total number of tables is one, table ordering processing 290, table layer classification processing 300,
The in-tier table ordering process 310 is not performed.

【0135】ここで、テーブルの順序付け処理290、
テーブルの層分類処理300、層内のテーブル順序付け
処理310によるデータベ−スの構造化の処理例を図1
9に示しておく。図示した対象データベースは、先に分
離したデータベース(図16(b))、すなわちテ−ブ
ル管理テ−ブル−Aによって示されるデータベースの一
つである。
Here, the table ordering process 290,
FIG. 1 shows a processing example of structuring the database by the layer classification processing 300 of the table and the table ordering processing 310 within the layer.
It shows in 9. The target database shown in the figure is one of the databases shown in FIG. 16B, that is, the database previously separated, that is, the table management table-A.

【0136】上記テーブルの順序付け処理290で図1
9(a)を同図(b)とし、テーブルの層分類処理30
0で同図(b)を同図(c)とし、層内のテーブル順序
付け処理310で同図(c)を同図(d)とする。
The table ordering process 290 shown in FIG.
9 (a) is shown in FIG.
When 0, the same figure (b) is changed to the same figure (c), and in the table ordering process 310 within the layer, the same figure (c) is changed to the same figure (d).

【0137】以下、このような構造化を行うテーブルの
順序付け処理290、テーブルの層分類処理300、層
内のテーブル順序付け処理310について説明する。
The table ordering process 290, the table layer classification process 300, and the in-layer table ordering process 310 that perform such structuring will be described below.

【0138】まず、テーブルの順序付け処理290につ
いて説明する。
First, the table ordering process 290 will be described.

【0139】さて、先に図16等に示したように、テ−
ブルを矩形によって、テーブル間の1対多のリレーショ
ンを矩形間の矢印で、矢印の矢尾に位置するテーブルが
一側、矢頭に位置するテーブルが多側となるように表
し、1対1のリレーションは、テーブル間を双方向に矢
印で結合して表す場合、対象データベースは、図19
(a)のテーブル-5とテーブル-6を結合する双方向の
矢印のように、一般にはサイクルを含む。そこで、テー
ブルの順序付け処理290では、この逆流となる矢印の
数が最小となるような、テーブルの一次元的な配列順序
を見出す。
By the way, as shown in FIG.
One-to-many relations between tables are represented by rectangles with arrows between the rectangles, so that the table at the arrow tail is one side and the table at the arrow head is many side. When the tables are linked by arrows in both directions, the target database is as shown in FIG.
Cycles are generally included, as indicated by the double-headed arrow connecting Table-5 and Table-6 in (a). Therefore, in the table ordering process 290, a one-dimensional arrangement order of the tables is found so that the number of arrows that cause the backflow is minimized.

【0140】この、テーブルの順序付けは、組み合わせ
最適化の問題であり、分枝限定法を適用して、その最適
解を見出す。分枝限定法とは、直接解くことが難しい問
題を、より小規模な複数の部分問題に分解するという分
枝操作と、生成された部分問題のうち、最適解を与えな
いことが結論できるものを考慮から除くという限定操作
の、二つの操作を反復利用しながら、与えられた問題を
解こうとする手法であり、完全列挙法に修正を加えて、
不要な部分をできるだけ早く検出し、実質的に、全体の
ごく一部分のみを列挙するだけで、最適解を短時間で得
ようとするものである。
This table ordering is a problem of combinatorial optimization, and the branch and bound method is applied to find the optimum solution. The branch-and-bound method is a branching operation that decomposes a difficult-to-solve problem into multiple smaller sub-problems, and the generated sub-problems that can be concluded not to give an optimal solution. It is a method that tries to solve a given problem while repeatedly using two operations, which is a limited operation that excludes from the consideration.
It aims to obtain an optimal solution in a short time by detecting unnecessary parts as soon as possible and enumerating only a very small part of the whole.

【0141】さて、上記限定操作のためには、生成され
た部分問題に対してその下界を計算する必要がある。下
界とは、部分問題の最適解がそれを下回ることが無いと
いい切れる値である。そこで、まず、この下界計算の仕
方について説明する。
Now, for the above limited operation, it is necessary to calculate the lower bound of the generated subproblem. The lower bound is a value at which the optimal solution of a subproblem does not fall below it. Therefore, first, a method of calculating the lower bound will be described.

【0142】図20(a)はテーブル順序をテーブル-
1→8→2と決め、残りの順序は決めていない部分問題
の例である。
FIG. 20A shows the table order by table.
This is an example of a subproblem in which 1 → 8 → 2 is determined and the rest of the order is not determined.

【0143】図20(a)に示した正方マトリクスは、
図10に示すテ−ブル管理テ−ブル−A350と図8の
テ−ブル属性テ−ブル340の情報に従い、図17
(a)に示したものと同じ規則によって作成したもので
あり、縦に配置した各テーブルが一側、横に配置した各
テーブルが多側のテーブルであり、黒で示したマトリク
ス要素が、リレーションありを、白で示した要素がリレ
ーションなしを示している。また、1対1のリレーショ
ンは、1対多のリレーションを双方向に設定することに
より示すこととしている。
The square matrix shown in FIG. 20A is
In accordance with the information of the table management table A350 shown in FIG. 10 and the table attribute table 340 of FIG.
Created according to the same rules as shown in (a), each vertically arranged table is one side, and each horizontally arranged table is a multi-sided table, and matrix elements shown in black are relations. The element shown with white indicates that there is no relation. The one-to-one relation is indicated by setting the one-to-many relation bidirectionally.

【0144】ただし、この正方マトリクスでは、定めた
テーブル順序(テーブル-1→8→2)の順序に従い、
テ−ブルを縦横に並べる。
However, in this square matrix, according to the determined table order (table-1 → 8 → 2),
Arrange the tables vertically and horizontally.

【0145】この場合、この部分問題における逆流とな
る矢印の数とは、図20(a)において対角線より下方
の三種類のハッチングを施したマトリクス要素の内で、
それが黒となっている要素の数を集計したものである。
なぜならば、これらの黒要素は、テ−ブル順序上、前の
テ−ブルに向かうリレ−ションとなるからである。
In this case, the number of arrows that cause backflow in this subproblem means that among the three types of hatched matrix elements below the diagonal line in FIG.
It is the total number of black elements.
This is because these black elements become a relation to the previous table in the table order.

【0146】さて、このような正方マトリクスにおい
て、下界は、このうち、実線の二種のハッチング(密と
疎)を施したマトリクス要素の内で、それが黒となって
いる要素の数を集計したものとする。
In a square matrix like this, the lower bound is the total number of black matrix elements out of the two matrix elements (solid and sparse) hatched by solid lines. It is assumed that

【0147】破線のハッチングを施したマトリクス要素
を集計対象から除外する理由は、以下の通りである。
The reason why the matrix elements hatched with broken lines are excluded from the aggregation target is as follows.

【0148】すなわち、同図(b)に示したように、ま
ず、密な実線のハッチングを施したマトリクス要素は、
テーブル-1、8、2の順序が固定であるため一義的に
定まる。また、疎な実線のハッチングを施したマトリク
ス要素は、テーブル-1、8、2以外のテーブルの順序
がどのように変わっても、テーブル-1、8、2の順序
が固定であるため、垂直方向にしか動かず、集計結果は
不変であり、一義的に定まる。これらに対して、破線の
ハッチングを施したマトリクス要素は、テーブルの順序
に依存して、ハッチング領域外との出入りがあり、黒要
素の集計が不可能である。
That is, as shown in FIG. 14B, first, the matrix elements hatched with dense solid lines are:
The order of Tables 1, 8 and 2 is fixed, so it is uniquely determined. In addition, the matrix elements hatched with sparse solid lines have a fixed order of Tables 1, 8 and 2 no matter how the order of tables other than Tables 1, 8 and 2 is changed. It moves only in the direction and the result of counting is unchanged and is uniquely determined. On the other hand, the matrix elements hatched with broken lines move in and out of the hatched area depending on the order of the tables, and black elements cannot be aggregated.

【0149】上記理由により、破線のハッチングを施し
たマトリクス要素は、集計対象から除外する。
For the above reason, the matrix elements hatched with broken lines are excluded from the aggregation target.

【0150】さて、テーブルの順序付け処理290は、
図10のテ−ブル管理テ−ブル−A350より対象デー
タベ−スに属するテ−ブルを認識すると共に、図8のテ
−ブル属性テ−ブルより対象データベ−スに属するテ−
ブル間のリレ−ションを認識しながら、図21に示すよ
うに対象データベ−スのテ−ブルを順序づけていく。
Now, the table ordering process 290 is as follows.
The table belonging to the target data base is recognized from the table management table A350 shown in FIG. 10, and the table belonging to the target data base is shown from the table attribute table shown in FIG.
As shown in FIG. 21, the tables of the target data base are ordered while recognizing the relation between the bulls.

【0151】すなわち、まず、先頭に配置するテーブル
をどれにするかにより、七通り(テーブル-1/2/3
/5/6/7/8)が考えられるので、各々につき、そ
の下界(各矩形右下の数値)を前述した方法により求
め、これを列挙する。そして、これらの中から、分岐操
作の対象を一つ選択する。その選択のルールは、最良の
下界を与えるものを優先する。ただし、最良の下界を与
えるものが複数ある場合には、探索の深さの深いものを
優先する。もし、さらに探索の深さが同じであれば、列
挙順の早いものを優先する。この場合、探索の深さと
は、その分岐問題において順序が定められているテ−ブ
ルの数となる。
That is, first, depending on which table is placed at the top, seven types (table-1 / 2/3
/ 5/6/7/8), the lower bound (numerical value at the lower right of each rectangle) of each is obtained by the method described above, and these are listed. Then, from these, one branch operation target is selected. The rules of choice prioritize the one that gives the best lower bound. However, if there is more than one that gives the best lower bound, the one with the deepest search depth is given priority. If the search depths are the same, priority is given to the one in the earliest order. In this case, the search depth is the number of tables whose order is determined in the branch problem.

【0152】さて、上記ルールに従い、列挙された七つ
の部分問題の下界を調べると、最良の下界を与えるもの
はテーブル-1とテーブル-8の二つある。探索の深さは
同一なので、最初に列挙したものを優先し、テーブル-
1を分岐する。
By examining the lower bounds of the enumerated seven subproblems according to the above rule, there are two that give the best lower bounds, Table-1 and Table-8. Since the search depth is the same, the one listed first is given priority, and the table-
Branch 1

【0153】次に、先頭に配置するテーブルをテーブル
-1に決めた時、その次に配置するテーブルをどれにす
るかにより、六通り(テーブル-2/3/5/6/7/
8)が考えられる。各々につきその下界とともに列挙す
る。上記列挙された六つの部分問題と、先に分岐しなか
った残り六つの部分問題の下界を調べる。最良の下界を
与えるものはテーブル-1→8とテーブル-8である。深
さ優先により、テーブル-1→8が分岐される。以下同
様に処理し、最終的にテーブル-1→8→2→3→5→
6→7の順序を得る。
Next, the table to be placed at the top is
-When deciding to 1, depending on which table to place next, there are 6 ways (table-2 / 3/5/6/7 /
8) is considered. Each is listed along with its lower bounds. Examine the lower bounds of the six sub-problems listed above and the remaining six sub-problems that did not branch before. The ones that give the best lower bounds are Table-1 → 8 and Table-8. Due to the depth priority, table-1 → 8 is branched. The same process is performed thereafter, and finally table-1 → 8 → 2 → 3 → 5 →
Get the order 6 → 7.

【0154】上記処理により、図19(a)は同図
(b)のように順序付けされる。この結果が得られたな
らば、テーブルの順序付け処理290は、図12のテー
ブル順序テーブル360を作成し、これに求めた順序に
従った順番で、対象データベースに属する各テ−ブルの
テ−ブルNo.を記述する。
By the above processing, FIG. 19 (a) is ordered as shown in FIG. 19 (b). When this result is obtained, the table ordering process 290 creates the table order table 360 of FIG. 12, and the table of each table belonging to the target database is in the order according to the order obtained by the table order table 360. No. Describe.

【0155】次に、テーブルの層分類処理300につい
て説明する。
Next, the table layer classification processing 300 will be described.

【0156】この処理では、図12のテーブル順序テー
ブル360と図8のテ−ブル属性テ−ブルに従い、相互
にリレ−ションのない各データベ−スについて、テーブ
ルの順序付け処理290により順序づけられたテ−ブル
を複数の層に分類する。層は、前述した矢印の流れに沿
って分類する。すなわち、第1層は矢印の流入の無いテ
−ブルの層、第2層は第1層のテ−ブルからのみ矢印の
流入がある層、第3層は第1層、第2層のテ−ブルから
のみ矢印の流入がある層といった具合に分類する。
In this processing, according to the table order table 360 of FIG. 12 and the table attribute table of FIG. 8, the tables ordered by the table ordering process 290 are set for each database having no relation to each other. -Classify bulls into multiple layers. The layers are classified according to the flow of the arrow described above. That is, the first layer is the layer of the table without the inflow of arrows, the second layer is the layer with the inflow of arrows only from the table of the first layer, the third layer is the layer of the first layer and the second layer. -Classify as a layer with an inflow of arrows only from the bull.

【0157】この層分類は、前進計算による層分類、後
退計算による層分類の二つの計算によってそれぞれ層分
類した結果の一方を選択することにより行う。
This layer classification is performed by selecting one of the results of layer classification by two calculations of layer classification by forward calculation and layer classification by backward calculation.

【0158】図22(a)に前進計算による層分類の例
を、同図(b)に後退計算による層分類の例を示す。
FIG. 22A shows an example of stratification by forward calculation, and FIG. 22B shows an example of stratification by backward calculation.

【0159】同図(a)において、左端に示したマトリ
クスは、図17(a)に示したものと同じ規則によっ
て、テーブル順序テーブル360に記述されたテ−ブル
より構成されるデータベ−スについて作成したものであ
り、縦に配置した各テーブルが一側、横に配置した各テ
ーブルが多側のテーブルであり、黒で示したマトリクス
要素が、リレーションありを、白で示した要素がリレー
ションなしを示している。また、1対1のリレーション
は、1対多のリレーションを双方向に設定することによ
り示すこととしている。ただし、縦横のテーブル順序
を、テ−ブル順序テ−ブル360のテーブル順序(テー
ブル-1→8→2→3→5→6→7)に変更し、かつ、
対角要素の左下側に存在する黒要素(逆流となる矢印)
を白要素に置換している。
In FIG. 17A, the matrix shown at the left end is for a database composed of the tables described in the table order table 360 according to the same rules as shown in FIG. It is created, each table arranged vertically is one side, each table arranged horizontally is a multi-sided table, matrix elements shown in black have relations, elements shown in white have no relations Is shown. The one-to-one relation is indicated by setting the one-to-many relation bidirectionally. However, the vertical and horizontal table order is changed to the table order of the table order table 360 (table-1 → 8 → 2 → 3 → 5 → 6 → 7), and
Black element on the lower left side of the diagonal element (backflow arrow)
Is replaced with a white element.

【0160】さて、前進計算では、本マトリクスのすべ
ての列を調べ、矢印の流入のないテーブル(列のすべて
の要素が白となっているテーブル)をすべてリストアッ
プする。この結果、第2層に属するテーブルとして、テ
ーブル-1、8がリストアップされる。
By the way, in the forward calculation, all the columns of this matrix are examined, and all the tables with no inflow of arrows (tables in which all the elements of the columns are white) are listed. As a result, tables-1 and 8 are listed as the tables belonging to the second layer.

【0161】次に、マトリクスから先にリストアップし
たテーブル-1、8を除去し、先ほどと同様に、本マト
リクスのすべての列を調べ、矢印の流入のないテーブル
をリストアップする。この結果、第2層に属するテーブ
ルとして、テーブル-2、3、5がリストアップされ
る。
Next, the previously listed tables-1 and 8 are removed from the matrix, and similarly to the above, all the columns of this matrix are examined, and the tables having no inflow of arrows are listed. As a result, tables-2, 3 and 5 are listed as the tables belonging to the second layer.

【0162】以下同様に、第3層、第4層に属するテー
ブルとして、テーブル-6、テーブル-7がリストアップ
される。
Similarly, Table-6 and Table-7 are listed as tables belonging to the third and fourth layers.

【0163】以上が前進計算によるテーブルの層分類で
ある。
The above is the layer classification of the table by the forward calculation.

【0164】次に、後退計算による層分類も、また、図
22(b)の右端に示したマトリクスかを用いる。
For the layer classification by the backward calculation, the matrix shown at the right end of FIG. 22B is also used.

【0165】これは、先の、図22(a)の左端に示し
たものと同一のマトリクスである。
This is the same matrix as shown at the left end of FIG. 22 (a).

【0166】後退計算では、前進計算とは逆に、本マト
リクスのすべての行を調べ,矢印の流出のないテーブル
(行のすべての要素が白となっているテーブル)をすべ
てリストアップする。そして、この結果、最終層に属す
るテーブルとして、テーブル-7がリストアップされ
る。
In the backward calculation, contrary to the forward calculation, all the rows of this matrix are examined, and all the tables in which no arrows flow out (tables in which all the elements of the rows are white) are listed. As a result, Table-7 is listed as a table belonging to the final layer.

【0167】マトリクスから先にリストアップしたテー
ブル-7を除去する。先と同様に、すべての行を調べ、
矢印の流出のないテーブルをリストアップする。この結
果、最終層の一つ手前の層に属するテーブルとして、テ
ーブル-6がリストアップされる。
Remove Table-7 listed above from the matrix. As before, look at all the lines,
List the tables without arrow leaks. As a result, Table-6 is listed as a table belonging to the layer immediately before the final layer.

【0168】以下同様に、最終層の二つ手前の層、最終
層の三つ手前の層に属するテーブルとして、テーブル-
2、3、5、テーブル-1、8がリストアップされる。
Similarly, the table belonging to the layer two layers before the final layer and the layer three layers before the final layer are
2, 3 and 5 and Tables-1 and 8 are listed.

【0169】以上が前進計算と後退計算によるテーブル
層分類の処理である。
The above is the processing of table layer classification by forward calculation and backward calculation.

【0170】このようにして二つの層分類の結果が得ら
れたならば、両者のうち、隣接する層間を結合する矢印
の数(図22(c)において、ハッチングを施した部分
に存在する黒要素の数)をカウントし、その多い方を選
択する。ただし、図22の例では、結果は同じとなる。
When the results of the two-layer classification are obtained in this way, the number of arrows connecting the adjacent layers of the two (the black existing in the hatched portion in FIG. 22C) is obtained. Count the number of elements) and select the one with the largest number. However, in the example of FIG. 22, the result is the same.

【0171】以上の処理により、図19(b)は図19
(c)のように層分類することができたならば、テーブ
ルの層分類処理300は、図13の層別テーブル管理テ
ーブル370を作成する。
As a result of the above processing, FIG.
If the layers can be classified as in (c), the table layer classification processing 300 creates the layer-based table management table 370 of FIG. 13.

【0172】すなわち、図13において、層別テーブル
管理テーブル370の(a)に処理対象のデータベース
を構成する複数の層の総数を記述し、対応するデータベ
−スの層リスト-Cを作成し、その位置を示すエントリ
行No.を保持する。
That is, in FIG. 13, the total number of a plurality of layers forming the database to be processed is described in (a) of the layered table management table 370, and the layer list-C of the corresponding database is created. The entry row No. indicating the position is held.

【0173】同図(b)に示す層リスト−Cの作成にお
いては各層毎に、層内に存在する複数テーブルの総数を
記述し、対応する層についてのテーブル順序リスト-C
を作成し、その位置を示すエントリ行No.を記述する。
In the creation of the layer list-C shown in FIG. 18B, the total number of plural tables existing in each layer is described for each layer, and the table order list-C for the corresponding layer is described.
Is created and the entry line No. indicating the position is described.

【0174】また、同図(c)に示すテ−ブル順序リス
ト−Cの作成においては、対応する層内に存在する各テ
ーブルのテーブルNo.を任意の順序で記述する。
Further, in the creation of the table order list-C shown in FIG. 13C, the table No. of each table existing in the corresponding layer is described in an arbitrary order.

【0175】また、この処理では、さらに図9のフィー
ルド属性テーブルの、先行/後続フィールド・リスト
(図9(c))を参照しながら、当該フィ−ルドの"リ
レーション表示可否フラグ"フィールドの設定を行う。
すなわち、処理対象データベ−スに属する全てのフィ−
ルドのうち、他のフィ−ルドとリレ−ションを持つフィ
−ルド(固定フィ−ルド)の、"リレーション表示可否
フラグ"フィールドを、そのフィ−ルドをリレ−ション
を持つフィ−ルドが、隣接する層に属するフィ−ルドで
ある場合には、オンを、そうでない場合には、オフを設
定する。
Further, in this process, the "relation display enable / disable flag" field of the field is set by referring to the preceding / succeeding field list (FIG. 9 (c)) of the field attribute table of FIG. I do.
That is, all files belonging to the processing target database
Of the fields, the "relation display enable / disable flag" field of the field (fixed field) having the relationship with other fields, the field having the relationship with that field, If the field belongs to an adjacent layer, it is set to ON, and if not, it is set to OFF.

【0176】なお、この、"リレーション表示可否フラ
グ"は、後に以下のように用いられる。すなわち、図7
(b)に示したように、グラフィック形式表示関数は、
最終的に、データベ−スの詳細構造を、各テ−ブルのフ
ィ−ルド間を、その間のリレ−ションを表す矢印で結ん
だ図形として表示するが、この際、隣接しない層のフィ
−ルド間を結合する矢印も表示すると図が煩雑となり、
かえってユ−ザの理解を妨げる。そこで、グラフィック
形式表示関数は、この"リレーション表示可否フラグの
オン/オフに従い、隣接しない層のフィ−ルド間につい
ては、矢頭と矢尾のみを表示し、その間を結合しないよ
うにする。
The "relation display enable / disable flag" is used later as follows. That is, FIG.
As shown in (b), the graphic display function is
Finally, the detailed structure of the database is displayed as a figure in which the fields of each table are connected by an arrow representing the relation between them, but at this time, the fields of non-adjacent layers are displayed. If you also display arrows that connect the two, the diagram becomes complicated,
Instead, it hinders the user's understanding. Therefore, the graphic format display function displays only the arrow heads and the tails of the fields of non-adjacent layers according to the on / off state of the "relation display enable / disable flag, and does not connect the fields.

【0177】次に、層内のテーブル順序付け処理310
について説明する。
Next, the table ordering process 310 in the layer.
Will be described.

【0178】この処理では、図19(c)のように、層
の順序に従って左から右に各テ−ブルを配置し、テ−ブ
ルを矩形によって、テーブル間の1対多のリレーション
を矩形間の矢印で結んだ場合に、テーブル間を結合する
矢印の交叉数が最小となるようなテーブルの縦方向配置
位置の順序付けを層内で行う(テーブル間を結合する矢
印は、例えば、図19(c)のテーブル-1→3とテー
ブル-8→2のように、一般に交叉する)。
In this processing, as shown in FIG. 19C, each table is arranged from left to right according to the order of layers, and the table is formed by a rectangle so that the one-to-many relation between the tables is formed between the rectangles. In the layer, the vertical arrangement positions of the tables are ordered so that the number of intersections of the arrows connecting the tables is minimized when they are connected by the arrow. (C) such as Table-1 → 3 and Table-8 → 2 generally crosses).

【0179】この層内のテーブル順序付けの問題は、先
の場合と同様に、組み合わせ最適化の問題であり、分枝
限定法を適用して、その最適解を見出す。
The problem of table ordering within this layer is a problem of combinatorial optimization, as in the previous case, and the branch and bound method is applied to find the optimum solution.

【0180】まず、この処理に用いる下界計算の概要を
図23に示す。
First, FIG. 23 shows an outline of the lower bound calculation used in this processing.

【0181】同図(a)は第2層のテーブル順序を、上
から下の順に、テーブル-1→8と決め、第2層のテー
ブル順序を、同じく、テーブル-2→3→5と決め、第
3層以降の順序は決めていない部分問題に対応するマト
リクスを示す。このマトリクスは、図13の層別テーブ
ル管理テーブル370、図8のテ−ブル属性テ−ブルの
情報より作成することができる。
In the same figure (a), the table order of the second layer is determined from top to bottom as table-1 → 8, and the table order of the second layer is similarly determined as table-2 → 3 → 5. , A matrix corresponding to a subproblem in which the order of the third layer onward is not determined. This matrix can be created from the layered table management table 370 of FIG. 13 and the table attribute table information of FIG.

【0182】さて、この部分問題における矢印の交叉の
数とは、同図(a)において三種類のハッチングを施し
たマトリクス要素の内で、それが黒となっている要素が
他と交叉するか否かを判定し、交叉すると判定された黒
要素を集計したものである。下界としては、実線の二種
類のハッチング(密と疎)を施したマトリクス要素の内
で、それが黒となっている要素が他と交叉するか否かを
判定し、交叉すると判定された黒要素を集計したものと
する。破線のハッチングを施したマトリクス要素を集計
対象から除外する理由は、以下の通りである。
By the way, the number of arrow crosses in this subproblem means that among the three hatched matrix elements in FIG. 10A, the black one crosses the other. It is determined whether or not the black elements are crossed, and the black elements determined to be crossed are aggregated. As the lower bound, it is determined whether or not the element that is black among the two types of solid line hatching (dense and sparse) intersects with the other, and the black that is determined to intersect. Let's assume that the elements are aggregated. The reason why the matrix elements hatched with broken lines are excluded from the aggregation target is as follows.

【0183】すなわち、まず、密な実線のハッチングを
施したマトリクス要素は、テーブル-1、8、テーブル-
2、3、5の順序が固定であるため動かず、交叉判定可
能である。また、疎な実線のハッチングを施したマトリ
クス要素は、テーブル-1、8、テーブル-2、3、5以
外のテーブルの順序がどのように変わっても、テーブル
-1、8、テーブル-2、3、5の順序が固定であるた
め、高々、水平または垂直方向にしか動かず、交叉判定
可能である。これらに対して、破線のハッチングを施し
た部分は、テーブルの順序に依存して、水平・垂直方向
に複雑な動きをするため、交叉判定が不可能である。
That is, first, the matrix elements hatched with dense solid lines are table-1, 8 and table-
Since the order of 2, 3, 5 is fixed, it does not move and crossover determination is possible. In addition, the matrix elements hatched with sparse solid lines are used for the table elements no matter how the order of the tables other than table-1, 8 and table-2, 3, 5 changes.
Since the order of -1, 8 and tables -2, 3, 5 is fixed, it is possible to move only in the horizontal or vertical direction at most, and it is possible to determine the crossover. On the other hand, the hatched portion of the broken line makes complicated movements in the horizontal and vertical directions depending on the order of the tables, and therefore cross determination is impossible.

【0184】上記理由により、破線のハッチングを施し
たマトリクス要素は、集計対象から除外する。
For the above reason, the matrix elements hatched with broken lines are excluded from the totaling target.

【0185】さて、このようにして下界を判定するため
に必要となる交叉の判定は次のように行う。すなわち、
図23(a)の対角右上の(対角左下の)密な実線のハ
ッチングを施した領域のマトリクス要素の交叉の判定
は、図23(b)において、交叉判定すべき黒要素の右
上または左下(図の太枠)部分に黒要素が存在する時、
交叉すると判定する。もし、存在しない場合には、さら
に、対角左下の(対角右上の)密な実線のハッチング部
分の対応する要素の右上または左下(図の太枠)部分を
調べ、そこに黒要素が存在する時、交叉し、存在しない
時、交叉しないと判定する。
By the way, the determination of the crossover required for determining the lower bound in this way is performed as follows. That is,
In FIG. 23A, the determination of the crossover of the matrix elements in the densely hatched area on the upper right corner (the lower left corner of the diagonal) in FIG. When there is a black element in the lower left (thick frame in the figure),
Determine to cross. If it does not exist, further check the upper right or lower left (thick frame in the figure) of the corresponding element in the hatched part of the dense solid line at the lower left of the diagonal (upper right of the diagonal), and there is a black element there. When it does, it is determined to cross, and when it does not exist, it is determined not to cross.

【0186】また、図23(a)における、対角右上の
(対角左下の)、疎な実線のハッチングを施したマトリ
クス要素における交叉の判定は、図23(c)において
交叉判定すべき黒要素の右上、右下、左上、左下(図の
太枠)部分に黒要素が存在するか否かで判定する。例え
ば、交叉判定すべき黒要素の右上、左上、右下、左下
(図の太枠)のいずれの部分にも黒要素が存在する時、
テーブルを、どう順序付けしても必ず、交叉するので、
交叉すると判定する。いずれか一つの部分を残して、残
り三つの部分に、すべて黒要素が存在する時も同様であ
る。以下、同様にして、いずれか二つの部分を残して、
残り二つの部分には、すべて黒要素が存在する時、いず
れか三つの部分を残して、残り一つの部分に、黒要素が
存在する時、四つの部分のすべてに黒要素が存在しない
時の、各々につき、あらかじめ定めた所定の交叉判定条
件により必ず交叉するか否かを定め、これに従って判定
する。
In addition, in FIG. 23A, the crossover judgment in the matrix element hatched by the sparse solid line on the upper right corner (lower left corner of the diagonal) in FIG. It is determined whether or not black elements are present in the upper right, lower right, upper left and lower left (thick frame in the figure) parts of the element. For example, when there is a black element in any of the upper right, upper left, lower right, and lower left (thick frame in the figure) of the black element to be cross-judged,
No matter how you order the tables, they always cross, so
Determine to cross. The same applies when any one of the parts is left and the remaining three parts all have black elements. In the same way, leave any two parts,
When all the black elements are present in the remaining two parts, any three parts are left, when the black element is present in the remaining one part, and when the black elements are not present in all the four parts. For each of the above, whether or not to always cross is determined based on a predetermined predetermined crossing determination condition, and the determination is performed according to this.

【0187】上記判定において、テーブルをどう順序付
けしても、必ず交叉する、と判定されなかった時は、さ
らに、対角左下の(対角右上の)疎な実線のハッチング
部分の対応する要素の右上、右下、左上、左下(図の太
枠)部分を調べ、そこに黒要素が存在するか否かで、交
叉判定を進める。その判定方法は上記と同様である。た
だし、このレベルまで交叉判定を行うかは任意である。
このレベルまで交叉判定を行わなくても、後述するグラ
フィック表示ウィンドウ関数によって、従来に比し交叉
の少ない構造表示が成されることになる。
In the above determination, if it is not determined that the tables are always crossed, no matter how the tables are ordered, the corresponding elements of the hatched portion of the sparse solid line on the lower left of the diagonal (on the upper right of the diagonal) are selected. The upper right, lower right, upper left, lower left (thick frame in the figure) portions are examined, and the crossover determination is advanced depending on whether or not there is a black element. The determination method is similar to the above. However, it is optional whether or not the crossover determination is performed up to this level.
Even if the crossover determination is not performed up to this level, the structure display with less crossover than in the past can be performed by the graphic display window function described later.

【0188】このような交叉、下界判定を用いながら、
層内のテーブル順序付け処理310は、分枝限定法によ
ってテーブル順序を探索し、決定する。
While using such crossover and lower bound determination,
The in-layer table ordering process 310 searches and determines the table order by the branch and bound method.

【0189】この探索過程を図23に示す。まず、第2
層のテーブル順序は二通り(テーブル-1→8,テーブ
ル-8→1)考えられる。その各々を下界とともに列挙
する。この時の下界は未だ計算不可能なので、最良の下
界(ゼロ)を設定しておく。上記列挙された二つの部分
問題の下界を調べる。最良の下界を与えるものは、テー
ブル-1→8とテーブル-8→1の二つある。これが複数
ある場合は、深さ優先、深さ同一なら、最初に列挙した
ものを優先するので、テーブル-1→8が分岐される。
第2層のテーブル順序をテーブル-1→8に決めた時、
第2層のテーブル順序は、図示のように六通り(テーブ
ル-2→3→5、テーブル-2→5→3、…、テーブル-
5→3→2)考えられる。各々をその下界とともに列挙
する。上記列挙された六つの部分問題と、先に分岐しな
かった部分問題の下界を調べる。最良の下界を与えるも
のはテーブル-8→1であり、これを分岐する。以下同
様に処理し、最終的にテーブル-1→8→テーブル-5→
2→3→テーブル-6→テーブル-7を得る。
This search process is shown in FIG. First, the second
There are two possible layer table orders (table-1 → 8, table-8 → 1). Each is listed along with the lower bounds. Since the lower bound at this time is not yet computable, set the best lower bound (zero). Examine the lower bounds of the two subproblems listed above. There are two things that give the best lower bound: Table-1 → 8 and Table-8 → 1. When there are a plurality of these, if the depth is the same, and if the depths are the same, the one listed first is given priority, so that table-1 → 8 is branched.
When you decide the table order of the second layer to be table-1 → 8,
The table order of the second layer is six ways as shown in the figure (table-2 → 3 → 5, table-2 → 5 → 3, ..., table-
5 → 3 → 2) Possible. Each is listed along with its lower bounds. Examine the lower bounds of the six subproblems listed above and the subproblems that did not branch before. The one that gives the best lower bound is Table-8 → 1, which branches off. The same process is performed thereafter, and finally Table-1 → 8 → Table-5 →
Get 2 → 3 → Table-6 → Table-7.

【0190】上記処理により、交叉する矢印の数が最小
化され、図19(c)は同図19(d)のように、各層
内においてテ−ブルの縦方向順序が定められることにな
る。
By the above processing, the number of intersecting arrows is minimized, and as shown in FIG. 19C, the vertical order of the tables in each layer is determined.

【0191】層内のテーブル順序付け処理310は、こ
のような層内のテ−ブル順序づけの結果を、図11のテ
ーブル管理テーブル-B380に記述する。
The in-layer table ordering process 310 describes the result of such in-layer table ordering in the table management table-B 380 of FIG.

【0192】すなわち、図10のテ−ブル管理テ−ブル
−A350や図13の層別管理テ−ブル370を参照
し、図11(a)の管理テ−ブルに、相互にリレーショ
ンのないデータベースの総数を記述し、データベース・
リスト-Bを作成し、その位置を示すエントリ行No.を
記述する。
That is, referring to the table management table A350 of FIG. 10 and the layered management table 370 of FIG. 13, the management table of FIG. Describe the total number of
Create a list-B and describe an entry line No. indicating its position.

【0193】また、図11(b)に示すデータベ−スリ
スト−Bの作成においては、相互にリレーションのない
データベ−ス毎に、データベースを構成する層の総数を
記述し、対応するデータベ−スの層リスト-Bを作成
し、その位置を示すエントリ行No.を記述する。この時
点では、ウインドウ・サイズ、データベース配置領域の
サイズ(横、縦)については領域のみを確保する。
In the creation of the database list B shown in FIG. 11B, the total number of layers constituting the database is described for each database having no relation to each other, and the corresponding database is stored. Create a layer list-B and describe an entry line No. indicating its position. At this point, only the area is secured for the window size and the size (horizontal, vertical) of the database arrangement area.

【0194】また、図11(c)に示す層リスト−Bの
作成においては、各層の層内に存在するテーブルのテー
ブル総数を記述する。また、対応する層についてのテー
ブル順序リスト-Bが作成されたら、その位置を示すエ
ントリ行No.を保持する。
Further, in creating the layer list-B shown in FIG. 11C, the total number of tables existing in each layer is described. When the table order list-B for the corresponding layer is created, the entry row No. indicating the position is held.

【0195】また、図11(d)に示すテ−ブル順序リ
スト−Bの作成は、各データベ−スの各層内のテ−ブル
順序が前述したようにして求められた時点で逐次行わ
れ、テ−ブル順序リスト−Bには対応する層内に存在す
る各テーブルのテーブルNo.が、求めた層内テ−ブル順
序に従った順序で記述される。また、この図11(b)
のデータベ−スリストのウィンドウサイズには、対応す
るデータベ−スにおける、1つのテ−ブルに含まれるフ
ィ−ルド数の最大数を初期値として記述しておく。
The table order list-B shown in FIG. 11 (d) is created sequentially when the table order in each layer of each database is obtained as described above. The table No. of each table existing in the corresponding layer is described in the table order list B in the order according to the obtained in-layer table order. Also, FIG. 11 (b)
In the window size of the database list, the maximum number of fields included in one table in the corresponding database is described as an initial value.

【0196】さて、このようにしてリレ−ショナルデー
タベ−ス20についてのテ−ブル管理テ−ブル−Bが作
成されると、データベ−ス構造表形式表示320が処理
を行う(図5ステップ70)この処理では、図8のテ−
ブル属性テ−ブル340、図11のテ−ブル管理テ−ブ
ル−B380を参照し、図7(a)のウインドウ260内
に示したように、表を、太線で先に分離した相互にリレ
−ションの無いデータベ−ス毎に分離し、分離した各表
に対応するデータベ−スのテ−ブル名を表示する。テ−
ブル名の表示にあたっては、1列を1つの層に対応づ
け、各行に列に対応する層のテ−ブル名を、テ−ブル管
理テ−ブル−B380のテ−ブル順序リストに記述され
ているテ−ブルNo.の順序に従い表示する。
When the table management table B for the relational database 20 is created in this way, the database structure table format display 320 performs processing (step 70 in FIG. 5). ) In this process, the table of FIG.
Table 340 and the table management table-B 380 in FIG. 11 are referred to, and as shown in the window 260 in FIG. -The database is separated for each database that does not have an option, and the table name of the database corresponding to each separated table is displayed. Tee
In displaying the table name, one column is associated with one layer, and the table name of the layer corresponding to the column in each row is described in the table order list of the table management table-B380. Table No. Display in the order of.

【0197】ユーザは、この表示により、例えば、相互
に独立なデータベースの数、各データベースの各層に属
するテーブルの数、テーブル名等を参照でき、対象デー
タベースの構造を大局的に把握することができる。
From this display, the user can refer to, for example, the number of mutually independent databases, the number of tables belonging to each layer of each database, the table name, etc., and can grasp the structure of the target database in a comprehensive manner. .

【0198】以上が、データベース構造の表形式表示ウ
ィンドウ関数の構成ならびに動作の説明である。
The above is a description of the structure and operation of the tabular display window function of the database structure.

【0199】さて、前述したように表形式表示ウィンド
ウ関数505によって図7(a)の表示がなされている
時に、対象データベースの更に詳細な構造(各テーブル
を構成するフィールドや、フィールド間のリレーション
等)を参照したい場合、ユーザは、ウインドウ260上
で、目的のテーブルをダブル・クリックする。そうする
と、ウインドウ260は閉じ、グラフィック形式表示関
数506によって、ダブル・クリックされたテーブルを
含むデータベース(データベース分離処理280によっ
て分離されたデータベース)を対象データベースとし
て、このデータベースの、さらに詳細な構造を表すグラ
フィック図が作成され、グラフィック形式表示関数50
6の子ウインドウのクライアント・エリアに表示され
る。これが図7(b)のウインドウ270内に示したも
のである。
As described above, when the display in FIG. 7A is performed by the tabular display window function 505, a more detailed structure of the target database (fields forming each table, relations between fields, etc.). ), The user double-clicks the target table on the window 260. Then, the window 260 is closed, and the graphic display function 506 sets a graphic representing a more detailed structure of the database including the double-clicked table (database separated by the database separation processing 280) as a target database. The figure is created and the graphic format display function 50
6 child window is displayed in the client area. This is what is shown in the window 270 of FIG.

【0200】以下、このグラフィック形式表示ウィンド
ウ関数506の詳細について説明する。まず、このグラ
フィック形式表示ウィンドウ関数506の処理で用いる
各種テ−ブル、データについて説明する。
The graphic format display window function 506 will be described in detail below. First, various tables and data used in the processing of the graphic display window function 506 will be described.

【0201】グラフィック形式表示ウィンドウ関数50
6で用いるテ−ブル、データは、図8、9に示したテー
ブル/フィールド属性テーブル340、図11に示した
テーブル管理テーブル-B380、決定ルール・テーブ
ル460、あらかじめ定義しておいたメンバシップ関数
470である。
Graphic format display window function 50
The table and data used in 6 are the table / field attribute table 340 shown in FIGS. 8 and 9, the table management table-B 380 shown in FIG. 11, the decision rule table 460, and the membership function defined in advance. 470.

【0202】以下では、まだ説明していない、決定ルー
ル・テーブル460、メンバシップ関数470について
説明する。
The decision rule table 460 and the membership function 470, which have not been described yet, will be described below.

【0203】図25、図26に、決定ルールテーブル4
60の構成を示す。
The decision rule table 4 is shown in FIGS.
The structure of 60 is shown.

【0204】本テーブルは、ウインドウ・サイズ決定ル
ール・テーブルとテーブル表示様式決定ルールテーブル
の二つより成る。
This table is composed of a window size determination rule table and a table display style determination rule table.

【0205】図25は、そのうちのウインドウ・サイズ
決定ルール・テーブルの構成を示したものである。
FIG. 25 shows the structure of the window size determination rule table.

【0206】このテ−ブルでは、図25(a)により、
ウインドウ・サイズ決定に使用する複数のルールの総数
と、同図(b)に示したルール・リスト-Aの位置を示
すエントリ行No.を保持し、同図(b)のルール・リス
ト-Aにより、各ルールの、ルール前件部、後件部で使
用するラベルの種類を保持する。各ルールで使用する条
件は、ルール前件部で一つ(Difference-A)、後件部
で一つ(Reset)あり、これらに対応してフィールドを
設けている。
In this table, according to FIG.
The total number of a plurality of rules used for determining the window size and the entry line No. indicating the position of the rule list-A shown in FIG. 16B are held, and the rule list-A shown in FIG. Holds the type of label used in the rule antecedent part and consequent part of each rule. There is one condition (Difference-A) in the antecedent part of the rule and one (Reset) in the consequent part of the rule, and fields are provided corresponding to these conditions.

【0207】図26は、テーブル表示様式決定ルール・
テーブルの構成を示したものである。
FIG. 26 is a table display style determination rule
It shows the structure of the table.

【0208】このテ−ブルでは、同図(a)により、決
定に使用する複数のルールの総数と、同図(b)に示し
たルール・リスト-Bの位置を示すエントリ行No.を保
持し、同図(b)のルール・リスト-Bにより、各ルー
ルの、ルール前件部、後件部で使用するラベルの種類を
保持する。各ルールで使用する条件は、ルール前件部で
二つ(Difference-B、Visibility)、後件部で一つ
(Style)あり、これらに対応してフィールドを設けて
いる。
In this table, the total number of a plurality of rules used for determination and the entry line No. indicating the position of the rule list-B shown in FIG. Then, the type of label used in the rule antecedent part and consequent part of each rule is held by the rule list-B of FIG. There are two conditions (Difference-B, Visibility) in the antecedent part of the rule and one (Style) in the consequent part of the rule, and fields are provided corresponding to these conditions.

【0209】図27〜図31は、メンバシップ関数47
0を定義するデータの構成を示している。
27 to 31 show the membership function 47.
The structure of the data which defines 0 is shown.

【0210】メンバシップ関数470は、ウインドウ・
サイズ決定ルールで使用する各種ラベルのメンバシップ
関数と、テーブル表示様式決定ルールで使用する各種ラ
ベルのメンバシップ関数の二つより成る。
The membership function 470 is
It consists of a membership function of each label used in the size determination rule and a membership function of each label used in the table display style determination rule.

【0211】図27、図28は,そのうちのウインドウ
・サイズ決定ルールで使用する各種ラベルのメンバシッ
プ関数を定義するデータの構成を示したものである。
27 and 28 show the structure of data defining membership functions of various labels used in the window size determination rule.

【0212】図27がルール前件部で使用する各種ラベ
ルのグレード値を、図28がルール後件部で使用する各
種ラベルのグレード値を定義するデータ構成を示してい
る。
FIG. 27 shows a data structure that defines the grade values of various labels used in the rule antecedent part, and FIG. 28 defines the grade values of various labels used in the rule antecedent part.

【0213】すなわち、図27(a)の構成により変数
Difference-Aの取り得る整数値の総数、同図(b)に
示したグレード値リスト-Aの位置を示すエントリ行N
o.を保持し、同図(b)のグレード値リスト-Aで、上
記各整数値ごとに、各種ラベル(NB、ZR、PB)の
グレード値を、ラベルの種類ごとに保持することによ
り、ルール前件部で使用する各種ラベルのグレード値を
定義している。
That is, with the configuration of FIG. 27A, the total number of possible integer values of the variable Difference-A, and the entry line N indicating the position of the grade value list-A shown in FIG.
By holding o. and holding the grade value of each label (NB, ZR, PB) for each integer value in the grade value list-A of FIG. It defines the grade value of each label used in the rule antecedent part.

【0214】また、図28(a)で、変数Resetの取り
得る整数値(0、1)の総数(=2)、同図(b)に示し
たグレード値リスト-Bの位置を示すエントリ行No.を
保持し、同図(b)のグレード値リスト-Bで、上記各
整数値ごとに、各種ラベル(NO、YES)のグレード
値を、ラベルの種類ごとに保持することにより、ルール
後件部で使用する各種ラベルのグレード値を定義してい
る。
Also, in FIG. 28A, the total number (= 2) of integer values (0, 1) that the variable Reset can take, and the entry line indicating the position of the grade value list-B shown in FIG. 28B. No. is held and the grade value of each label (NO, YES) is held for each integer value in the grade value list-B of FIG. It defines the grade value of each label used in the subject part.

【0215】図29〜31は、テーブル表示様式決定ル
ールで使用する各種ラベルのメンバシップ関数を定義す
るデータの構成を示したものである。
29 to 31 show the structure of data defining membership functions of various labels used in the table display style determination rule.

【0216】図29、図30がルール前件部で使用する
各種ラベルの、図31がルール後件部で使用する各種ラ
ベルのグレード値を定義するデータである。
29 and 30 are data defining the grade values of various labels used in the rule antecedent part, and FIG. 31 is data defining grade values of various labels used in the rule antecedent part.

【0217】すなわち、図29(a)で、変数Differe
nce-Bの取り得る整数値の総数、同図(b)に示したグ
レード値リスト-Cの位置を示すエントリ行No.を保持
し、同図(b)のグレード値リスト-Cで、上記各整数
値ごとに、各種ラベル(NB、ZR、PB)のグレード
値を、ラベルの種類ごとにフィールドを分けて保持する
ことにより、ルール前件部で使用する変数Difference-
Bの各種ラベルのグレード値を定義している。
That is, in FIG. 29A, the variable Differe
nce-B holds the total number of integer values that can be taken and the entry line No. indicating the position of the grade value list-C shown in FIG. By holding the grade value of each label (NB, ZR, PB) for each integer value by dividing the field for each label type, the variable Difference-
The grade value of each label of B is defined.

【0218】また、図30(a)で、変数Visibility
の取り得る値の範囲を、一定の大きさで分割して得られ
る小区間の総数、同図(b)に示したグレード値リスト
-Dの位置を示すエントリ行No.を保持し、同図(b)
のグレード値リスト-Dで上記小区間の各々につき、各
種ラベル(ANY、PS、PM、PB)のグレード値を
保持することにより、ルール前件部で使用する変数Vis
ibilityの各種ラベルのグレード値を定義している。
Also, in FIG. 30A, the variable Visibility
, The total number of small sections obtained by dividing the range of possible values by a certain size, the grade value list shown in FIG.
The entry line No. indicating the position of -D is held, and FIG.
By holding the grade values of various labels (ANY, PS, PM, PB) for each of the above small sections in the grade value list-D of
Defines the grade value of each label for ibility.

【0219】また、図31(a)で、変数Styleの取り
得る整数値(0、1、2)の総数(=3)、同図(b)に
示したグレード値リスト-Eの位置を示すエントリ行N
o.を保持し、同図(b)のグレード値リスト-Eで上記
各整数値ごとに、各種ラベル(NON、HALF、FU
LL)のグレード値を、ラベルの種類ごとにフィールド
を分けて保持することにより、ルール後件部で使用する
各種ラベルのグレード値を定義している。
Further, in FIG. 31A, the total number (= 3) of integer values (0, 1, 2) that the variable Style can take and the position of the grade value list-E shown in FIG. 31B are shown. Entry line N
O. is retained, and various labels (NON, HALF, FU) are assigned to each of the above integer values in the grade value list-E of FIG.
By storing the grade value of (LL) in each field for each label type, the grade value of each label used in the consequent part of the rule is defined.

【0220】以上、グラフィック形式表示ウィンドウ関
数506が処理に用いるテ−ブルメンバシップ関数につ
いて説明した。
The table membership function used by the graphic format display window function 506 for processing has been described above.

【0221】以下、グラフィック形式表示ウィンドウ関
数506の構成と動作について説明する。
The construction and operation of the graphic display window function 506 will be described below.

【0222】図32に、グラフィック形式表示ウィンド
ウ関数506の行う各処理の構成を示す。
FIG. 32 shows the configuration of each processing performed by the graphic format display window function 506.

【0223】図示するようにグラフィック形式表示ウィ
ンドウ関数506は。ウインドウ・サイズ決定処理39
0、固定フィールド順序付け処理400、固定フィール
ド設定処理410、テーブル表示様式決定処理420、
テーブル表示位置決定処理430、グラフィック形式表
示ウィンドウ関数440、これらの起動を制御する全体
制御450の各処理を行う。
As shown, the graphical display window function 506 is: Window size determination processing 39
0, fixed field ordering process 400, fixed field setting process 410, table display style determination process 420,
The table display position determination process 430, the graphic display window function 440, and the overall control 450 for controlling the activation of these are performed.

【0224】全体制御450は、他の各処理の起動、実
行を制御する。すなわち、グラフィック形式表示ウィン
ドウ関数440が起動されると、図33に示すように、
ステップ10でウインドウ・サイズ決定処理390を起
動してウインドウ・サイズを決定し、ステップ20で、
テ−ブル管理テ−ブルB380より対象データベースに
含まれるテーブルの総数を判定し、テーブル総数が二個
以上なら、ステップ30で、すべてのテーブルにつき、
交叉する矢印の数が最小となるような固定フィールドの
順序付けを行い、テーブル総数が一個なら、ステップ4
0で、そのままでは、固定フィールド総数=0となって
しまう対象テーブルの、固定フィールドを設定する。そ
して、ステップ50でテーブル表示様式決定処理420
を起動してテーブルの表示様式を決定し、ステップ60
でテーブル表示位置決定処理430を起動してテーブル
の表示位置を決め、ステップ70でデータベース構造グ
ラフィック形式表示部440を起動して、処理結果をグ
ラフィック形式で表示する。
The overall control 450 controls activation and execution of other processes. That is, when the graphic format display window function 440 is activated, as shown in FIG.
In step 10, the window size determination process 390 is activated to determine the window size, and in step 20,
The total number of tables included in the target database is determined from the table management table B380. If the total number of tables is two or more, in step 30, all tables are
If the fixed fields are ordered such that the number of crossing arrows is minimized and the total number of tables is one, step 4
If 0, the fixed field is set in the target table in which the total number of fixed fields = 0, if not changed. Then, in step 50, the table display style determination processing 420
To determine the display format of the table, and step 60
In step 70, the table display position determination processing 430 is started to determine the display position of the table, and in step 70, the database structure graphic format display unit 440 is started to display the processing result in the graphic format.

【0225】以下、各処理の詳細について説明する。Details of each process will be described below.

【0226】まず、ウインドウ・サイズ決定処理390
について説明する。
First, window size determination processing 390
Will be described.

【0227】この処理では、図7(b)に示すように、
テ−ブルを矩形で示し、当該テ−ブルのフィ−ルドのフ
ィ−ルド名称を矩形内に一行づつ(図中では破線で区切
られた長方形が1行に相当する)記述する場合の、テ−
ブルを表す矩形の大きさの標準値をウィンドウサイズと
して決定する。
In this process, as shown in FIG.
When a table is shown as a rectangle and the field name of the field of the table is described line by line in the rectangle (in the figure, a rectangle separated by a broken line corresponds to one line), −
The standard size of the rectangle that represents the bull is determined as the window size.

【0228】この処理は、図11のテ−ブル管理テ−ブ
ル−B380のデータベ−スリスト(同図b)に先に記
述されたウインドウ・サイズWmax(処理対象データベ
−スのテーブルの固定フィールド数の最大値)が適正か
否かを、図8、9のテ−ブル/フィ−ルド属性テ−ブル
340の情報を参照して判断し、適正なら再設定せず、
不適正なら再設定する。
This processing is performed by the window size W max (fixed field of the table of the processing target database) previously described in the database list of the table management table B380 in FIG. 11 (b in the drawing). Whether or not the maximum value of the number) is appropriate is determined by referring to the information of the table / field attribute table 340 of FIGS. 8 and 9, and if it is appropriate, it is not reset,
If it is incorrect, reset it.

【0229】再設定しない場合、W=Wmaxのままであ
るが、再設定する場合、W=Woptとする(Wopt:外部
より適宜与えるウインドウの適正サイズ)。
When not reset, W = W max remains, but when reset, W = W opt (W opt : proper size of window appropriately given from outside).

【0230】上記、再設定する、しないの決定には、図
25に示したメンバシップ関数に従い、以下のファジィ
・ルールを用いる。
To determine whether to reset or not, the following fuzzy rule is used according to the membership function shown in FIG.

【0231】 if Difference-A=NB Then Reset=NO …………………………(1) if Difference-A=ZR Then Reset=NO …………………………(2) if Difference-A=PB Then Reset=YES ………………………(3) ここに、Difference-A:ウインドウの適正サイズと、
1テ−ブルに含まれる固定フィールド数の最大値との差
(=Wopt−Wmax)、 Reset:再設定(NO/YES)、 NB:負で大(egative ig)、 ZR:ほぼゼロ(eo)、 PB:正で大(ositive ig)、 NO:再設定しない、YES:再設定する である。
If Difference-A = NB Then Reset = NO …………………… (1) if Difference-A = ZR Then Reset = NO …………………… (2) if Difference-A = PB Then Reset = YES ………………………… (3) Where, Difference-A: The proper size of the window,
1 Te - the difference between the maximum value of the fixed number of fields included in the table (= W opt -W max), Reset: reset (NO / YES), NB: the large negative (N egative B ig), ZR : approximately zero (Z e R o), PB : positive atmospheric (P ositive B ig), nO : not reset, YES: it resets.

【0232】上記(1)〜(3)の各ルールの意味は、
以下の通りである。
The meanings of the above rules (1) to (3) are as follows:
It is as follows.

【0233】ルール(1):ウインドウの適正サイズ
と、固定フィールド数の最大値との差が負で大なら、ウ
インドウ・サイズを再設定しない。
Rule (1): If the difference between the proper size of the window and the maximum value of the fixed field number is negative and large, the window size is not reset.

【0234】ルール(2):ウインドウの適正サイズ
と、固定フィールド数の最大値との差がほぼゼロなら、
ウインドウ・サイズを再設定しない。
Rule (2): If the difference between the proper size of the window and the maximum number of fixed fields is almost zero,
Do not reset window size.

【0235】ルール(3):ウインドウの適正サイズ
と、固定フィールド数の最大値との差が正で大なら、ウ
インドウ・サイズを再設定する。
Rule (3): If the difference between the proper size of the window and the maximum value of the fixed fields is positive and large, the window size is reset.

【0236】図34に上記ルールによる推論の様子を示
す。図27のグレ−ド値リスト−Aに従い求めたルール
(1)の前件部の条件への適合度をg1とする。する
と、ルール(1)による再設定しない、するのグレード
値として、。図28より{g1,0.0}を得る。ルール
(2)、(3)についても同様に処理し、それぞれ、
{g2,0.0}(ルール2)、{0.0,g3}(ルール3)
と結論する。最後に、上記三つの推論結果をファジィ論
理和(max)演算により統合する。図34最右列最下段
にその結果を示す。
FIG. 34 shows a state of inference based on the above rule. The degree of conformity with the condition of the antecedent part of rule (1) obtained according to the grade value list-A of FIG. 27 is g 1 . Then, as the grade value of Do not reset according to rule (1) ,. From FIG. 28, {g 1 , 0.0} is obtained. The same applies to rules (2) and (3),
{G 2 , 0.0} (rule 2), {0.0, g 3 } (rule 3)
Conclude that Finally, the above three inference results are integrated by a fuzzy logical sum (max) operation. The results are shown in the lowermost row of the rightmost column in FIG. 34.

【0237】そして、求めた再設定する、しないのグレ
ード値のうちの、大きい方を採用して再設定するか否か
を決定する。グレード値が同一ならば、再設定しないも
のとする。
Then, a larger one of the obtained grade values of resetting and not resetting is adopted and it is determined whether or not to reset. If the grade values are the same, do not reset.

【0238】そして、上記によりウインドウ・サイズを
再設定することが決定されたら、テーブル管理テーブル
-B380のデータベース・リスト-B(図11(b))
の"ウインドウ・サイズ"フィールドをウインドウの適正
サイズに再設定する。
Then, when it is decided to reset the window size by the above, the table management table
-B380 database list-B (Fig. 11 (b))
Reset the "Window size" field of to the proper size for the window.

【0239】次に、固定フィールド順序付け処理400
について説明する。
Next, the fixed field ordering process 400 is performed.
Will be described.

【0240】前述したように、この処理は、対象データ
ベースに含まれるテーブルの総数が2以上の場合に実行
される。
As described above, this processing is executed when the total number of tables included in the target database is 2 or more.

【0241】この処理では対象デ−タベ−スのすべての
テーブルにつき、テ−ブル管理テ−ブル−B380に示
される層順、層内テーブル順序の順に、固定フィールド
の順序付けを行う。
In this processing, for all the tables of the target database, the fixed fields are ordered in the order of the layers shown in the table management table B380 and the in-layer table order.

【0242】図35はテーブル-2(太枠)の固定フィ
−ルドの順序付けを行う場合の処理をを示したものであ
る。
FIG. 35 shows the processing for ordering the fixed fields of Table-2 (thick frame).

【0243】図35(b)は、図35(a)で示される
データベ−スにおいて、テーブル-2とリレーションの
あるテーブル及びリレーションのみを残し、その他は対
象外として除去したもの、同図(c)は、テーブル-2
の各固定フィールドにまで立ち入って、各固定フィール
ドが、どのテーブルとリレーションがあるかを示したも
のである。
FIG. 35 (b) shows the database shown in FIG. 35 (a) in which only the table having a relation with Table-2 and the relation are left, and the others are excluded from the target. ) Is the table-2
Each fixed field shows which table and relation each related field has.

【0244】同図(c)に示すように、前述したテ−ブ
ルの層分類、層内順序付けを行っても、フィ−ルド間の
リレ−ションを表示すると一般にはリレーションを表す
矢印が交叉する。そこで、本処理では、同図(d)のよ
うにフィールドの順序を入れ替えて、この交叉をなくす
るようにする。
As shown in (c) of the same figure, even if the layer classification and the intra-layer ordering of the table described above are performed, when the relation between fields is displayed, generally the arrows indicating the relation intersect. . Therefore, in this processing, the order of the fields is changed as shown in FIG.

【0245】本テーブル内フィールド順序付け処理で
は、この交叉する矢印の数が最小となるような、固定フ
ィールドの順序付けを、テーブル内で行う。
In the field ordering process in this table, ordering of fixed fields is performed in the table so that the number of intersecting arrows is minimized.

【0246】このテーブル内フィールド順序付けの問題
は、組み合わせ最適化の問題であり、分枝限定法を適用
して、その最適解を見出す。
The problem of field ordering in the table is a problem of combinatorial optimization, and the branch and bound method is applied to find the optimum solution.

【0247】固定フィールド順序付けにおける下界計算
法の概要を図36に示す。
An outline of the lower bound calculation method in fixed field ordering is shown in FIG.

【0248】同図(a)はテーブル-2内で先頭に配置
するフィールドをフィールド-1と決め、その他のフィ
ールドの順序は決めていない部分問題に対応するマトリ
クスである。ただし、いま処理対象としているテ−ブル
2については固定フィ−ルド毎に他のテ−ブルとのリレ
−ションをも示すようにしている。固定フィ−ルドにつ
いても黒要素、白要素の意味は前述してきた各マトリク
スと同じである。ただし、ここでは、フィ−ルドAとテ
−ブルBとのリレ−ションとして、フィ−ルドAとテ−
ブルBに属するフィ−ルドとのリレ−ションを用いてい
る。
FIG. 16A is a matrix corresponding to a subproblem in which the field to be placed at the top in table-2 is determined as field-1, and the order of the other fields is not determined. However, regarding the table 2 to be processed, the relation with other tables is also shown for each fixed field. With respect to the fixed field, the meaning of the black element and the white element is the same as that of each matrix described above. However, here, as a relation between the field A and the table B, the field A and the table are connected.
The relation with the field belonging to Bull B is used.

【0249】このようなマトリクスは、図8、9のテ−
ブル/フィ−ルド属性テ−ブル、図11のテ−ブル管理
テ−ブル−B380の情報を参照して作成する。
Such a matrix has the tables shown in FIGS.
It is created by referring to the information of the table / table attribute table and the table management table B380 in FIG.

【0250】さて、この部分問題における交叉する矢印
の数とは、同図(a)において二種の(密と疎な)実線
のハッチングを施したマトリクス要素の内で、それが黒
となっている要素が他と交叉するか否かを判定し、交叉
すると判定した要素を集計したものである。
The number of crossing arrows in this subproblem means that the black matrix element in the two types of matrix elements (solid and sparse) hatched in FIG. It is determined whether or not the existing element intersects with other elements, and the elements determined to intersect are aggregated.

【0251】また、図36(a)における、密な実線の
ハッチングを施した四つの部分(R1、R2、R3、R4
のうちの、R1とR2における交叉の判定方法は同図
(b)、(c)に示すように、R1やR2において、交叉
判定すべき黒要素の右上または左下(同図(b)の太
枠)部分に黒要素が存在する時、交叉する。そして、さ
らに、存在しない時には、R3もしくはR4(R1にはR3
が、R2にはR4が、それぞれ対応)の対応する要素の右
上または左下(同図(c)の太枠)部分に黒要素が存在
する時、交叉し、存在しない時、交叉しない。
Further, in FIG. 36 (a), the four solid hatched portions (R 1 , R 2 , R 3 , R 4 )
Determination method figure of crossover in R 1 and R 2 of (b), as shown in (c), the R 1 and R 2, upper right or lower left (FIG black elements to be determined crossover ( When there is a black element in the (bold frame) portion of b), it intersects. Further, when it does not exist, R 3 or R 4 (R 1 is R 3
However, when there is a black element in the upper right or lower left (bold frame in FIG. 5C) of the corresponding element of R 2 and R 4 , the black element crosses, and when it does not exist, it does not cross.

【0252】図36(a)における、残りの、R3とR4
における交叉の判定方法も、上記と同様である。
The remaining R 3 and R 4 in FIG.
The method of determining the crossover in is similar to the above.

【0253】すなわち、R3やR4において、交叉判定す
べき黒要素の右上または左下(同図(c)の太枠)部分
に黒要素が存在する時、交叉し、存在しない時、さら
に、R1、R2(R3にはR1が、R4にはR2が、それぞれ
対応)の対応する要素の右上または左下(同図(b)の
太枠)部分に黒要素が存在する時、交叉し、存在しない
時、交叉しない。
That is, in R 3 and R 4 , when there is a black element in the upper right or lower left portion (thick frame in FIG. 7C) of the black element to be crossed, when it is crossed and there is no black element, R 1, R 2 (in R 3 R 1 is the R 4 R 2 are each supported) corresponding black elements in the upper right or portion (the thick frame in FIG (b)) the lower left elements are present When they cross, when they do not exist, they do not cross.

【0254】また、図36(a)における、疎な実線の
ハッチングを施した四つの部分(R’1、R’2
R’3、R’4)のうちの、R’1とR’2における交叉の
判定方法を同図(d)、(e)に示す。
In addition, in FIG. 36A, four parts (R ′ 1 , R ′ 2 ,
Of the R ′ 3 and R ′ 4 ), the method of determining the crossover at R ′ 1 and R ′ 2 is shown in FIGS.

【0255】R’1やR’2において、交叉判定すべき黒
要素の右上部分、右下部分、左上のうちのフィールド順
序が確定していない部分、左下のうちのフィールド順序
が確定していない部分と確定している部分の両方(同図
(d)の太枠)に黒要素が存在するか否かで判定する。
[0255] In R '1 and R' 2, the upper right portion of the black element to be determined crossover, the lower right portion, a portion field order is not fixed among the upper left, the field order of the bottom left not determined It is determined whether or not the black element exists in both the part and the confirmed part (the thick frame in FIG. 7D).

【0256】例えば、交叉判定すべき黒要素の左下のう
ちの、フィールド順序が確定している部分に黒要素が存
在する時、テーブルを、どう順序付けしても、必ず交叉
するので、交叉すると判定する。
For example, when there is a black element in the lower left portion of the black element to be cross-judged for which the field order is fixed, the table is always crossed regardless of how the table is ordered. To do.

【0257】また、上記部分に黒要素が存在しない時で
も、残り四つの部分の、いずれの部分にも黒要素が存在
する時や、いずれか一つの部分を残して、残り三つの部
分には、すべて黒要素が存在する時には、必ず交叉する
ので、交叉すると判定する。
Further, even when the black element does not exist in the above-mentioned part, when the black element exists in any of the remaining four parts, or when any one part is left and the remaining three parts remain , When all black elements are present, they are always crossed, so it is determined to cross.

【0258】以下同様にして、残りの四部分のうち、黒
要素の存在する部分が二つの場合、一つの場合、全然な
い場合の、各々につき、定めた所定の交叉判定条件に従
って交叉判定する。
Similarly, among the remaining four parts, cross judgment is performed according to a predetermined predetermined cross judgment condition for each of the case where there are two black elements, the case where there is one black element, and the case where there is no black element.

【0259】また、テーブルをどう順序付けしても、必
ず交叉する、と判定されなかった時は、さらに、
R’3、R’4(R’1にはR’3が、R’2にはR’4が、
それぞれ対応)の対応する要素の右上のうちのフィール
ド順序が確定している部分と確定していない部分の両
方、右下部分、左上のうちのフィールド順序が確定して
いない部分、左下部分(同図(e)の太枠)に黒要素が
存在するか否かで判定する。
If it is not determined that the tables are always crossed no matter how the tables are ordered,
R '3, R' 4 ( ' the 1 R' R 3 is R 'in the 2 R' 4 is,
In the upper right of the corresponding element of (corresponding to each), both the part where the field order is fixed and the part where it is not fixed, the lower right part, the part where the field order is not fixed in the upper left, the lower left part (the same). It is determined whether or not a black element exists in the thick frame (e).

【0260】例えば、交叉判定すべき黒要素の右上のう
ちの、フィールド順序が確定している部分に黒要素が存
在する時、テーブルを、どう順序付けしても、必ず交叉
するので、交叉すると判定する。
For example, when there is a black element in the part of the upper right of the black element to be cross-judged for which the field order is fixed, the table is always crossed, no matter how the table is ordered. To do.

【0261】また、上記部分に黒要素が存在しない時で
も、残りの四部分のいずれの部分にも黒要素が存在する
時や、いずれか一つの部分を残して、残り三つの部分に
は、すべて黒要素が存在する時には、必ず交叉するの
で、交叉すると判定する。
Further, even when there is no black element in the above portion, when there is a black element in any of the remaining four portions, or when any one portion is left and the remaining three portions are When all black elements are present, they are always crossed, so it is determined to cross.

【0262】以下同様にして、残りの四部分のうち、黒
要素の存在する部分が二つの場合、一つの場合、全然な
い場合の、各々につき、必ず交叉するという交叉判定条
件を定め、これに従って判定する。
Similarly, of the remaining four parts, when there are two parts where black elements are present, when there is one black part, and when there are no black parts, a crossing judgment condition is defined so as to always cross, and according to this, judge.

【0263】図36(a)における、残りのR’3
R’4における交叉の判定方法も、上記と同様である。
[0263] in FIG. 36 (a), the even determination method of crossover in the remaining R '3 and R' 4, is as defined above.

【0264】すなわち、R’3やR4’において、交叉判
定すべき黒要素の右上のうちのフィールド順序が確定し
ている部分と確定していない部分の両方、右下部分、左
上のうちのフィールド順序が確定していない部分、左下
部分(同図(e)の太枠)に黒要素が存在するか否かで
判定する。
[0264] That is, in the R '3 and R 4', both of the portion not fixed with the portion where the field order of the top right of the black component to be determined crossover has been determined, the lower right portion, of the upper left It is determined whether or not a black element exists in the part where the field order is not fixed and the lower left part (bold frame in FIG. 7E).

【0265】例えば、交叉判定すべき黒要素の右上のう
ちの、フィールド順序が確定している部分に黒要素が存
在する時、テーブルを、どう順序付けしても、必ず交叉
するので、交叉すると判定する。
For example, when there is a black element in the part of the upper right of the black element to be cross-judged for which the field order is fixed, the table is always crossed regardless of how the table is ordered. To do.

【0266】また、上記部分に黒要素が存在しない時で
も、残りの四部分のいずれの部分にも黒要素が存在する
時や、いずれか一つの部分を残して、残り三つの部分に
は、すべて黒要素が存在する時には、必ず交叉するの
で、交叉すると判定する。
Further, even when there is no black element in the above portion, when there is a black element in any of the remaining four portions, or when any one portion is left and the remaining three portions are When all black elements are present, they are always crossed, so it is determined to cross.

【0267】以下同様にして、残りの四部分のうち、黒
要素の存在する部分が二つの場合、一つの場合、全然な
い場合の、各々につき所定の交叉判定条件に従って判定
する。
Similarly, among the remaining four parts, when there are two parts where the black element exists, when there is one black part, and when there is no black part, the judgment is made according to the predetermined crossing judgment condition.

【0268】また、テーブルをどう順序付けしても、必
ず交叉する、と判定されなかった時は、さらに、対応す
るR’1、R’2(R’3にはR’1が、R’4にはR’
2が、それぞれ対応)を調べ、対応する要素の右上部
分、右下部分、左上のうちのフィールド順序が確定して
いない部分、左下のうちのフィールド順序が確定してい
ない部分と確定している部分の両方(同図(d)の太
枠)に黒要素が存在するか否かで判定する。
[0268] Further, even when ordered what the table, when it is not determined always intersect, and further, 'the 3 R' corresponding R '1, R' 2 ( R 1 is, R '4 R '
2 corresponds to each), and the upper right part, the lower right part, the upper left part of the corresponding element where the field order is not fixed, and the lower left part where the field order is not fixed It is determined whether or not a black element exists in both of the parts (thick frame in FIG. 7D).

【0269】例えば、交叉判定すべき黒要素の左下のう
ちの、フィールド順序が確定している部分に黒要素が存
在する時、テーブルを、どう順序付けしても、必ず交叉
するので、交叉すると判定する。
For example, when a black element exists in the lower left portion of the black element to be cross-judged for which the field order is fixed, the table is always crossed regardless of how the table is ordered. To do.

【0270】また、上記部分に黒要素が存在しない時で
も、残りの四部分のいずれの部分にも黒要素が存在する
時や、いずれか一つの部分を残して、残り三つの部分に
は、すべて黒要素が存在する時には、必ず交叉するの
で、交叉すると判定する。
Further, even when there is no black element in the above portion, when there is a black element in any of the remaining four portions, or when any one portion is left and the remaining three portions are When all black elements are present, they are always crossed, so it is determined to cross.

【0271】以下同様にして、残りの四部分のうち、黒
要素の存在する部分が二つの場合、一つの場合、全然な
い場合の、各々につき、所定の交叉判定条件に従って判
定する。
Similarly, among the remaining four portions, when there are two portions where the black element exists, when there is one black element, and when there is no black element, determination is made according to a predetermined crossing determination condition.

【0272】ただし、このレベルまで交叉判定を行うか
否は任意としてよい。このレベルまで交叉判定を行わな
くても、後述するグラフィック形式表示関数による表示
によって、従来より交叉の少ない表示を得ることができ
る。
However, whether or not the crossover determination is performed up to this level may be arbitrary. Even if the crossing determination is not performed up to this level, it is possible to obtain a display with less crossing than the conventional display by the display by the graphic display function described later.

【0273】次に、このような交叉判定、下界判定を用
いた分枝限定法によるフィールド順序の探索過程は図3
7のようになる。
Next, the process of searching the field order by the branch and bound method using such crossover judgment and lower bound judgment is shown in FIG.
It becomes like 7.

【0274】まず、先頭フィールドをどれにするかによ
り三通り(フィールド-1、2、3)考えられるので。
各々をその下界とともに列挙する。上記列挙された三つ
の部分問題の下界を調べる。最良の下界を与えるもの
は、フィールド-2、3の二つある。複数の場合は、深
さ優先、深さ同一なら、最初に列挙したものを優先する
ので、フィールド-2が分岐される。先頭フィールドを
フィールド-2に決めた時、次をどれにするかにより、
二通り(フィールド-1、フィールド-3)ある。各々を
その下界とともに列挙する。列挙した二つの部分問題
と、先の残りの部分問題の下界を調べる。最良の下界を
与えるものはフィールド-2→3とフィールド-3であ
る。深さを優先して、フィールド-2→3が選択され
る。最終的にフィールド-2→3→1のフィールド順序
を得る。
First, three types (fields-1, 2, 3) can be considered depending on which of the top fields is set.
Each is listed along with its lower bounds. Examine the lower bounds of the three subproblems listed above. Two of the best lower bounds are Fields-2 and 3. If there are a plurality of depths, if the depths are the same, the one listed first has priority, so field-2 is branched. Depending on which of the following is selected when the first field is field-2,
There are two types (Field-1, Field-3). Each is listed along with its lower bounds. Examine the lower bounds of the two subproblems listed and the remaining subproblems above. The ones that give the best lower bounds are field-2 → 3 and field-3. Field-2 → 3 is selected with priority on depth. Finally, the field order of field-2 → 3 → 1 is obtained.

【0275】上記処理により図35(c)に示した各フ
ィールドは同図(d)のように順序付けされる。
By the above processing, the fields shown in FIG. 35 (c) are ordered as shown in FIG. 35 (d).

【0276】固定フィールド順序付け処理400は、こ
のようにして各テ−ブルの固定フィ−ルドの順序付けを
行い、その順序に従い、各固定フィ−ルドのフィ−ルド
No.を図8のテーブル属性テーブルのフィールド順序
リスト-B(図8(e))に記述する。
In the fixed field ordering process 400, the fixed fields of the respective tables are thus ordered, and the field numbers of the fixed fields of the fixed fields are assigned according to the order. Is described in the field order list-B (FIG. 8 (e)) of the table attribute table of FIG.

【0277】次に、固定フィ−ルド設定処理390につ
いて説明する。
Next, the fixed field setting processing 390 will be described.

【0278】前述したように、この処理は、データベー
スのテーブル総数が1の場合に実行され、この固定フィ
ールドがないテーブルの固定フィールド数F’fixを、
以下により設定する。
As described above, this processing is executed when the total number of tables in the database is 1, and the fixed field number F'fix of the table having no fixed field is
Set by the following.

【0279】 F’fix=min(W,Ftotal) …………………………………………(4 ) ここに、F’fix:対象テ−ブルの固定フィールド数、 W:ウィンドウサイズ決定処理390後のウインドウ・
サイズ、 Ftotal:対象テーブルの総フィールド数(すべてが浮
動フィールド)である。残りの浮動フィールドがあれ
ば、すなわち、Ftotal−F’fix>0なら、それらはす
べて浮動フィールドとする。
F ′ fix = min (W, F total ) …………………………………… (4) where F ′ fix is the fixed number of fields in the target table , W : Window after window size determination processing 390
Size, F total : Total number of fields in the target table (all are floating fields). If there are remaining floating fields, ie F total −F ′ fix > 0, then they are all floating fields.

【0280】そして、固定フィ−ルド設定処理390
は、このような処理の結果に従い、図8のテーブル属性
テーブルのテーブル・リスト(図8(b))の"固定フ
ィールド総数"、"浮動フィールド総数"、固定フィ−ル
ド、浮動フィ−ルドそれぞれについての"フィールド順
序リスト-Aへのエントリ行No."フィールドを更新す
る。また、固定フィ−ルド総数分の浮動フィ−ルドのフ
ィ−ルドNo.を、浮動フィ−ルドについての"フィー
ルド順序リスト-A(図8(d))より、固定フィ−ル
ドについての"フィールド順序リスト-A(図8(d))
に移動する。
Then, the fixed field setting process 390 is executed.
In accordance with the result of such processing, "fixed field total number", "floating field total number", fixed field, and floating field in the table list (FIG. 8B) of the table attribute table of FIG. Update the "Field Order List-Entry Row No. A to A" field for. In addition, the field numbers of the floating fields corresponding to the total number of fixed fields. From the "field order list-A (Fig. 8 (d)) for the floating field" to the "field order list-A (Fig. 8 (d)) for the fixed field".
Go to

【0281】次に、テ−ブル表示様式決定処理420に
ついて説明する。
Next, the table display style determination processing 420 will be described.

【0282】この処理では、対象データベースの、すべ
てのテーブルを対象に、その表示様式を決定する。
In this processing, the display style is determined for all the tables in the target database.

【0283】図7(b)に示したグラフィック表示のウ
ィンドウでは、固定フィールドのフィ−ルド名はすべて
表示するが、浮動フィールドのフィ−ルド名は、非表示
(NON)、半表示(HALF)、全表示(FULL)
の三種類の表示様式のうちのいずれかで表示する。この
浮動フィ−ルドの表示様式を定めるのが本処理である。
In the window of the graphic display shown in FIG. 7B, the field names of fixed fields are all displayed, but the field names of floating fields are non-display (NON) and half-display (HALF). , All display (FULL)
It is displayed in one of the three display formats. This processing determines the display mode of this floating field.

【0284】まず、図38に、これらの表示様式を示
す。
First, FIG. 38 shows these display formats.

【0285】同図(a)は浮動フィールド非表示の例で
ある。左が通常の表示スタイルであり、ハッチングを施
した部分が固定フィールドである。浮動フィールドはあ
るが、表示していない旨の記号(▼)を末端に表示す
る。そして、これがクリックされた場合に、右に示した
ように浮動フィールドの一部を表示する(また、スクロ
ールにより他の浮動フィールドも参照可能とする)。そ
して、その末端には、これを閉じる時の指示用に、記号
(▲)を表示する。これをクリックされた場合には、左
の通常の表示スタイルに戻る。
FIG. 28A shows an example in which the floating field is not displayed. The left is the normal display style, and the hatched area is the fixed field. Although there is a floating field, a symbol (▼) indicating that it is not displayed is displayed at the end. Then, when this is clicked, a part of the floating field is displayed as shown on the right (and other floating fields can be referred to by scrolling). Then, at the end thereof, a symbol (▲) is displayed for an instruction when closing this. When this is clicked, it returns to the normal display style on the left.

【0286】また、同図(b)は浮動フィールド半表示
の例である。左が通常の表示スタイルである。浮動フィ
ールドのうちの半分を固定フィールドに続けて表示して
おき、残り半分は表示していない旨の記号(▼)を末端
に表示する。これがクリックされた場合には、右に示し
たように残り半分の浮動フィールドを続けて表示する。
そして、その末端には、これを閉じる時の指示用に記号
(▲)を表示する。これをクリックされた場合には、左
の通常の表示スタイルに戻る。
Further, FIG. 16B shows an example of floating field half display. The left is the normal display style. Half of the floating field is displayed following the fixed field, and the other half is displayed with a symbol (▼) indicating that it is not displayed. If it is clicked, it will continue to display the remaining half floating fields as shown on the right.
Then, at the end thereof, a symbol (▲) is displayed for an instruction when closing this. When this is clicked, it returns to the normal display style on the left.

【0287】また、同図(c)は浮動フィールド全表示
の例である。すべての浮動フィールドを固定フィールド
に続けて表示する。
Further, FIG. 14C shows an example of full floating field display. Display all floating fields, followed by fixed fields.

【0288】本表示様式決定処理では、浮動フィールド
のあるテーブルを対象に、その表示様式として、上記三
種の表示様式のうち、どの表示様式で表示するのが適切
かをファジィ・ルールを用いて決定する。決定に用いる
ルールは、図26のデータに従った以下の五つである。
In this display style determination processing, a fuzzy rule is used to determine which of the above three types of display styles is appropriate for the table having a floating field. To do. The rules used for the determination are the following five according to the data in FIG.

【0289】 if Difference-B=NB and Visibility=ANY Then Style=FULL…(5) if Difference-B=ZR and Visibility=ANY Then Style=FULL…(6) if Difference-B=PB and Visibility=PS Then Style=NON……(7) if Difference-B=PB and Visibility=PM Then Style=HALF…(8) if Difference-B=PB and Visibility=PB Then Style=FULL…(9) ここに、Difference-B:テ−ブルの総フィールド数と
ウインドウ・サイズとの差(=Ftotal−W)、 Visibility:ウインドウ内に表示可能な浮動フィール
ドが全体に占める割合(=min(Ffloat,(W−F
fix))/Ffloat)、 Style:表示様式(NON/HALF/FULL)、 NB:負で大(egative ig)、 ZR:ほぼゼロ(eo)、 PS:正で小(ositive mall)、 PM:正で中(ositive edium)、 PB:正で大(ositive ig)、 ANY:任意(ANY)、 NON:非表示、HALF:半表示、FULL:全表示 である。
If Difference-B = NB and Visibility = ANY Then Style = FULL ... (5) if Difference-B = ZR and Visibility = ANY Then Style = FULL ... (6) if Difference-B = PB and Visibility = PS Then Style = NON ... (7) if Difference-B = PB and Visibility = PM Then Style = HALF ... (8) if Difference-B = PB and Visibility = PB Then Style = FULL ... (9) Where Difference-B : Difference between the total number of fields in the table and the window size (= F total -W), Visibility: ratio of floating fields that can be displayed in the window to the whole (= min (F float , ( WF
fix)) / F float), Style: Display Style (NON / HALF / FULL), NB: Negative large (N egative B ig), ZR : almost zero (Z e R o), PS : small positive (P ositive S mall), PM: medium positive (P ositive M edium), PB : a positive large (P ositive B ig), aNY : any (aNY), nON: non-display, hALF: half display, fULL: more Is.

【0290】尚、浮動フィールドなし(Ffloat=0)
のテーブルは対象外とする。
No floating field (F float = 0)
The table is excluded.

【0291】さて、上記(5)〜(9)の各ルールの意
味は以下の通りである。
The meanings of the rules (5) to (9) are as follows.

【0292】ルール(5):総フィールド数とウインド
ウ・サイズとの差が負で大なら、ウインドウ内に表示可
能な浮動フィールドの全体に占める割合に関係無く、全
表示とする。
Rule (5): If the difference between the total number of fields and the window size is negative and large, all the fields are displayed regardless of the ratio of the floating fields that can be displayed in the window.

【0293】ルール(6):総フィールド数とウインド
ウ・サイズとの差がほぼゼロなら、ウインドウ内に表示
可能な浮動フィールドの全体に占める割合に関係無く、
全表示とする。
Rule (6): If the difference between the total number of fields and the window size is almost zero, regardless of the ratio of floating fields that can be displayed in the window to the whole,
Display all.

【0294】ルール(7):総フィールド数とウインド
ウ・サイズとの差が正で大で、ウインドウ内に表示可能
な浮動フィールドの全体に占める割合が正で小なら、非
表示とする。
Rule (7): If the difference between the total number of fields and the window size is positive and large and the ratio of the floating fields that can be displayed in the window to the whole is positive and small, it is not displayed.

【0295】ルール(8):総フィールド数とウインド
ウ・サイズとの差が正で大で、ウインドウ内に表示可能
な浮動フィールドの全体に占める割合が正で中なら、半
表示とする。
Rule (8): If the difference between the total number of fields and the window size is positive and large and the ratio of floating fields that can be displayed in the window to the total is positive and medium, the display is half.

【0296】ルール(9):総フィールド数とウインド
ウ・サイズとの差が正で大で、ウインドウ内に表示可能
な浮動フィールドの全体に占める割合が正で大なら、全
表示とする。
Rule (9): If the difference between the total number of fields and the window size is positive and large, and the ratio of the floating fields that can be displayed in the window to the total is positive and large, then all are displayed.

【0297】図39に上記ルールによる推論の様子を示
す。ルール(5)の前件部の二つの条件への適合度を図
29、30に従い求め、これをg’11、g’12とする。
二つの条件は「and」で結合されているので、これらの
うちの小さい方を採用し(これをg’1とする)、図3
1によりルール(5)による非表示、半表示、全表示の
グレード値として、{0.0,0.0,g’1}を得る。ルー
ル(6)〜(9)についても同様に処理し、それぞれ、
{0.0,0.0,g’2}、{g’3,0.0,0.0}、{0.0,
g’4,0.0}、{0.0,0.0,g’5}と結論する。
FIG. 39 shows a state of inference according to the above rule. The degrees of conformity to the two conditions of the antecedent part of the rule (5) are obtained according to FIGS. 29 and 30, and these are defined as g ′ 11 and g ′ 12 .
Because two conditions are combined with "and" employs the smaller of these out (referred to as g '1), FIG. 3
1 obtains {0.0, 0.0, g ′ 1 } as the grade value of non-display, half-display, and full-display according to the rule (5). Rules (6) to (9) are processed in the same manner,
{0.0,0.0, g '2}, {g' 3, 0.0,0.0}, {0.0,
g conclude that '4, 0.0}, {0.0,0.0 , g' 5}.

【0298】最後に、上記五つの推論結果をファジィ論
理和(max)演算により統合する。図39最右列最下段
にその結果を示す。
Finally, the above five inference results are integrated by fuzzy logical sum (max) operation. The results are shown in the lowermost row of the rightmost column in FIG.

【0299】このようにして求めた表示様式毎のグレー
ド値は、テーブル属性テーブルのテーブル・リスト(図
8(b))の"表示様式グレード値"フィールドに記述す
る。そして、上記で求めたグレード値をもとに表示様式
を決定する。三種の表示様式の内でグレード値が最大の
表示様式を一つ選択する。最大のグレード値を有する表
示様式が複数存在する場合には、全表示、半表示、非表
示の順に、表示優先度が高いものとし、優先度の最も高
い表示様式を一つ選択する。
The grade value thus obtained for each display style is described in the "display style grade value" field of the table list (FIG. 8B) of the table attribute table. Then, the display format is determined based on the grade value obtained above. Select one of the three display formats with the maximum grade value. When there are a plurality of display styles having the maximum grade value, the display priority is set in the order of full display, half display, and non-display, and the display style having the highest priority is selected.

【0300】選択した表示様式は、テーブル属性テーブ
ルのテーブル・リスト(図8(b))の"テーブル表示
様式"フィールドに記述する。
The selected display style is described in the "table display style" field of the table list (FIG. 8B) of the table attribute table.

【0301】また、本テ−ブル表示様式決定処理420
では、"テーブル表示様式"フィールドに記述した表示様
式に従って、表示すべき浮動フィールドの数を計算する
(表示様式が全表示の時、表示フィールド数=浮動フィ
ールド総数;半表示の時、表示フィールド数=(浮動フ
ィールド総数+1)/2;非表示の時、表示フィールド
数=0)。そして、計算結果は、テーブル属性テーブル
のテーブル・リスト(図8(b))の"浮動フィールド
表示フィールド数"フィールドに記述する。
Also, this table display style determination processing 420
Then, calculate the number of floating fields to be displayed according to the display style described in the "Table display style" field.
(When the display format is full display, the number of display fields = total number of floating fields; when half-displayed, the number of display fields = (total number of floating fields + 1) / 2; when not displayed, the number of display fields = 0). Then, the calculation result is described in the "floating field display field number" field of the table list (FIG. 8B) of the table attribute table.

【0302】次に、テ−ブル表示位置決定処理部430
について説明する。
Next, the table display position determination processing section 430 is executed.
Will be described.

【0303】本処理では、まず全テーブルを配置するた
めに必要な領域のサイズを、テ−ブル管理テ−ブル−B
380、図8のテ−ブル属性テ−ブルを参照しながら、
以下により計算する。
In this processing, first, the size of the area required for arranging all the tables is set to the table management table-B.
380, referring to the table attribute table of FIG.
Calculate as follows.

【0304】 配置領域横サイズ=層総数×層の横サイズ………………………………(10) 配置領域縦サイズ=層内テーブル数の最大値× テーブルの縦サイズの最大値……………(11) ここに、式(10)における"層の横サイズ"は、外部より
与える一層あたりの適正な横サイズであり、式(11)に
おける"テーブルの縦サイズ"は、(固定フィールド数+
浮動フィールド表示フィールド数)×一フィールドあた
りの縦サイズとして与えられる。
Layout area horizontal size = total number of layers × horizontal size of layer ……………………………… (10) Layout area vertical size = maximum number of tables in layer × maximum vertical size of table ……………… (11) where “Lateral size of layer” in formula (10) is an appropriate lateral size per layer given from the outside, and “vertical size of table” in formula (11) is (Fixed number of fields +
Floating field number of display fields) x vertical size per field.

【0305】上記の結果、図40(a)に示す大きさの
領域が求められたならば、このサイズを、テーブル管理
テーブル-B380のデータベース・リスト-B(図11
(b))の"配置領域サイズ"フィールドに記述する。
If an area of the size shown in FIG. 40 (a) is obtained as a result of the above, this size is used as the database list-B of the table management table-B380 (see FIG. 11).
It is described in the "placement area size" field of (b)).

【0306】引き続き、各テーブルを上記領域に配置す
る時の位置を決定する。すなわち、まず、各層を配置す
る領域を、図40(a)の領域を横方向に層の数分に区
切って求め、各層の領域を、縦方向に、その層に含まれ
るテ−ブル数分に区切って、各テーブルを配置する領域
を決め(図40(b)、(c))、各領域上に、その領
域に対応するテーブルを上下左右にセンタリングして配
置する(図40(d))ことにより、各テ−ブルを配置
する位置を決定する。領域に対応するテーブルとは、そ
の領域に対応する層に属するテ−ブルであって、図11
(d)に示すテ−ブル順序リスト−B上の順番が、その
領域の縦方向順番と同じであるテ−ブルである。
Subsequently, the position when arranging each table in the above area is determined. That is, first, the area in which each layer is arranged is obtained by dividing the area of FIG. 40 (a) into the number of layers in the horizontal direction, and the area of each layer is vertically divided by the number of tables included in the layer. Areas for arranging each table are determined by dividing the area into parts (FIGS. 40 (b) and (c)), and the tables corresponding to the areas are arranged by vertically and horizontally centering on each area (FIG. 40 (d)). ) Determines the position where each table is arranged. The table corresponding to the area is a table belonging to the layer corresponding to the area, and the table shown in FIG.
The order on the table order list-B shown in (d) is the same as the vertical order of the area.

【0307】ここで決めたテーブル位置は、テーブル属
性テーブルのテーブル・リスト(図8(b))の"テー
ブル表示位置"フィールドに記述する。
The table position determined here is described in the "table display position" field of the table list (FIG. 8B) of the table attribute table.

【0308】最後に、データベース構造グラフィック形
式表示440について説明する。
Finally, the database structure graphic format display 440 will be described.

【0309】この処理は、テ−ブル管理テ−ブル−B3
80、図8、9のテ−ブル/フィ−ルド属性テ−ブル3
40を参照して、対象データベースの、図7(b)に示
すデータベース構造図をグラフィック形式で表示する。
This processing is carried out in the table management table B3.
80, table / field attribute table 3 in FIGS.
40, the database structure diagram of the target database shown in FIG. 7B is displayed in a graphic format.

【0310】この時点で、表示に必要な各種のデータ
(各テーブルの表示位置、サイズ、固定/浮動フィール
ド、フィールド間リレーション、リレーション表示の可
否等)はテーブル340、380にすべて記憶されてい
る。
At this point in time, various data necessary for display (display position of each table, size, fixed / floating field, inter-field relation, availability of relation display, etc.) are all stored in the tables 340, 380.

【0311】この処理では、テ−ブルの表示を、図8の
テ−ブルリストのテ−ブル表示位置で指定される位置に
配置する。テ−ブルの表示は、そのテ−ブル名称を表示
し、その下に、そのテ−ブルの固定フィ−ルドのフィ−
ルド名を、図8(e)のフィ−ルド順序リスト−Bに従
った順番で表示し、さらに、その下に、図9のテ−ブル
リストの浮動フィ−ルド表示フィ−ルド数分の浮動フィ
−ルドのフィ−ルド名を、図8(e)のフィ−ルド順序
リスト−Bに従った順番で表示することにより行う。ま
た、前述したように、必要に応じて末端に記号(▼)を
表示する。
In this processing, the display of the table is arranged at the position designated by the table display position of the table list in FIG. The table display shows the table name, and the fixed field field of the table is displayed below the table name.
The field names are displayed in the order in accordance with the field order list B in FIG. 8E, and below that, the number of floating field display fields of the table in FIG. 9 is displayed. This is done by displaying the field names of the floating fields in the order according to the field order list B of FIG. 8 (e). Further, as described above, a symbol (▼) is displayed at the end if necessary.

【0312】また、この処理では、さらに、図9のフィ
−ルド属性テ−ブルで示されるフィールド間のリレーシ
ョンを、リレ−ションを持つフィ−ルドのフィ−ルド名
称間を矢印で結ぶことにより表示する。この矢印は、前
述してきたように1対1の対応、1対多の対応に応じて
表示する。
Further, in this processing, the relation between the fields shown in the field attribute table of FIG. 9 is further connected by connecting the field names of the fields having the relation with each other. indicate. This arrow is displayed according to the one-to-one correspondence and the one-to-many correspondence as described above.

【0313】ただし、前述したようにリレーションの表
示では、フィ−ルド属性テ−ブルの"リレーション表示
可否フラグ"フィールド(図9(c))を参照して、隣
接する層間のみを完全な矢印で表示し、残りは矢頭と矢
尾のみの表示にとどめる。
However, as described above, in the display of the relation, only the adjacent layers are indicated by complete arrows by referring to the "relation display enable / disable flag" field (FIG. 9C) of the field attribute table. Display the rest and display only the arrow head and the arrow tail.

【0314】以上の処理によって、図7(b)のウイン
ドウ270に示した表示が実現される。
By the above processing, the display shown in the window 270 of FIG. 7B is realized.

【0315】この表示は、以上説明してきた各処理によ
って矢印の逆流や交叉の少ない、構造の整理された簡潔
な構造図となるので、ユ−ザは、対象データベースの構
造を容易に把握し、これをもとに、データベース関連作
業等を効率的に進めることができる。
Since this display is a simple structural diagram in which the structure of the structure is reduced and there is little backflow or crossing of the arrows due to the processes described above, the user can easily grasp the structure of the target database, Based on this, it is possible to efficiently carry out database-related work and the like.

【0316】以上が本発明の実施例の説明である。The above is the description of the embodiments of the present invention.

【0317】以上説明したように、本実施例によれば、
データベースの構造表示を、表形式とグラフィック形式
とに分け、まず表形式表示で、その概略構造を大局的に
把握し、その後必要に応じて、グラフィック形式表示
で、その詳細構造を把握する方式としているので、デー
タベースの構造を、概略から詳細へと段階的に把握でき
るという効果がある。また、リレーションの逆流やリレ
ーション同志の交叉の少ない、テーブルやフィールドの
配置順序を見出しているので、これら逆流や交叉にまど
わされることなく、容易に構造把握ができる。また、全
体としてバランスのとれた構造図(各テーブルの表示フ
ィールド数はほぼ一定)を作成・表示するので、美感に
訴えた快適な操作環境を提供できる。また、浮動フィー
ルドの表示様式の種類は、必要最低限の、全表示/半表
示/非表示の三種類に限定しているので、これら以外の
コマ切れ表示がなく、使い勝手がよい。
As described above, according to this embodiment,
The structure display of the database is divided into a table format and a graphic format. First, in a table format, the outline structure is grasped broadly, and then, if necessary, a graphic format display is used to grasp the detailed structure. Therefore, there is an effect that the structure of the database can be grasped step by step from the outline to the details. Further, since the arrangement order of the tables and fields in which there is little relation backflow and crossover of relations is found, it is possible to easily grasp the structure without being confused by these backflows and crossovers. In addition, since a well-balanced structural diagram (the number of display fields in each table is almost constant) is created and displayed, a comfortable operating environment that appeals to the beauty can be provided. Further, since the types of display styles of the floating field are limited to the minimum required three types of full display / half display / non-display, there is no frame-out display other than these, which is convenient.

【0318】[0318]

【発明の効果】以上のように、本発明によれば、より利
用者にとって理解が容易なリレ−ショナルデータベース
の構造表示を行うことができる。
As described above, according to the present invention, it is possible to display the structure of the relational database that is easier for the user to understand.

【図面の簡単な説明】[Brief description of drawings]

【図1】情報ネットワークの構成を示すブロック図であ
る。。
FIG. 1 is a block diagram showing a configuration of an information network. .

【図2】クライアント機およびサーバ機のハードウェア
構成を示すブロック図である。
FIG. 2 is a block diagram showing a hardware configuration of a client machine and a server machine.

【図3】クライアント機のソフトウェア構成を示すブロ
ック図である。
FIG. 3 is a block diagram showing a software configuration of a client machine.

【図4】メイン関数、ウインドウ関数の処理手順を示し
た図である。
FIG. 4 is a diagram showing a processing procedure of a main function and a window function.

【図5】本発明の実施例に係るリレ−ショナルデータベ
ースシステムの構成を示すブロック図である。
FIG. 5 is a block diagram showing a configuration of a relational database system according to an embodiment of the present invention.

【図6】本発明の実施例に係るリレーショナル・データ
ベース用ソフトが行う表示例を示した図である。
FIG. 6 is a diagram showing a display example performed by relational database software according to an embodiment of the present invention.

【図7】本発明の実施例において行うデータベースの構
造表示例を表す図である。
FIG. 7 is a diagram showing an example of a database structure display performed in an embodiment of the present invention.

【図8】本発明の実施例において用いるテーブル属性テ
ーブルの構成を示した図である。
FIG. 8 is a diagram showing a configuration of a table attribute table used in the embodiment of the present invention.

【図9】本発明の実施例において用いるフィールド属性
テーブルの構成を示した図である。
FIG. 9 is a diagram showing a configuration of a field attribute table used in the embodiment of the present invention.

【図10】本発明の実施例において用いるテーブル管理
テーブル-Aの構成を示した図である。
FIG. 10 is a diagram showing a configuration of a table management table-A used in the embodiment of the present invention.

【図11】本発明の実施例において用いるテーブル管理
テーブル-Bの構成を示した図である。
FIG. 11 is a diagram showing a configuration of a table management table-B used in the embodiment of the present invention.

【図12】本発明の実施例において用いるテーブル順序
テーブルの構成を示した図である。
FIG. 12 is a diagram showing a configuration of a table order table used in the embodiment of the present invention.

【図13】本発明の実施例において用いる層別テーブル
管理テーブルの構成を示した図である。
FIG. 13 is a diagram showing a configuration of a layer-based table management table used in an embodiment of the present invention.

【図14】本発明の実施例に係る表形式表示ウィンドウ
関数の行う各処理関係を示したブロック図である。
FIG. 14 is a block diagram showing processing relationships performed by a tabular display window function according to an embodiment of the present invention.

【図15】本発明の実施例に係る表形式表示全体制御で
行う処理手順を示した図である。
FIG. 15 is a diagram showing a processing procedure performed in overall control of a tabular display according to an embodiment of the present invention.

【図16】本発明の実施例において行うデータベース分
離処理の概要を示した図である。
FIG. 16 is a diagram showing an outline of database separation processing performed in the embodiment of the present invention.

【図17】本発明の実施例において行うデータベース分
離処理の手順を示した図である。
FIG. 17 is a diagram showing a procedure of database separation processing performed in the embodiment of the present invention.

【図18】本発明の実施例において行うデータベースの
分離の処理における複数テーブルのマトリクス要素の合
成の手順を示した図である。
FIG. 18 is a diagram showing a procedure for synthesizing matrix elements of a plurality of tables in the database separation processing performed in the embodiment of the present invention.

【図19】本発明の実施例において行うデータベース構
造化(テーブル順序付け、テーブル層分類、層内テーブ
ル順序付け)の処理の概要を示した図である。
FIG. 19 is a diagram showing an outline of processing of database structuring (table ordering, table layer classification, in-layer table ordering) performed in the embodiment of the present invention.

【図20】本発明の実施例において行うテーブル順序付
け(分岐限定法を適用)における、下界計算の概要を示
した図である。
FIG. 20 is a diagram showing an outline of lower bound calculation in table ordering (applying the branch and bound method) performed in the example of the present invention.

【図21】本発明の実施例において行うテーブル順序付
け(分岐限定法を適用)における、最適解の探索過程を
示した図である。
FIG. 21 is a diagram showing a process of searching for an optimal solution in table ordering (using the branch and bound method) performed in the example of the present invention.

【図22】本発明の実施例において行うテーブル層分類
の処理手順を示した図である。
FIG. 22 is a diagram showing a processing procedure of table layer classification performed in the embodiment of the present invention.

【図23】本発明の実施例において行う層内テーブル順
序付け(分岐限定法を適用)における、下界計算法の概
要を示した図である。
FIG. 23 is a diagram showing an outline of a lower bound calculation method in the intra-layer table ordering (using the branch and bound method) performed in the example of the present invention.

【図24】本発明の実施例において行う層内テーブル順
序付け(分岐限定法を適用)における、最適解の探索過
程を示した図である。
FIG. 24 is a diagram showing a process of searching for an optimum solution in the intra-layer table ordering (using the branch and bound method) performed in the example of the present invention.

【図25】本発明の実施例において用いる、第一の決定
ルール・テーブル(ウインドウ・サイズ決定ルール・テ
ーブル)の構成を示した図である。
FIG. 25 is a diagram showing a configuration of a first decision rule table (window size decision rule table) used in an embodiment of the present invention.

【図26】本発明の実施例において用いる、第二の決定
ルール・テーブル(テーブル表示様式決定ルール・テー
ブル)の構成を示した図である。
FIG. 26 is a diagram showing a configuration of a second decision rule table (table display style decision rule table) used in an example of the present invention.

【図27】本発明の実施例において用いる、ウインドウ
・サイズ決定ルールの前件部で使用するラベルの、メン
バシップ関数を定義するデータの構成を示した図であ
る。
FIG. 27 is a diagram showing a configuration of data defining a membership function of a label used in the antecedent part of the window size determination rule used in the embodiment of the present invention.

【図28】本発明の実施例において用いる、ウインドウ
・サイズ決定ルールの後件部で使用するラベルの、メン
バシップ関数を定義するデータの構成を示した図であ
る。
FIG. 28 is a diagram showing a structure of data defining a membership function of a label used in a consequent part of a window size determination rule used in the embodiment of the present invention.

【図29】本発明の実施例において用いる、テーブル表
示様式決定ルールの第一の前件部(Difference-B)で
使用するラベルの、メンバシップ関数を定義するデータ
の構成を示した図である。
FIG. 29 is a diagram showing a configuration of data defining a membership function of a label used in the first antecedent part (Difference-B) of the table display style determination rule used in the example of the present invention. .

【図30】本発明の実施例において用いる、テーブル表
示様式決定ルールの第二の前件部(Visibility)で使
用するラベルの、メンバシップ関数を定義するデータの
構成を示した図である。
FIG. 30 is a diagram showing a configuration of data defining a membership function of a label used in the second antecedent part (Visibility) of the table display style determination rule used in the example of the present invention.

【図31】本発明の実施例において用いる、テーブル表
示様式決定ルールの後件部で使用するラベルの、メンバ
シップ関数を定義するデータの構成を示した図である。
FIG. 31 is a diagram showing a structure of data defining a membership function of a label used in a consequent part of a table display style determination rule used in an example of the present invention.

【図32】本発明の実施例に係るグラフィック形式表示
ウィンドウ関数が行う各処理の関係を示したブロック図
である。
FIG. 32 is a block diagram showing the relationship of each processing performed by the graphic format display window function according to the embodiment of the present invention.

【図33】本発明の実施例に係るグラフィック形式表示
全体制御が行う処理手順を示した図である。
FIG. 33 is a diagram showing a processing procedure performed by the overall graphic format display control according to the embodiment of the present invention.

【図34】本発明の実施例において行うウインドウ・サ
イズの再設定の可否(再設定しない/する)を、ファジ
ィ・ルールを用いて決定する手順を示した図である。
FIG. 34 is a diagram showing a procedure for determining whether or not window size can be reset (not reset) by using a fuzzy rule in the embodiment of the present invention.

【図35】本発明の実施例において行う固定フィールド
順序付けの処理の概要をを示した図である。
FIG. 35 is a diagram showing an outline of a fixed field ordering process performed in the example of the present invention.

【図36】本発明の実施例において行う固定フィールド
順序付け(分岐限定法を適用)における、下界計算の手
順を示した図である。
FIG. 36 is a diagram showing a procedure of lower bound calculation in fixed field ordering (using a branch and bound method) performed in an example of the present invention.

【図37】本発明の実施例において行う固定フィールド
順序付け(分岐限定法を適用)における、最適解の探索
過程を示した図である。
FIG. 37 is a diagram showing a process of searching for an optimum solution in fixed field ordering (using a branch and bound method) performed in an example of the present invention.

【図38】本発明の実施例において行う浮動フィールド
の表示様式(非表示/半表示/全表示の三種)を示した
図である。
FIG. 38 is a diagram showing display styles (three types of non-display / half-display / full-display) of floating fields performed in the embodiment of the present invention.

【図39】本発明の実施例において行う浮動フィールド
の表示様式(非表示/半表示/全表示)を、ファジィ・
ルールを用いて決定する手順を示した図である。
FIG. 39 shows a fuzzy display mode (non-display / half-display / full-display) of a floating field performed in the embodiment of the present invention.
It is the figure which showed the procedure which determines using a rule.

【図40】本発明の実施例において行う、テーブル表示
位置決定の概要を示した図である。
FIG. 40 is a diagram showing an outline of table display position determination performed in the embodiment of the present invention.

【符号の説明】[Explanation of symbols]

10…サーバ機、20…リレーショナル・データベー
ス、30…LAN(ocal rea etwork:ローカル
・エリア・ネットワーク)、40…クライアント機、5
0…CPU(entral rocessing nit:中央処理装
置)、60…主メモリ、70…ハードディスク、80…
フレキシブルディスク、90…プリンタ、100…キー
ボード、110…マウス、120…ディスプレイ、13
0…LAN(ocal rea etwork)ボード、140
…バス、150…オペレーティング・システム、160
…AP(pplication rogram:応用プログラム)、
170…メイン関数、180…親ウインドウ関数、19
0…子ウインドウ関数、280…データベース分離処
理、290…テーブル順序付け処理、300…テーブル
層分類処理、310…層内テーブル順序付け処理、32
0…データベース構造表形式表示部、330…表形式表
示全体制御部、340…テーブル/フィールド属性テー
ブル、350…テーブル管理テーブル-A、360…テ
ーブル順序テーブル、370…層別テーブル管理テーブ
ル、380…テーブル管理テーブル-B、390…ウイ
ンドウ・サイズ決定処理、400…固定フィールド順序
付け処理、410…固定フィールド設定処理、420…
テーブル表示様式決定処理、430…テーブル表示位置
決定処理、440データベース構造グラフィック形式表
示部、450…グラフィック形式表示全体制御部、46
0…決定ルール・テーブル、470…メンバシップ関
数、505…表形式表示ウィンドウ関数、505…グラ
フィック表示ウィンドウ関数、3000…テ−ブル作成
処理
10 ... server machine, 20 ... relational database, 30 ... LAN (L ocal A rea N etwork: Local Area Network), 40 ... client device, 5
0 ... CPU (C entral P rocessing U nit: central processing unit), 60 ... main memory, 70 ... hard disk, 80 ...
Flexible disk, 90 ... Printer, 100 ... Keyboard, 110 ... Mouse, 120 ... Display, 13
0 ... LAN (L ocal A rea N etwork) board, 140
… Bus, 150… Operating system, 160
... AP (A pplication P rogram: application program),
170 ... Main function, 180 ... Parent window function, 19
0 ... Child window function, 280 ... Database separation processing, 290 ... Table ordering processing, 300 ... Table layer classification processing, 310 ... In-layer table ordering processing, 32
0 ... Database structure table format display section, 330 ... Table format display overall control section, 340 ... Table / field attribute table, 350 ... Table management table-A, 360 ... Table order table, 370 ... Layered table management table, 380 ... Table management table-B, 390 ... Window size determination processing, 400 ... Fixed field ordering processing, 410 ... Fixed field setting processing, 420 ...
Table display style determination processing, 430 ... Table display position determination processing, 440 database structure graphic format display section, 450 ... Graphic format display overall control section, 46
0 ... Decision rule table, 470 ... Membership function, 505 ... Tabular display window function, 505 ... Graphic display window function, 3000 ... Table creation process

Claims (11)

【特許請求の範囲】[Claims] 【請求項1】他のフィ−ルドとリレ−ションを持ち得る
フィ−ルドを有するテ−ブルを複数含むリレ−ショナル
データベースの構造を表示する方法であって、 各テ−ブルに属するフィ−ルド間のリレ−ションを解析
し、 解析した各テ−ブルに属するフィ−ルド間のリレ−ショ
ンに従って、リレ−ショナルデータベ−スの各テ−ブル
間の関係を解析し、 テ−ブルを特定するテ−ブル名称を、解析したテ−ブル
間の関係を認識可能に表わした表示と、各テ−ブルを特
定するテ−ブル名称と各フィ−ルドを特定するフィ−ル
ド名称を、解析したテ−ブル間の関係の構造と解析した
各テ−ブルに属するフィ−ルド間のリレ−ションとを認
識可能に表わした表示との、2種類の表示を選択的に行
うことを特徴とするリレ−ショナルデータベースの構造
を表示する方法。
1. A method for displaying the structure of a relational database including a plurality of tables having fields that can have a relation with other fields, wherein the fields belong to each table. The relations between the tables of the relational database are analyzed according to the relations between the fields belonging to the analyzed tables, and the tables are analyzed. A table name that specifies the table name that specifies the relationship between the analyzed tables, a table name that specifies each table, and a field name that specifies each field, Characteristically, two types of display are selectively performed, that is, a display in which the structure of the relationship between the analyzed tables and the relation between the fields belonging to each analyzed table are recognizable. Structure of relational database How to display.
【請求項2】他のフィ−ルドとリレ−ションを持ち得る
フィ−ルドを有するテ−ブルを複数含むリレ−ショナル
データベースの構造を表示する方法であって、 リレ−ショナルデータベ−スの各テ−ブルを、複数のデ
ータベ−スに、異なるデータベ−スに属するテ−ブルの
フィ−ルド間にリレ−ションが存在せず、かつ、同じデ
ータベースに属する他のテ−ブルのフィ−ルドのいずれ
ともリレ−ションを持たないフィ−ルドを有するテ−ブ
ルが存在しないように分離し、 分離したデータベース毎に、当該データベースに属する
テ−ブルを特定するテ−ブル名称を表示することを特徴
とするリレ−ショナルデータベースの構造を表示する方
法。
2. A method for displaying the structure of a relational database including a plurality of tables having fields capable of having relations with other fields, each of which is provided for each relational database. A table has a plurality of databases, and there is no relation between fields of tables belonging to different databases, and fields of other tables belonging to the same database. In each of the above cases, a table having a field that does not have a relation is separated so that there is no table, and for each separated database, the table name that identifies the table that belongs to that database is displayed. A method for displaying the structure of a characteristic relational database.
【請求項3】請求項2記載のリレ−ショナルデータベー
スの構造を表示する方法であって、 前記リレ−ションに、所定の規則に従って方向性を与
え、 任意のテ−ブルと他の任意のテ−ブル間に、当該任意の
テ−ブルのフィ−ルドと前記他の任意のテ−ブルのフィ
−ルド間のリレ−ションと同じリレ−ションを与え、 分離したデータベース毎に、当該データベースに属する
各テ−ブルを、 i)流入するリレ−ションが無いテ−ブルのグル−プを
第1層とし、第n層より前の(但し、nは2以上の整
数)層からのみリレ−ションが流入する第1層から第n
−1層に属さない全てのテ−ブルのグル−プを第n層と
することにより、 もしくは、 ii)流出するリレ−ションが無いテ−ブルのグル−プを
第k層とし、第n層より後の(但し、nはk未満の整
数)層にのみリレ−ションが流出する最終層から第n+
1層に属さない全てのテ−ブルのグル−プを第n層とす
ることにより、 複数の層に分類し、 分離したデータベース毎に、当該データベースに属する
テ−ブルを特定するテ−ブル名称を、分類した層毎に表
示することを特徴とするリレ−ショナルデータベースの
構造を表示する方法。
3. A method for displaying the structure of a relational database according to claim 2, wherein the relation is given directionality according to a predetermined rule, and an arbitrary table and another arbitrary table are given. -The same relation as the relation between the field of the arbitrary table and the field of the other arbitrary table is given to each of the separated databases, and For each table to which it belongs, i) the group of tables having no inflowing inflow is the first layer, and the relay is only from the layer before the nth layer (however, n is an integer of 2 or more). From the 1st layer to the nth
-1) by making the group of all the tables not belonging to the -1st layer the nth layer, or ii) making the group of the tables having no leaked relation the kth layer and the nth layer. From the final layer where the relation flows out only to the layer after the layer (where n is an integer less than k) from the last layer to the n + th layer.
A table name that classifies all the tables that do not belong to one layer into multiple layers by classifying them into multiple layers, and identifies the tables that belong to the database for each separated database. Is displayed for each classified layer, a method for displaying the structure of a relational database.
【請求項4】請求項2記載のリレ−ショナルデータベー
スの構造を表示する方法であって、 各層に対応する領域を所定の方向に層の順番に従って並
べ、各層に対応する領域に当該層に属するテ−ブルを前
記所定の方向と垂直な方向に順番に並べ、前記テ−ブル
間のリレ−ションがあるテ−ブル間を線分で結んだ場合
に、線分の交叉が少なくなるように、各テ−ブルを各層
毎に順序付け、 分離したデータベース毎に、当該データベースに属する
テ−ブルを特定するテ−ブル名称を、分離した層毎に、
各層毎に順序付けた順序で表示することを特徴とするリ
レ−ショナルデータベースの構造を表示する方法。
4. A method for displaying the structure of a relational database according to claim 2, wherein regions corresponding to respective layers are arranged in a predetermined direction in the order of the layers, and the regions corresponding to the respective layers belong to the layer. When the tables are arranged in order in a direction perpendicular to the predetermined direction and the tables having the relation between the tables are connected by a line segment, the crossing of the line segments is reduced. , Each table is ordered for each layer, and for each separated database, the table name that identifies the table belonging to the database is specified for each separated layer.
A method for displaying the structure of a relational database, characterized by displaying the layers in an ordered order.
【請求項5】請求項3または4記載のリレ−ショナルデ
ータベースの構造を表示する方法であって、 分離した各データベースに各々当該データベースに含ま
れる層に属するテ−ブルの最大数以上の数の行を割当
て、前記各層に各々列を割当て、 各テ−ブルのテ−ブル名称を、当該テ−ブルの属するデ
ータベ−スに割り当てられた行のうちから排他的に一つ
選択した行の、当該テ−ブルの属する層に割り当てられ
た列に表した表を表示することを特徴とするリレ−ショ
ナルデータベースの構造を表示する方法。
5. A method for displaying the structure of a relational database according to claim 3 or 4, wherein each separated database has a number equal to or greater than the maximum number of tables belonging to a layer included in the database. A row is assigned, a column is assigned to each of the layers, and a table name of each table is exclusively selected from the rows assigned to the database to which the table belongs, A method of displaying the structure of a relational database, characterized by displaying a table represented in a column assigned to a layer to which the table belongs.
【請求項6】他のフィ−ルドとリレ−ションを持ち得る
フィ−ルドを有するテ−ブルを複数含むリレ−ショナル
データベースの構造を表示する方法であって、 前記リレ−ションに、所定の規則に従って方向性を与
え、 任意のテ−ブルと他の任意のテ−ブル間に、当該任意の
テ−ブルのフィ−ルドと前記他の任意のテ−ブルのフィ
−ルド間のリレ−ションと同じリレ−ションを与え、 リレ−ショナルデータベースに属する各テ−ブルに対応
する領域を配置し、配置した各テ−ブルに対応する領域
に当該テ−ブルに属する各フィ−ルドを並べ、前記リレ
−ションがあるフィ−ルド間を線分で結んだ場合に、線
分の交叉が少なくなるように、各テ−ブルに対応する領
域の配置と、各テ−ブルに対応する領域内の各フィ−ル
ドの配置を決定し、 決定したテ−ブルに対応する領域の配置に従って、各テ
−ブルに対応する領域を配置し、配置した各テ−ブルに
対応する領域内に当該テ−ブルに属する各フィ−ルドを
特定するフィ−ルド名称を、決定したフィ−ルドの配置
に従って表示し、前記リレ−ションがあるフィ−ルド間
に対応する、表示したフィ−ルド名称間を結ぶ線分を表
示することを特徴とするリレ−ショナルデータベースの
構造を表示する方法。
6. A method of displaying a structure of a relational database including a plurality of tables having fields capable of having relations with other fields, wherein the relation has a predetermined value. Direction is given according to the rule, and between any table and any other table, there is a relay between the field of the any table and the field of any other table. Area corresponding to each table belonging to the relational database is arranged, and each field belonging to the table is arranged in the area corresponding to each arranged table. , The arrangement of the areas corresponding to the respective tables and the areas corresponding to the respective tables so that the intersection of the line segments is reduced when the fields having the relation are connected by the line segments. Determine the placement of each field in The areas corresponding to the respective tables are arranged in accordance with the arrangement of the areas corresponding to the arranged tables, and the fields for specifying the respective fields belonging to the tables are arranged in the areas corresponding to the arranged tables. -A field name is displayed according to the determined field arrangement, and a line segment corresponding to the fields having the relation and connecting the displayed field names is displayed. -How to display the structure of the optional database.
【請求項7】他のフィ−ルドとリレ−ションを持ち得る
フィ−ルドを有するテ−ブルを複数含むリレ−ショナル
データベースの構造を表示する方法であって、 リレ−ショナルデータベ−スの各テ−ブルを、複数のデ
ータベ−スに、異なるデータベ−スに属するテ−ブルの
フィ−ルド間にリレ−ションが存在せず、かつ、同じデ
ータベースに属する他のテ−ブルのフィ−ルドのいずれ
ともリレ−ションを持たないフィ−ルドを有するテ−ブ
ルが存在しないように分離し、 前記リレ−ションに、所定の規則に従って方向性を与
え、 任意のテ−ブルと他の任意のテ−ブル間に、当該任意の
テ−ブルのフィ−ルドと前記他の任意のテ−ブルのフィ
−ルド間のリレ−ションと同じリレ−ションを与え、 分離したデータベース毎に、当該データベースに属する
各テ−ブルを、 i)流入するリレ−ションが無いテ−ブルのグル−プを
第1層とし、第n層より前の(但し、nは2以上の整
数)層からのみリレ−ションが流入する第1層から第n
−1層に属さない全てのテ−ブルのグル−プを第n層と
することにより、 もしくは、 ii)流出するリレ−ションが無いテ−ブルのグル−プを
第k層とし、第n層より後の(但し、nはk未満の整
数)層にのみリレ−ションが流出する最終層から第n+
1層に属さない全てのテ−ブルのグル−プを第n層とす
ることにより、 複数の層に分類し、 分類した各層に対応する領域を所定の方向に層の順番に
従って並べ、各層に対応する領域に当該層に属するテ−
ブルに対応する領域を前記所定の方向と垂直な方向に順
番に並べ、前記テ−ブル間のリレ−ションがあるテ−ブ
ル間に対応する領域間を線分で結んだ場合に、線分の交
叉が少なくなるように、各テ−ブルを各層毎に順序付
け、 各層に対応する領域を所定の方向に層の順番に従って並
べ、各層に対応する領域に当該層に属するテ−ブルに対
応する領域を、前記所定の方向と垂直な方向に前記各層
毎に順序付けられた順に従って順番に並べ、各テ−ブル
に対応する領域に当該テ−ブルに属する各フィ−ルドを
前記所定の方向と垂直な方向に順番に並べ、前記リレ−
ションがあるフィ−ルド間を線分で結んだ場合に、線分
の交叉が少なくなるように、各フィ−ルドを各テ−ブル
毎に順序付け、 各層に対応する領域を所定の方向に層の順番に従って並
べ、各層に対応する領域に当該層に属するテ−ブルに対
応する領域を、前記所定の方向と垂直な方向に前記各層
毎に順序付けられた順に従って順番に並べ、各テ−ブル
に対応する領域に当該テ−ブルに属する各フィ−ルドを
特定するフィ−ルド名称を、前記所定の方向と垂直な方
向に順次、前記各テ−ブル毎に順序付けられた順に従っ
た順番で表示し、前記リレ−ションがあるフィ−ルド間
に対応する、表示したフィ−ルド名称間を結ぶ線分を表
示することを特徴とするリレ−ショナルデータベースの
構造を表示する方法。
7. A method for displaying the structure of a relational database including a plurality of tables having fields capable of having relations with other fields, each of which is provided for each relational database. A table has a plurality of databases, and there is no relation between fields of tables belonging to different databases, and fields of other tables belonging to the same database. In any of the above, separation is performed so that there is no table having a field having no relation, and the relation is given directionality according to a predetermined rule, and any table and any other The same relation as the relation between the field of the arbitrary table and the field of the other arbitrary table is given between the tables, and the relevant database is provided for each separated database. To For each table to which it belongs, i) the group of the tables having no inflowing inflow is the first layer, and the relay is only from the layer before the nth layer (where n is an integer of 2 or more). From the 1st layer to the nth
-1) by making the group of all the tables not belonging to the -1st layer the nth layer, or ii) making the group of the tables having no leaked relation the kth layer and the nth layer. From the final layer where the relation flows out only to the layer after the layer (where n is an integer less than k) from the last layer to the n +
By classifying all the tables that do not belong to one layer as the nth layer, the layers are classified into a plurality of layers, and the regions corresponding to the classified layers are arranged in a predetermined direction in the order of the layers, In the corresponding area, the tape belonging to the layer
When the areas corresponding to the tables are arranged in order in the direction perpendicular to the predetermined direction and the areas corresponding to the tables having the relation between the tables are connected by a line segment, In order to reduce the number of crossovers of each layer, each table is ordered for each layer, areas corresponding to each layer are arranged in a predetermined direction in the order of the layers, and areas corresponding to each layer correspond to the tables belonging to the layer. The areas are arranged in order according to the order ordered for each of the layers in a direction perpendicular to the predetermined direction, and each field belonging to the table is set in the area corresponding to each table as the predetermined direction. They are arranged in order in the vertical direction, and the relay
In order to reduce the crossover of line segments when connecting the fields with a certain segment with line segments, the fields are ordered for each table, and the regions corresponding to each layer are layered in a predetermined direction. In the order corresponding to each layer, the areas corresponding to the tables belonging to the layer are arranged in the order corresponding to each layer in the direction perpendicular to the predetermined direction, and the areas corresponding to the respective layers are arranged in order. The field names that specify the fields belonging to the table in the area corresponding to are sequentially arranged in the direction perpendicular to the predetermined direction, in the order according to the order arranged for each table. A method for displaying the structure of a relational database, which is characterized by displaying the line segment connecting the displayed field names corresponding to the fields having the relation.
【請求項8】請求項6記載のリレ−ショナルデータベー
スの構造を表示する方法であって、 前記フィ−ルドを、他のフィ−ルドとリレ−ションを持
つフィ−ルドと、他のフィ−ルドとリレ−ションを持た
ないフィ−ルドに分類し、他のフィ−ルドとリレ−ショ
ンを持たないフィ−ルドのフィ−ルド名称については、
選択的に表示することを特徴とするリレ−ショナルデー
タベースの構造を表示する方法。
8. A method for displaying the structure of a relational database according to claim 6, wherein the field is a field having a relation with another field, and another field having a relation. Fields that have no fields and relations, and other fields and fields that do not have relations are
A method for displaying the structure of a relational database characterized by selectively displaying.
【請求項9】請求項6記載のリレ−ショナルデータベー
スの構造を表示する方法であって、 前記フィ−ルドを、他のフィ−ルドとリレ−ションを持
つフィ−ルドと、他のフィ−ルドとリレ−ションを持た
ないフィ−ルドに分類し、他のフィ−ルドとリレ−ショ
ンを持たないフィ−ルドのフィ−ルド名称の一部につい
ては、選択的に表示することを特徴とするリレ−ショナ
ルデータベースの構造を表示する方法。
9. A method for displaying the structure of a relational database according to claim 6, wherein said field is a field having a relation with another field, and another field having a relation. The fields are classified into fields with no fields and relations, and some of the field names of fields without other fields and relations are selectively displayed. How to display the relational database structure.
【請求項10】他のフィ−ルドとリレ−ションを持ち得
るフィ−ルドを有するテ−ブルを複数含むリレ−ショナ
ルデータベースと、 リレ−ショナルデータベースのテ−ブルのフィ−ルドに
データを登録する手段と、 リレ−ショナルデータベースからデータを検索する手段
と、 各テ−ブルに属するフィ−ルド間のリレ−ションを解析
する手段と、 解析した各テ−ブルに属するフィ−ルド間のリレ−ショ
ンに従って、リレ−ショナルデータベ−スの各テ−ブル
間の関係を解析する手段と、 表示装置とテ−ブルを特定するテ−ブル名称を、解析し
たテ−ブル間の関係を認識可能に表わした表示と、各テ
−ブルを特定するテ−ブル名称と各フィ−ルドを特定す
るフィ−ルド名称を、解析したテ−ブル間の関係の構造
と解析した各テ−ブルに属するフィ−ルド間のリレ−シ
ョンとを認識可能に表わした表示との、2種類の表示を
選択的に、前記表示装置上に行う手段とを有することを
特徴とするリレ−ショナルデータベースシステム。
10. A relational database including a plurality of tables each having a field that can have a relation with another field, and data is registered in the table field of the relational database. Means, data retrieval from the relational database, means for analyzing relations between fields belonging to each table, and relations between fields belonging to each analyzed table. The means for analyzing the relation between each table of the relational database and the table name for identifying the display device and the table can be recognized according to the The display shown in, the table name that identifies each table, and the field name that identifies each field belong to each analyzed table and the structure of the relationship between the analyzed tables. I - relay between field - Deployment and recognizable representation was displayed, and two types of display selectively and characterized by having a means for performing on said display device relay - relational database system.
【請求項11】他のフィ−ルドとリレ−ションを持ち得
るフィ−ルドを有するテ−ブルを複数含むリレ−ショナ
ルデータベースと、 リレ−ショナルデータベースのテ−ブルのフィ−ルドに
データを登録する手段と、 リレ−ショナルデータベースからデータを検索する手段
と、 表示装置と、 リレ−ショナルデータベ−スの各テ−ブルを、複数のデ
ータベ−スに、異なるデータベ−スに属するテ−ブルの
フィ−ルド間にリレ−ションが存在せず、かつ、同じデ
ータベースに属する他のテ−ブルのフィ−ルドのいずれ
ともリレ−ションを持たないフィ−ルドを有するテ−ブ
ルが存在しないように分離する手段と、前記リレ−ショ
ンに、所定の規則に従って方向性を与え、 任意のテ−ブルと他の任意のテ−ブル間に、当該任意の
テ−ブルのフィ−ルドと前記他の任意のテ−ブルのフィ
−ルド間のリレ−ションと同じリレ−ションを与え、 分離したデータベース毎に、当該データベースに属する
各テ−ブルを、 i)流入するリレ−ションが無いテ−ブルのグル−プを
第1層とし、第n層より前の(但し、nは2以上の整
数)層からのみリレ−ションが流入する第1層から第n
−1層に属さない全てのテ−ブルのグル−プを第n層と
することにより、 もしくは、 ii)流出するリレ−ションが無いテ−ブルのグル−プを
第k層とし、第n層より後の(但し、nはk未満の整
数)層にのみリレ−ションが流出する最終層から第n+
1層に属さない全てのテ−ブルのグル−プを第n層とす
ることにより、 複数の層に分類する手段と、 分類した各層に対応する領域を所定の方向に層の順番に
従って並べ、各層に対応する領域に当該層に属するテ−
ブルに対応する領域を前記所定の方向と垂直な方向に順
番に並べ、前記テ−ブル間のリレ−ションがあるテ−ブ
ル間に対応する領域間を線分で結んだ場合に、線分の交
叉が少なくなるように、各テ−ブルを各層毎に順序付け
る手段と、 分離した各データベースに各々当該データベースに含ま
れる層に属するテ−ブルの最大数以上の数の行を割当
て、前記各層に各々列を割当て、各テ−ブルのテ−ブル
名称を、当該テ−ブルの属するデータベ−スに割り当て
られた行のうちの、前記層毎に順序付けられた順に従っ
て選択した行の、当該テ−ブルの属する層に割り当てら
れた列に表した表を前記表示手段に表示する手段と、 前記表示装置に表示した前記表上でテ−ブル名称の指定
を受け付ける手段と、 受け付けたテ−ブル名称の属する、前記分離されたデー
タベースの各層に対応する領域を所定の方向に層の順番
に従って並べ、各層に対応する領域に当該層に属するテ
−ブルに対応する領域を、前記所定の方向と垂直な方向
に前記各層毎に順序付けられた順に従って順番に並べ、
各テ−ブルに対応する領域に当該テ−ブルに属する各フ
ィ−ルドを前記所定の方向と垂直な方向に順番に並べ、
前記リレ−ションがあるフィ−ルド間を線分で結んだ場
合に、線分の交叉が少なくなるように、当該データベー
スの各フィ−ルドを各テ−ブル毎に順序付ける手段と、 受け付けたテ−ブル名称の属する、前記分離されたデー
タベースの各層に対応する領域を所定の方向に層の順番
に従って並べ、各層に対応する領域に当該層に属するテ
−ブルに対応する領域を、前記所定の方向と垂直な方向
に前記各層毎に順序付けられた順に従って順番に並べ、
各テ−ブルに対応する領域に当該テ−ブルに属する各フ
ィ−ルドを特定するフィ−ルド名称を、前記所定の方向
と垂直な方向に順次、前記各テ−ブル毎に順序付けられ
た順に従った順番で示し、前記リレ−ションがあるフィ
−ルド間に対応するフィ−ルド名称間を結ぶ線分を表し
た画像を前記表示装置に表示する手段とを有することを
特徴とするリレ−ショナルデータベースシステム。
11. A relational database including a plurality of tables having a field that can have a relation with another field, and data is registered in the table field of the relational database. Means, a means for retrieving data from the relational database, a display device, and each table of the relational database to a plurality of databases and tables of different databases. Make sure that there is no relation between fields and that there is no table that has no relation with any of the other fields belonging to the same database. Means for separating and giving direction to the relation according to a predetermined rule, and between any table and any other table, the field of the table is arbitrary. The same relation as the relation between the field of the above-mentioned arbitrary table and the field of the other arbitrary table, and for each separated database, each table belonging to the database is i) the inflow relation A group of tables having no layer is defined as the first layer, and the relation from only the layer before the nth layer (where n is an integer of 2 or more) flows from the first layer to the nth layer.
-1) by making the group of all the tables not belonging to the -1st layer the nth layer, or ii) making the group of the tables having no leaked relation the kth layer and the nth layer. From the final layer where the relation flows out only to the layer after the layer (where n is an integer less than k) from the last layer to the n + th layer.
By setting the group of all the tables not belonging to one layer to the nth layer, the means for classifying into a plurality of layers and the areas corresponding to each classified layer are arranged in a predetermined direction in the order of the layers, In the area corresponding to each layer, the tape belonging to the layer
When the areas corresponding to the tables are arranged in order in the direction perpendicular to the predetermined direction and the areas corresponding to the tables having the relation between the tables are connected by a line segment, In order to reduce the crossover of each table, a means for ordering each table for each layer, and for each separated database, a number of rows that is equal to or greater than the maximum number of tables belonging to the layer included in the database is assigned. A column is assigned to each layer, and the table name of each table is selected from among the rows assigned to the database to which the table belongs, in the row selected according to the order ordered for each layer. Means for displaying on the display means a table represented in a column assigned to the layer to which the table belongs; means for accepting designation of a table name on the table displayed on the display device; -Bull name belongs to the above The areas corresponding to the respective layers of the database are arranged in a predetermined direction in the order of the layers, and the areas corresponding to the respective layers are arranged in the areas corresponding to the respective layers in the direction perpendicular to the predetermined direction. Arrange in order according to the order ordered for each,
In the area corresponding to each table, the fields belonging to the table are arranged in order in a direction perpendicular to the predetermined direction,
A means for ordering the fields of the database for each table so that the crossing of the line segments is reduced when the fields having the relation are connected by the line segments. The areas corresponding to the respective layers of the separated database to which the table name belongs are arranged in a predetermined direction in the order of the layers, and the areas corresponding to the respective layers in the areas corresponding to the respective layers are the predetermined areas. Are arranged in order according to the order ordered for each of the layers in the direction perpendicular to the direction,
The field names for specifying the fields belonging to the table in the area corresponding to each table are sequentially named in the direction perpendicular to the predetermined direction and in the order ordered for each table. And a means for displaying on the display device an image showing the line segments connecting the field names corresponding to the fields having the relations in the order in which they are followed. Optional database system.
JP7114949A 1995-05-12 1995-05-12 Structure display method for relational data base and relational data base system Pending JPH08314951A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7114949A JPH08314951A (en) 1995-05-12 1995-05-12 Structure display method for relational data base and relational data base system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7114949A JPH08314951A (en) 1995-05-12 1995-05-12 Structure display method for relational data base and relational data base system

Publications (1)

Publication Number Publication Date
JPH08314951A true JPH08314951A (en) 1996-11-29

Family

ID=14650650

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7114949A Pending JPH08314951A (en) 1995-05-12 1995-05-12 Structure display method for relational data base and relational data base system

Country Status (1)

Country Link
JP (1) JPH08314951A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013512502A (en) * 2009-11-24 2013-04-11 アリババ・グループ・ホールディング・リミテッド Efficient data backflow processing for data warehouses
CN110019564A (en) * 2017-09-28 2019-07-16 株式会社日立制作所 Table relation decomposing auxiliary device and table relation decomposing householder method
CN111782650A (en) * 2020-06-28 2020-10-16 京东数字科技控股有限公司 Dynamic data storage method and device, electronic equipment and storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013512502A (en) * 2009-11-24 2013-04-11 アリババ・グループ・ホールディング・リミテッド Efficient data backflow processing for data warehouses
CN110019564A (en) * 2017-09-28 2019-07-16 株式会社日立制作所 Table relation decomposing auxiliary device and table relation decomposing householder method
CN110019564B (en) * 2017-09-28 2024-01-12 株式会社日立制作所 Table relation analysis supporting device and table relation analysis supporting method
CN111782650A (en) * 2020-06-28 2020-10-16 京东数字科技控股有限公司 Dynamic data storage method and device, electronic equipment and storage medium
CN111782650B (en) * 2020-06-28 2024-04-05 京东科技控股股份有限公司 Dynamic data warehousing method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
US11847299B2 (en) Building a view of a dataset incrementally according to data types of user-selected data fields
US6411313B1 (en) User interface for creating a spreadsheet pivottable
US5418950A (en) System for interactive clause window construction of SQL queries
US4764867A (en) Display system and method for constructing and editing a hierarchical arrangement of information
JP2777698B2 (en) Information retrieval system and method
US9058695B2 (en) Method of graphically representing a tree structure
US8677272B2 (en) Graphical user interface design utility
JPH07230538A (en) Graphical user interface
JP5097385B2 (en) Building information retrieval system
JP2801459B2 (en) Language processing system by object network
WO1997033239A1 (en) Database systems having single-association structures and method for searching data in the database systems
US5774713A (en) File creating method for constructing system environment, system environment constructing method and command start system
JPH08314951A (en) Structure display method for relational data base and relational data base system
US11880378B2 (en) Data visualization analytical canvas with functionally independent visual containers
US20190384461A1 (en) Data processing pipeline engine
US20190384635A1 (en) Distributed execution of data processing pipelines
JPH07295776A (en) Data arrangement structure converting method, system therefor and client server system
Franck et al. About ambiguities in visual GIS query languages: a taxonomy and solutions
Huo KMVQL: a visual query interface based on karnaugh map
JPH08329101A (en) Data base system
JP2571144B2 (en) Program development equipment
JPH0668157A (en) Apparatus and method for displaying information in database
JPH06259312A (en) Network type document processor using two-dimensionally defined tree structure
US12073065B2 (en) Data preparation user interface with coordinated pivots
JP2001147922A (en) Device and method for managing document and storage medium