JP2003167765A - Information processor and processing method - Google Patents

Information processor and processing method

Info

Publication number
JP2003167765A
JP2003167765A JP2001366872A JP2001366872A JP2003167765A JP 2003167765 A JP2003167765 A JP 2003167765A JP 2001366872 A JP2001366872 A JP 2001366872A JP 2001366872 A JP2001366872 A JP 2001366872A JP 2003167765 A JP2003167765 A JP 2003167765A
Authority
JP
Japan
Prior art keywords
transaction
database
processing
cache
notification
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.)
Withdrawn
Application number
JP2001366872A
Other languages
Japanese (ja)
Inventor
Masanori Wakai
聖範 若井
Naoko Yamamoto
直子 山本
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2001366872A priority Critical patent/JP2003167765A/en
Publication of JP2003167765A publication Critical patent/JP2003167765A/en
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To provide an information processor and a processing method capable of improving the response when referring to a database, and a computer- readable memory. <P>SOLUTION: The processor comprises a database operation means for operating a database 16001; a database cache management means for managing a database cache 15002; a transaction operation means for operating a transaction for managing a series of streams of operating the database 15001; and a transaction cache management means for managing a transaction independent cache 15004 and a transaction common cache 15006. According to such a structure, the response is improved while realizing an expected operation every isolation. <P>COPYRIGHT: (C)2003,JPO

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、データベースを管
理する情報処理装置及びその方法、コンピュータ可読メ
モリに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus and method for managing a database, and a computer-readable memory.

【0002】[0002]

【従来の技術】従来技術では、トランザクションを独立
した1つの単位として、処理が行われていた。また、そ
れぞれのトランザクション間の干渉度をアイソレーショ
ンレベルで指定し、トランザクション毎のキャッシュに
保持するデータの種類と、他トランザクションからの変
更・参照制限を変更していた。
2. Description of the Related Art In the prior art, processing was performed with a transaction as an independent unit. In addition, the degree of interference between transactions is specified by the isolation level, and the type of data held in the cache for each transaction and the modification / reference restrictions from other transactions are modified.

【0003】図100は、トランザクションの各処理段
階における一般的なキャッシュの有無を示す図である。
図100において、変更中のObjectキャッシュは、変更
中の情報を保持する為に利用されるもので、Commit時
に、最終的に確定される。取得済みのObjectキャッシュ
は、取得済みの情報を保持する為に利用される。取得済
みのObject群キャッシュには取得条件とともにObject群
の情報が保持される。
FIG. 100 is a diagram showing the presence / absence of a general cache in each processing stage of a transaction.
In FIG. 100, the object cache being changed is used to hold the information being changed, and is finally determined at the time of Commit. The acquired Object cache is used to hold the acquired information. The acquired object group cache holds the information of the object group together with the acquisition condition.

【0004】また、図101は、トランザクションの各
段階におけるキャッシュへの操作許容レベルを示す図で
ある。例えば、変更途中のObjectが他トランザクション
により取得され(後に変更され)ることで、矛盾が発生
する。下記の例では、預金\50,000からトランザクショ
ン1により\10,000が、トランザクション2により\50,0
00が出金される矛盾が発生する。
Further, FIG. 101 is a diagram showing the level of operation permission to the cache at each stage of a transaction. For example, inconsistency occurs when the object in the middle of change is acquired (changed later) by another transaction. In the example below, from deposit \ 50,000, transaction 1 will generate \ 10,000, and transaction 2 will generate \ 50,0
The contradiction that 00 is withdrawn occurs.

【0005】Tr1-1.Object(\50,000,12/1)取得 Tr1-2.更新日時(12/27)記入 Tr2-1.Object(\50,000,12/1)取得 Tr1-3.出金後金額(\50,000-\10,000=\40,000)記入 Tr1-4.変更を確定(Commit) Tr2-2.出金後金額(\50,000-\50,000=\0)記入 この場合、Tr1-2で最初に変更を開始したときに、他ト
ランザクションによる変更を禁止することで、矛盾が回
避できる。
Tr1-1.Object (\ 50,000,12 / 1) acquisition Tr1-2.Update date and time (12/27) entry Tr2-1.Object (\ 50,000,12 / 1) acquisition Tr1-3.After withdrawal Enter amount (\ 50,000- \ 10,000 = \ 40,000) Tr1-4. Commit changes Tr2-2. Enter amount after withdrawal (\ 50,000- \ 50,000 = \ 0) Enter Tr1-2 first Inconsistency can be avoided by prohibiting changes by other transactions when the changes are started.

【0006】また、取得済みのObjectが他トランザクシ
ョンにより取得され(後に変更され)ることで、矛盾が
発生する。上記の例では、Tr1-1とTr1-2の間に、トラン
ザクション2により取得された場合に相当する。
[0006] Further, since the acquired Object is acquired (changed later) by another transaction, a contradiction occurs. The above example corresponds to the case of being acquired by the transaction 2 between Tr1-1 and Tr1-2.

【0007】また、変更中のObject群が他トランザクシ
ョンにより取得され(後に変更され)ることで、矛盾が
発生する。この矛盾を避けるには、Object群の取得条件
に影響を与える、Objectの追加・削除・更新を禁止しな
ければならない。
[0007] Further, the object group being changed is acquired (changed later) by another transaction, which causes inconsistency. In order to avoid this contradiction, it is necessary to prohibit the addition / deletion / update of Objects that affects the acquisition conditions of Objects.

【0008】以上のような矛盾を回避するため、例え
ば、図100及び図101に示すように、アイソレーシ
ョンレベルがRead Uncommittedの場合、現在注目中のオ
ブジェクトのみキャッシュに保持し、同時に他トランザ
クションによる書き込みを禁止していた。また、Read C
ommittedの場合、上記に加えて変更途中のオブジェクト
もキャッシュに保持し、同時に他トランザクションによ
る読み込みを禁止していた。また、Repeatable Readの
場合、上記に加えて取得済みのオブジェクトもキャッシ
ュに保持し、同時に他トランザクションによる書き込み
を禁止していた。また、Serializableの場合、上記に加
えて取得済みのオブジェクト群もキャッシュに保持し、
同時に取得結果に影響を与える書き込みを禁止し、更に
変更中の取得結果に影響を与える読み込みを禁止してい
た。
In order to avoid the above contradiction, for example, as shown in FIGS. 100 and 101, when the isolation level is Read Uncommitted, only the object of current interest is held in the cache and simultaneously written by another transaction. Was prohibited. Also, Read C
In the case of ommitted, in addition to the above, objects in the process of being modified are also retained in the cache, and at the same time, reading by other transactions is prohibited. In addition, in the case of Repeatable Read, in addition to the above, the acquired objects are also held in the cache, and at the same time, writing by other transactions is prohibited. In addition, in the case of Serializable, in addition to the above, also retain the acquired objects in the cache,
At the same time, writing that affects the acquisition result is prohibited, and reading that affects the acquisition result that is being changed is prohibited.

【0009】図102は一般的なデータベース管理技術
において、2つの独立したトランザクションによって、
同一のデータベースに格納された同一のオブジェクトを
取得する様子の一例を示した図である。20501で示
されたトランザクション1及び20502で示されたト
ランザクション2は、同一のデータベース20503に
格納されたObject1の格納イメージから変換されたObje
ct1を取得している。ここで、トランザクション1によ
ってObject1が取得される場合、(1)Object1の格納
イメージからトランザクションによりアクセス可能な形
態であるObject1に変換し、(2)変換済みのObject1
が取得される。一方、その後トランザクション2によっ
てObject1が取得される場合は、(3)再びObject1の
格納イメージからトランザクションによりアクセス可能
な形態であるObject1に変換し、(4)変換済みのObje
ct1が取得される。
FIG. 102 shows a general database management technique by two independent transactions.
It is a figure showing an example of signs that the same object stored in the same database is acquired. The transaction 1 indicated by 20501 and the transaction 2 indicated by 20502 are Obje converted from the storage image of Object 1 stored in the same database 20503.
I got ct1. Here, when Object1 is acquired by transaction 1, (1) the storage image of Object1 is converted into Object1 which is a form accessible by transaction, and (2) converted Object1
Is obtained. On the other hand, when Object 1 is acquired by transaction 2 after that, (3) the stored image of Object 1 is converted again to Object 1 which is a form accessible by the transaction, and (4) the converted Obje.
ct1 is acquired.

【0010】そのため、同一のデータベースに格納され
た同一のオブジェクトを取得するのにも関わらず、その
都度オブジェクトの格納イメージを、トランザクション
によりアクセス可能な形態に変換しなければならなかっ
た。
Therefore, even though the same object stored in the same database is acquired, the stored image of the object must be converted into a form accessible by a transaction each time.

【0011】一方、図105は、一般的なデータベース
管理技術において、2つの独立したトランザクションに
よって、同一の検索条件で、同一のデータベースに格納
された同一のオブジェクト群を取得する様子の一例を示
した図である。20801で示されたトランザクション
1及び20802で示されたトランザクション2は、同
一のデータベース20803に格納されたオブジェクト
群(Object1,Object2,Object3,...,Object1
0)を取得している。ここで、トランザクション1によ
ってオブジェクト群が取得される場合、(1)指定した
検索条件に適合するオブジェクト群が検索され、(2)
検索されたオブジェクト群が取得される。一方、トラン
ザクション2によってオブジェクト群が取得される場合
は、(3)再び指定した検索条件に適合するオブジェク
ト群が検索され、(4)検索されたオブジェクト群が取
得される。
On the other hand, FIG. 105 shows an example of a state in which the same object group stored in the same database is acquired under the same search condition by two independent transactions in a general database management technique. It is a figure. A transaction 1 indicated by 20801 and a transaction 2 indicated by 20802 are object groups (Object1, Object2, Object3, ..., Object1) stored in the same database 20803.
0) has been acquired. Here, when the object group is acquired by the transaction 1, (1) the object group that matches the specified search condition is searched, and (2)
The searched object group is acquired. On the other hand, when the object group is acquired by the transaction 2, (3) the object group that matches the specified search condition is searched again, and (4) the searched object group is acquired.

【0012】このように、同一のデータベースを同一の
検索条件で検索したのにも関わらず、その都度オブジェ
クト群を検索し直さなければならなかった。
As described above, although the same database was searched under the same search condition, the object group had to be searched again each time.

【0013】[0013]

【発明が解決しようとする課題】上記図102に関して
説明した技術では、データベース中の同一の格納イメー
ジを、その都度トランザクションによりアクセス可能な
形態に変換しなおす必要があるため、レスポンス低下を
招く原因となっている。
In the technique described with reference to FIG. 102, it is necessary to reconvert the same stored image in the database into a form that can be accessed by a transaction each time, which causes a decrease in response. Has become.

【0014】そこで、図103に示すデータベース管理
技術では、アイソレーションレベルをRepeatable Read
又はSerializableと指定することで、以前に取得された
オブジェクトをトランザクション毎のキャッシュに保持
する方法が用いられている。このように構成すること
で、オブジェクトの格納イメージからの再変換を避け、
レスポンス低下を避けることができる。しかし、以前に
取得されたオブジェクトを保持しているキャッシュは、
トランザクション間で共通に参照することが不可能な
為、前述のような、複数のトランザクションから同一オ
ブジェクトを参照する際に発生する課題を解決すること
はできなかった。
Therefore, in the database management technique shown in FIG. 103, the isolation level is set to Repeatable Read.
Or, by specifying as Serializable, the method of retaining the previously acquired object in the cache for each transaction is used. By configuring in this way, avoiding re-conversion from the stored image of the object,
It is possible to avoid a decrease in response. But the cache holding the previously retrieved objects is
Since it is impossible to refer to the same transaction, it is not possible to solve the above-mentioned problem that occurs when referring to the same object from multiple transactions.

【0015】また、図104に示したデータベース管理
技術においては、データベースに格納されたオブジェク
トの格納イメージを、各トランザクションが直接アクセ
スすることで、形態の再変換を避けている。しかし、実
際に各トランザクションがオブジェクトの格納イメージ
から所望の情報を参照するには、格納イメージをその都
度解析しなおす必要があった。例えば、データベースに
格納された格納イメージが暗号化されている場合、その
都度、解読し直す必要があり、やはりレスポンスの低下
が避けられず、問題を解決することができなかった。
Further, in the database management technique shown in FIG. 104, each transaction directly accesses the storage image of the object stored in the database, thereby avoiding reconversion of the form. However, in order for each transaction to actually refer to the desired information from the stored image of the object, it was necessary to re-analyze the stored image each time. For example, when the stored image stored in the database is encrypted, it needs to be re-decoded each time, and it is inevitable that the response is deteriorated and the problem cannot be solved.

【0016】一方、上記図105に関して説明した技術
では、データベースから指定した条件に適合するオブジ
ェクト群を取得する為に、その都度検索しなおす必要が
あるため、レスポンスの低下を招く原因となっている。
On the other hand, in the technique described with reference to FIG. 105, it is necessary to re-search each time in order to obtain an object group that matches the specified condition from the database, which causes a decrease in response. .

【0017】そこで、図106に示したデータ管理技術
では、アイソレーションレベルをSerializableと指定す
ることで、以前に取得されたオブジェクト群をトランザ
クション毎のキャッシュに保持する方法が用いられてい
る。これにより、同一条件での再検索を避け、レスポン
スの低下を避けることができる。しかし、以前に取得さ
れたオブジェクト群を保持しているキャッシュは、トラ
ンザクション間で共通に参照することが不可能な為、前
述のような複数のトランザクションから同一条件で検索
する際に発生する課題を解決することができなかった。
Therefore, in the data management technique shown in FIG. 106, a method of holding the previously acquired object group in the cache for each transaction by designating the isolation level as Serializable is used. As a result, it is possible to avoid re-search under the same condition and avoid a decrease in response. However, the cache that holds the previously acquired objects cannot be commonly referenced between transactions, so the problem that occurs when searching under the same conditions from multiple transactions as described above Could not be resolved.

【0018】また、図107に示したデータ管理技術で
は、オブジェクト群としては扱わず、指定された条件に
適合するオブジェクトを1つずつ取得している。しか
し、これではオブジェクトを1つ取得するたびに検索し
なければならない為、レスポンスの低下が避けられず、
上記課題を解決することができなかった。
Further, in the data management technique shown in FIG. 107, the objects are not treated as an object group, but objects that meet the specified conditions are acquired one by one. However, with this, you have to search each time you get one object, so it is inevitable that the response will deteriorate.
The above problems could not be solved.

【0019】本発明は上述した課題に鑑みてなされたも
のであり、同一のオブジェクト及び同一条件で検索され
るオブジェクト群の取得時のレスポンスを向上させるこ
とを目的としている。
The present invention has been made in view of the above problems, and an object thereof is to improve the response at the time of acquisition of the same object and a group of objects searched under the same condition.

【0020】[0020]

【課題を解決するための手段】上記の目的を達成するた
めの本発明による情報処理装置は以下の構成を備える。
即ち、データベースを管理する情報処理装置であって、
データベースによって管理されたオブジェクトをアクセ
スするためのトランザクションを生成する生成手段と、
前記生成手段で生成されたトランザクションによって取
得、編集されたオブジェクトをキャッシュする第1キャ
ッシュ手段と、前記データベースに対してキャッシュメ
モリを提供し、トランザクションによって該データベー
スより取得されたオブジェクトをキャッシュする第2キ
ャッシュ手段とを備える。
An information processing apparatus according to the present invention for achieving the above object has the following configuration.
That is, an information processing device that manages a database,
Generating means for generating a transaction for accessing an object managed by the database,
First cache means for caching the object acquired and edited by the transaction generated by the generating means, and second cache for providing a cache memory for the database and caching the object acquired from the database by the transaction And means.

【0021】また、上記の目的を達成するための本発明
による情報処理方法は、データベースを管理する情報処
理方法であって、データベースによって管理されたオブ
ジェクトをアクセスするためのトランザクションを生成
する生成工程と、前記生成工程で生成されたトランザク
ションによって取得、編集されたオブジェクトをキャッ
シュする第1キャッシュ工程と、前記データベースに対
してキャッシュメモリを提供し、トランザクションによ
って該データベースより取得されたオブジェクトをキャ
ッシュする第2キャッシュ工程とを備える。
Further, an information processing method according to the present invention for achieving the above object is an information processing method for managing a database, which includes a generating step for generating a transaction for accessing an object managed by the database. A first cache step for caching the object acquired and edited by the transaction generated in the generating step, and a second cache step for providing a cache memory for the database and caching the object acquired from the database by the transaction And a cash process.

【0022】[0022]

【発明の実施の形態】以下、添付の図面を参照して本発
明の好適な実施形態を詳細に説明する。
Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings.

【0023】<実施形態1>図1は実施形態1及び実施
形態2の情報処理装置のハードウェア構成を示すブロッ
ク図である。
<First Embodiment> FIG. 1 is a block diagram showing the hardware arrangement of an information processing apparatus according to the first and second embodiments.

【0024】図1において、1は情報(データ)を入力
するための入力部である。2はCPUであり、各種処理
のための演算、論理判断等を行ない、バス6に接続され
た各構成要素を制御する。3は情報(データ)を出力す
る出力部である。出力部3としては、LCDやCRT等
のディスプレイや、プリンタ等の記録装置がある。4は
プログラムメモリであり、後述するフローチャートの処
理手順を含むCPU2による制御のためのプログラムを
格納するメモリである。プログラムメモリ4は、ROM
であってもよいし、外部記憶装置等からプログラムがロ
ードされるRAMであってもよい。5はデータメモリで
あり、各種処理で生じたデータを格納するほか、後述す
るデータベース(DB)のデータを格納する。データメ
モリ5は、例えば、RAMとするが、データベースのデ
ータは、不揮発な外部記憶媒体から、処理に先立ってロ
ードしておく、あるいは必要があるごとに参照するもの
とする。6はCPU2の制御の対象とする各構成要素を
指示するアドレス信号、各構成要素を制御するためのコ
ントロール信号、各構成要素間で相互にやりとりされる
データの転送を行なうためのバスである。
In FIG. 1, reference numeral 1 is an input unit for inputting information (data). Reference numeral 2 denotes a CPU, which performs arithmetic operations for various processes, logical judgments, etc., and controls each component connected to the bus 6. An output unit 3 outputs information (data). The output unit 3 includes a display such as an LCD and a CRT, and a recording device such as a printer. Reference numeral 4 denotes a program memory, which is a memory for storing a program for control by the CPU 2 including a processing procedure of a flowchart described later. The program memory 4 is a ROM
Or a RAM in which a program is loaded from an external storage device or the like. A data memory 5 stores data generated in various processes and also stores data of a database (DB) described later. The data memory 5 is, for example, a RAM, but the data of the database is loaded from a non-volatile external storage medium prior to the processing, or is referred to whenever necessary. Reference numeral 6 designates an address signal for instructing each component to be controlled by the CPU 2, a control signal for controlling each component, and a bus for transferring data exchanged between each component.

【0025】図2は実施形態1の情報処理装置で実行さ
れる処理を示すフローチャートである。図2では、シス
テムの起動からデータベース処理の開始の手順が示され
ている。
FIG. 2 is a flowchart showing the processing executed by the information processing apparatus of the first embodiment. FIG. 2 shows a procedure from system startup to database processing start.

【0026】図2に示すように、システムが起動される
と、ステップS201で、システム起動処理が実行さ
れ、各種データが初期化される。次に、ステップS20
2で、イベント待ち処理を実行し、ユーザの操作に対応
するイベントや、各種状態の変化に対応するイベント等
の発生を待機する。イベントの発生が検出されると、ス
テップS203へ処理を進める。
As shown in FIG. 2, when the system is started, the system starting process is executed in step S201 to initialize various data. Next, step S20.
In step 2, event waiting processing is executed to wait for the occurrence of an event corresponding to a user operation, an event corresponding to a change in various states, or the like. When the occurrence of an event is detected, the process proceeds to step S203.

【0027】続く、ステップS203では、ステップS
202で検出されたイベントが電源OFFの指示である
か否かを判定する。イベントが電源OFFの指示でない
場合(ステップS203でNO)は、ステップS204
に進む。ステップS204では、ステップS202で検
出されたイベントがデータベース処理操作の指示である
か否かを判定する。データベース処理操作の指示でない
場合(ステップS204でNO)は、ステップS202
に戻る。一方、データベース処理操作の指示である場合
(ステップS204でYES)は、ステップS205に
進み、対応するデータベース処理を実行後、ステップS
202に戻り、上記処理を繰り返す。
In the following step S203, step S
It is determined whether the event detected in 202 is a power-off instruction. If the event is not the instruction to turn off the power (NO in step S203), step S204
Proceed to. In step S204, it is determined whether the event detected in step S202 is a database processing operation instruction. If it is not a database processing operation instruction (NO in step S204), step S202
Return to. On the other hand, if the instruction is a database processing operation (YES in step S204), the process advances to step S205 to execute the corresponding database process, and then to step S204.
Returning to 202, the above processing is repeated.

【0028】一方、ステップS203で、イベントが電
源OFFの指示である場合(ステップS203でYE
S)、ステップS206に進み、システム終了処理を実
行後、処理を終了する。
On the other hand, if the event is an instruction to turn off the power in step S203 (YES in step S203).
S), the process proceeds to step S206, the system end process is executed, and then the process ends.

【0029】次に、ステップS205のデータベース処
理において表示されるデータベース処理画面の一例につ
いて、図3を用いて説明する。
Next, an example of the database processing screen displayed in the database processing of step S205 will be described with reference to FIG.

【0030】図3は実施形態1のデータベース処理画面
の一例を示す図である。31はデータベースサーバサー
ビスの開始を指示するためのボタンである。32はデー
タベースの作成を指示するためのボタンである。33は
トランザクション(取引)の生成を指示するためのボタ
ンである。34はクラスの定義情報の表示を指示するた
めのボタンである。35はオブジェクトの格納情報の表
示を指示するためのボタンである。36はデータベース
処理の終了を指示するためのボタンである。
FIG. 3 is a diagram showing an example of the database processing screen of the first embodiment. Reference numeral 31 is a button for instructing to start the database server service. Reference numeral 32 is a button for instructing the creation of a database. 33 is a button for instructing the generation of a transaction. 34 is a button for instructing the display of class definition information. Reference numeral 35 is a button for instructing to display the storage information of the object. Reference numeral 36 is a button for instructing the end of database processing.

【0031】次に、ステップS205のデータベース処
理の詳細について、図4を用いて説明する。
Details of the database processing in step S205 will be described below with reference to FIG.

【0032】図4は実施形態1のステップS205のデ
ータベース処理の詳細を示すフローチャートである。
FIG. 4 is a flowchart showing details of the database processing in step S205 of the first embodiment.

【0033】図2のステップS205が開始されると、
すなわちデータベース処理が起動されると、まず、ステ
ップS401で初期化処理を実行し、各種内部データを
初期化する。次に、ステップS402の画面表示処理を
実行し、図3で説明したデータベース処理画面を表示す
る。続く、ステップS403で、イベント待ち処理を実
行しユーザの操作に対応するイベントの発生を待機す
る。イベントの発生が検出されるとステップS404へ
進む。
When step S205 in FIG. 2 is started,
That is, when the database process is activated, first, an initialization process is executed in step S401 to initialize various internal data. Next, the screen display process of step S402 is executed to display the database processing screen described in FIG. In a succeeding step S403, event waiting processing is executed to wait for the occurrence of an event corresponding to a user operation. When the occurrence of an event is detected, the process proceeds to step S404.

【0034】ステップS404で、ユーザが行った操作
に対して発生したイベントが終了の指示であるか否かを
判定する。イベントが終了の指示である場合(ステップ
S404でYES)、ステップS411に進み、終了処
理を実行後、本処理を終了する。
In step S404, it is determined whether or not the event generated in response to the operation performed by the user is an end instruction. If the event is an end instruction (YES in step S404), the process advances to step S411, the end process is executed, and then the process ends.

【0035】一方、イベントが終了の指示でない場合
(ステップS404でNO)、ステップS405に進
む。ステップS405では、イベントがトランザクショ
ン生成の指示であるか否かを判定する。イベントがトラ
ンザクション生成の指示でない場合(ステップS405
でNO)、ステップS410に進み、そのイベントに対
応する処理(ここでは「他の処理」と表す)を実行後、
ステップS402に戻り、処理を繰り返す。
On the other hand, if the event is not an end instruction (NO in step S404), the flow advances to step S405. In step S405, it is determined whether the event is a transaction generation instruction. If the event is not a transaction generation instruction (step S405)
NO), the process proceeds to step S410, and after executing the process corresponding to the event (referred to as “other process” here),
The process returns to step S402 and the process is repeated.

【0036】ステップS403で検出したイベントがト
ランザクション生成の指示である場合(ステップS40
5でYES)は、ステップS406に進む。ステップS
406では、トランザクション生成処理を実行し、ユー
ザが指示した条件に対応したトランザクションを生成す
る。続く、ステップS407で、トランザクションの生
成が成功したか否かを判定する。トランザクション生成
が成功しなかった場合(ステップS407でNO)、ス
テップS402に戻り、処理を繰り返す。一方、トラン
ザクションの生成に成功した場合(ステップS407で
YES)、ステップS408に進む。
When the event detected in step S403 is a transaction generation instruction (step S40)
(YES in 5), the process proceeds to step S406. Step S
At 406, a transaction generation process is executed to generate a transaction corresponding to the condition designated by the user. Subsequently, in step S407, it is determined whether or not the transaction has been successfully generated. If the transaction generation is not successful (NO in step S407), the process returns to step S402 and the process is repeated. On the other hand, if the transaction has been successfully generated (YES in step S407), the process advances to step S408.

【0037】ステップS408で、ユーザの指示に従っ
たトランザクション処理を実行する。続く、ステップS
409で、トランザクション廃棄処理を実行し、処理済
の不要となったトランザクションを廃棄し、ステップS
402に戻り、上記処理を繰り返す。
In step S408, transaction processing according to the user's instruction is executed. Continued, step S
In step 409, the transaction discard processing is executed, and the unnecessary transactions that have already been processed are discarded.
Returning to 402, the above processing is repeated.

【0038】次に、ステップS406のトランザクショ
ン生成処理において表示されるトランザクション生成画
面の一例について、図5を用いて説明する。
Next, an example of the transaction generation screen displayed in the transaction generation processing of step S406 will be described with reference to FIG.

【0039】図5は実施形態1のトランザクション生成
画面の一例を示す図である。図5において、51はユー
ザ名の入力エリアである。52はユーザ名に対応するパ
スワードの入力エリアである。53はデータベースの種
類を指定するコンボボックスである。54はデータベー
スへの接続サービスを提供するサーバ名の入力エリアで
ある。55は前述のサーバ名の入力エリアに入力するサ
ーバ名が不明な場合に利用されるサーバ名選択ダイアロ
グを表示するためのボタンである。56はデータベース
名の入力エリアである。57は前述のデータベース名の
入力エリアに入力するデータベース名が不明な場合に利
用されるデータベース名選択ダイアログを表示するため
のボタンである。
FIG. 5 is a diagram showing an example of the transaction generation screen of the first embodiment. In FIG. 5, reference numeral 51 is a user name input area. Reference numeral 52 is an input area for a password corresponding to the user name. Reference numeral 53 is a combo box for designating the type of database. Reference numeral 54 is an input area for a server name that provides a connection service to the database. Reference numeral 55 is a button for displaying a server name selection dialog which is used when the server name input in the server name input area is unknown. Reference numeral 56 is a database name input area. Reference numeral 57 is a button for displaying a database name selection dialog used when the database name input in the database name input area is unknown.

【0040】また、58は上記の各エリアで指定された
値を用いてトランザクション生成を指示する場合のボタ
ンである。59はトランザクション生成をキャンセルす
るためのボタンである。
Reference numeral 58 is a button for instructing transaction generation using the values specified in the above areas. Reference numeral 59 is a button for canceling transaction generation.

【0041】次に、ステップS406のトランザクショ
ン生成処理の詳細について、図6を用いて説明する。図
6は実施形態1のステップS406におけるトランザク
ション生成処理の詳細を示すフローチャートである。
Details of the transaction generation processing in step S406 will be described below with reference to FIG. FIG. 6 is a flowchart showing details of the transaction generation processing in step S406 of the first embodiment.

【0042】トランザクション生成処理が起動される
と、ステップS601で、生成パラメータ入力処理を実
行し、図5で説明したトランザクション生成処理画面を
表示し、ユーザによる各種パラメータの指定を促す。続
く、ステップS602で、上記生成パラメータ入力処理
において、ユーザがトランザクションの生成を指示した
か否かを判定する。トランザクション生成が指示された
場合(OKボタン58がクリックされた場合、ステップ
S602でYES)、ステップS603に進み、DBト
ランザクション生成処理を実行し、ユーザにより指定さ
れた各種パラメータに対応したトランザクションを生成
する。ここでは、後述の図23のようなDBトランザク
ションが生成されることになるが、この詳細については
図23、図24により後述する。
When the transaction generation processing is activated, generation parameter input processing is executed in step S601, the transaction generation processing screen described in FIG. 5 is displayed, and the user is prompted to specify various parameters. Subsequently, in step S602, it is determined whether or not the user has instructed the generation of the transaction in the generation parameter input processing. When the transaction generation is instructed (when the OK button 58 is clicked, YES in step S602), the process proceeds to step S603, DB transaction generation processing is executed, and a transaction corresponding to various parameters designated by the user is generated. . Here, a DB transaction as shown in FIG. 23, which will be described later, is generated, and details thereof will be described later with reference to FIGS. 23 and 24.

【0043】続く、ステップS604で、DBトランザ
クション生成処理が成功したか否かを判定する。DBト
ランザクション生成処理が成功した場合(ステップS6
04でYES)、「成功」として処理を終了する。一
方、ステップS604で、DBトランザクション生成処
理が成功しなかった場合(ステップS604でNO)、
あるいはステップS602で、トランザクション生成が
指示されなかった場合(キャンセルボタン59がクリッ
クされた場合、ステップS602でNO)、「失敗」と
して処理を終了する。
Then, in step S604, it is determined whether or not the DB transaction generation processing has succeeded. When the DB transaction generation process is successful (step S6)
If YES, the process ends as "success". On the other hand, if the DB transaction generation process is not successful in step S604 (NO in step S604),
Alternatively, in step S602, when the transaction generation is not instructed (when the cancel button 59 is clicked, NO in step S602), the processing ends as “failure”.

【0044】次に、ステップS408のトランザクショ
ン処理において表示されるトランザクション処理画面の
一例について、図7を用いて説明する。図7は実施形態
1のトランザクション処理画面の一例を示す図である。
Next, an example of the transaction processing screen displayed in the transaction processing of step S408 will be described with reference to FIG. FIG. 7 is a diagram showing an example of the transaction processing screen of the first embodiment.

【0045】図7において、71はオブジェクトの追加
を指示するメニューアイテムである。72はオブジェク
トの削除を指示するメニューアイテムである。73はオ
ブジェクトの編集を指示するメニューアイテムである。
In FIG. 7, reference numeral 71 is a menu item for instructing the addition of an object. Reference numeral 72 is a menu item for instructing deletion of an object. Reference numeral 73 is a menu item for instructing to edit an object.

【0046】次に、ステップS408のトランザクショ
ン処理の詳細について、図8を用いて説明する。図8は
実施形態1のステップS408のトランザクション処理
の詳細を示すフローチャートである。
Details of the transaction processing in step S408 will be described below with reference to FIG. FIG. 8 is a flowchart showing details of the transaction processing in step S408 of the first embodiment.

【0047】トランザクション処理が起動されると、ス
テップS801で、初期化処理を実行し、各種内部デー
タを初期化する。次に、ステップS802で、画面表示
処理を実行し、図7で説明したトランザクション処理画
面を表示する。続く、ステップS803で、イベント待
ち処理を実行し、ユーザの操作に対応したイベントを待
機する。
When the transaction process is activated, an initialization process is executed in step S801 to initialize various internal data. Next, in step S802, screen display processing is executed to display the transaction processing screen described in FIG. In a succeeding step S803, an event waiting process is executed to wait for an event corresponding to a user operation.

【0048】ステップS803においてイベントの発生
が検出されたならば、ステップS804で、ユーザが行
った操作に対して発生したイベントが終了の指示である
か否かを判定する。イベントが終了の指示である場合
(ステップS804でYES)、ステップS806に進
み、終了処理を実行後、処理を終了する。一方、イベン
トが終了の指示でない場合(ステップS804でN
O)、ステップS805に進み、指示されたイベントに
対応する処理(イベント対応処理)を実行し、イベント
に対応する処理を実行後、ステップS802に戻り、処
理を繰り返す。なお、ステップS805におけるイベン
ト対応処理は、メニューアイテム71〜73のいずれか
が選択されることにより、オブジェクトの追加、オブジ
ェクトの削除、オブジェクトの編集が行われる。
If the occurrence of an event is detected in step S803, it is determined in step S804 whether the event occurred in response to the operation performed by the user is an end instruction. If the event is an end instruction (YES in step S804), the process advances to step S806 to execute an end process, and then the process ends. On the other hand, if the event is not the end instruction (N in step S804)
O), the process proceeds to step S805, the process corresponding to the designated event (event corresponding process) is executed, the process corresponding to the event is executed, the process returns to step S802, and the process is repeated. It should be noted that in the event handling process in step S805, addition of an object, deletion of an object, or editing of an object is performed by selecting one of the menu items 71 to 73.

【0049】ステップS805のイベント対応処理にお
いて、オブジェクトの追加が指示されると、以下に説明
するオブジェクト選択追加処理が実行される。
When an object is instructed to be added in the event handling process in step S805, an object selection / addition process described below is executed.

【0050】まず、オブジェクト選択追加処理により表
示される追加オブジェクト選択画面の一例について、図
9を用いて説明する。図9は実施形態1の追加オブジェ
クト選択画面の一例を示す図である。
First, an example of the additional object selection screen displayed by the object selection / addition process will be described with reference to FIG. FIG. 9 is a diagram illustrating an example of the additional object selection screen according to the first embodiment.

【0051】図9において、91はクラス名の入力エリ
アである。92はクラス名の入力エリアで指定されたク
ラスの情報を表示するクラス情報ダイアログを表示する
ためのボタンである。93はクラス名の入力エリアに入
力するクラス名が不明な場合に利用されるクラス情報が
格納されたファイルを選択・ロードするクラスファイル
選択ダイアログを表示するためのボタンである。94は
クラス名の入力エリアで指定されたクラスに対応したオ
ブジェクトを生成するためのボタンである。95は既存
のオブジェクトファイルを選択・ロードするオブジェク
トファイル選択ダイアログを表示するためのボタンであ
る。また、96は上記各ボタンで生成又はロードされた
オブジェクトの追加を指示する場合のボタンである。9
7はオブジェクトの追加をキャンセルするためのボタン
である。
In FIG. 9, reference numeral 91 is a class name input area. Reference numeral 92 is a button for displaying a class information dialog which displays information on the class specified in the class name input area. Reference numeral 93 is a button for displaying a class file selection dialog for selecting / loading a file storing class information used when the class name input in the class name input area is unknown. Reference numeral 94 is a button for generating an object corresponding to the class designated in the class name input area. Reference numeral 95 is a button for displaying an object file selection dialog for selecting and loading an existing object file. Reference numeral 96 is a button for instructing addition of an object generated or loaded by each of the above buttons. 9
Reference numeral 7 is a button for canceling addition of an object.

【0052】次に、オブジェクト選択追加処理の詳細に
ついて、図10を用いて説明する。図10は実施形態1
のイベント対応処理におけるオブジェクトの追加の指示
に対応したオブジェクト選択追加処理の詳細を示すフロ
ーチャートである。
Next, details of the object selection / addition processing will be described with reference to FIG. FIG. 10 shows the first embodiment.
5 is a flowchart showing details of object selection / addition processing corresponding to an instruction to add an object in the event handling processing of FIG.

【0053】オブジェクト選択追加処理が起動される
と、ステップS1001で、初期化処理を実行し、各種
内部データを初期化する。次に、ステップS1002
で、画面表示処理を実行し、図9で説明した追加オブジ
ェクト選択画面を表示する。続く、ステップS1003
で、イベント待ち処理を実行し、ユーザの操作に対応し
たイベントを待機する。ステップS1003でユーザ操
作によるイベントの発生が検出されたならば、処理はス
テップS1004へ進む。
When the object selection / addition process is activated, an initialization process is executed in step S1001 to initialize various internal data. Next, step S1002.
Then, the screen display process is executed to display the additional object selection screen described in FIG. Continued at step S1003
Then, the event waiting process is executed to wait for the event corresponding to the user operation. If the occurrence of an event due to a user operation is detected in step S1003, the process proceeds to step S1004.

【0054】ステップS1004では、ユーザが行った
操作に対して発生したイベント種別を判定し、対応する
処理に分岐する。オブジェクトを生成するボタン94が
クリックされたならば、イベント種別がオブジェクト生
成の指示であると判断し、ステップS1006に進む。
ステップS1006では、オブジェクト生成処理を実行
して、オブジェクトを生成する。その後、ステップS1
002に戻り、処理を繰り返す。
In step S1004, the event type generated in response to the operation performed by the user is determined, and the process branches to the corresponding process. If the button 94 for generating an object is clicked, it is determined that the event type is an instruction for generating an object, and the process proceeds to step S1006.
In step S1006, an object generation process is executed to generate an object. Then, step S1
Returning to 002, the process is repeated.

【0055】また、ステップS1004でOKボタン9
6がクリックされた場合は、イベント種別が上記で生成
又はロードされたオブジェクトの追加の指示であると判
断され、ステップS1007に進む。ステップS100
7では、オブジェクト追加確定処理を実行し、オブジェ
クトをデータベースに追加後、変更を確定する。なお、
オブジェクト追加確定処理については、図19により後
述する。その結果、続く、ステップS1008で、オブ
ジェクトの変更が成功したか否かを判定する。オブジェ
クトの変更が成功した場合(ステップS1008でYE
S)は、ステップS1009に進み、終了処理を実行
後、「成功」として処理を終了する。一方、オブジェク
トの変更が成功しなかった場合(ステップS1008で
NO)は、ステップS1010の終了処理を実行後、
「失敗」として処理を終了する。
In step S1004, the OK button 9
When 6 is clicked, it is determined that the event type is an instruction to add the object generated or loaded above, and the process proceeds to step S1007. Step S100
In 7, the object addition confirmation processing is executed to add the object to the database, and then the change is confirmed. In addition,
The object addition confirmation process will be described later with reference to FIG. As a result, in a succeeding step S1008, it is determined whether or not the change of the object is successful. If the object change is successful (YE in step S1008)
In step S1009, the process proceeds to step S1009, and after the end process is executed, the process ends as “success”. On the other hand, if the change of the object has not succeeded (NO in step S1008), after executing the ending process in step S1010,
The process ends as “failure”.

【0056】イベント種別が上記以外である場合には、
ステップS1005に進み、その他イベント対応処理に
より、その他イベントに対応する処理を実行後、ステッ
プS1002に戻り、処理を繰り返す。
If the event type is other than the above,
The process proceeds to step S1005, the process corresponding to the other event is executed by the other event handling process, and then the process returns to step S1002 to repeat the process.

【0057】次に、ステップS1006のオブジェクト
生成処理について説明する。
Next, the object generation processing in step S1006 will be described.

【0058】まず、オブジェクト生成処理において表示
されるオブジェクト新規作成時のオブジェクト編集画面
の一例について、図11を用いて説明する。図11は実
施形態1によるオブジェクト新規作成時のオブジェクト
編集画面の一例を示す図である。
First, an example of the object edit screen at the time of creating a new object displayed in the object creating process will be described with reference to FIG. FIG. 11 is a diagram showing an example of an object edit screen when creating a new object according to the first embodiment.

【0059】図11において、111は編集対象となる
オブジェクトのクラス名を示すエリアである。112は
オブジェクトのクラスが持つフィールド名のリストを示
すエリアである。113はフィールド名のリストの中か
ら選択されているフィールドのクラス名を示すエリアで
ある。114は同フィールドの属性を示すエリアであ
る。
In FIG. 11, 111 is an area showing the class name of the object to be edited. An area 112 indicates a list of field names included in the object class. An area 113 indicates the class name of the field selected from the field name list. Reference numeral 114 is an area indicating the attribute of the same field.

【0060】115は同フィールドに格納される値の入
力エリアである。116は入力エリアに直接入力するこ
とが困難なオブジェクトを指定するためのオブジェクト
指定ダイアログを表示するためのボタンである。117
は前記オブジェクトのクラスが持つメソッド名のリスト
を示すエリアである。また、118は上記で編集された
オブジェクトの編集内容の確定を指示する場合のボタン
である。119はオブジェクトの編集内容をキャンセル
するためのボタンである。
Reference numeral 115 is an input area for a value stored in the same field. Reference numeral 116 is a button for displaying an object designation dialog for designating an object that is difficult to directly input in the input area. 117
Is an area showing a list of method names of the object class. Reference numeral 118 is a button for instructing the confirmation of the edited content of the object edited above. A button 119 is used to cancel the editing content of the object.

【0061】次に、ステップS1006のオブジェクト
生成処理の詳細について、図11及び図12を用いて説
明する。図12は実施形態1のステップS1006のオ
ブジェクト生成処理の詳細を示すフローチャートであ
る。
Details of the object generation processing in step S1006 will be described below with reference to FIGS. 11 and 12. FIG. 12 is a flowchart showing details of the object generation processing in step S1006 of the first embodiment.

【0062】オブジェクト生成処理が起動されると、ス
テップS1201で、空オブジェクト生成処理を実行
し、指定されたクラスに対応するデフォルトインスタン
スを生成する。空オブジェクト生成処理の結果、続く、
ステップS1202で、デフォルトインスタンスの生成
に成功したか否かを判定する。デフォルトインスタンス
の生成に成功した場合(ステップS1202でYE
S)、ステップS1203に進み、オブジェクト編集処
理を実行し、図11で説明したオブジェクト編集画面を
表示し、ユーザの操作を受け付ける。
When the object generation processing is activated, empty object generation processing is executed in step S1201 to generate a default instance corresponding to the designated class. As a result of empty object generation processing, continued,
In step S1202, it is determined whether the default instance has been successfully created. If the default instance is successfully generated (YES in step S1202)
S), the process proceeds to step S1203, the object edit process is executed, the object edit screen described in FIG. 11 is displayed, and the user's operation is accepted.

【0063】オブジェクト編集処理の結果、続く、ステ
ップS1204で、オブジェクトの編集内容の確定が指
示されたか否かを判定する。この判定は、OKボタン1
18かキャンセルボタン119のいずれがクリックされ
たかに基づいてなされる。オブジェクトの編集内容の確
定が指示された場合(OKボタン118がクリックされ
た場合、ステップS1204でYES)、「成功」とし
て処理を終了する。
As a result of the object edit processing, it is determined in next step S1204 whether or not an instruction to confirm the edit content of the object has been issued. This judgment is OK button 1
This is done based on which of the 18 or the cancel button 119 is clicked. When the confirmation of the edited content of the object is instructed (when the OK button 118 is clicked, YES in step S1204), the processing ends as “success”.

【0064】一方、ステップS1204で、オブジェク
トの編集内容の確定が指示されなかった場合(本例で
は、キャンセルボタン119がクリックされた場合であ
り、ステップS1204でNOと判定される)、あるい
はステップS1202で、デフォルトインスタンスの生
成に成功しなかった場合(ステップS1202でN
O)、「失敗」として処理を終了する。
On the other hand, if it is not instructed to confirm the edit content of the object in step S1204 (in this example, the cancel button 119 is clicked, it is determined as NO in step S1204), or step S1202. In the case where the generation of the default instance is not successful (N in step S1202)
O), the processing ends as “failure”.

【0065】次に、ステップS805のイベント対応処
理において、オブジェクトの編集を指示するメニューア
イテム73(図7)が選択された場合の処理について説
明する。
Next, in the event handling process of step S805, the process when the menu item 73 (FIG. 7) for instructing the editing of the object is selected will be described.

【0066】まず、オブジェクトの編集の指示に対応し
たオブジェクト選択編集処理が起動されることにより表
示されるクラス選択画面の一例について、図13を用い
て説明する。図13は実施形態1のクラス選択画面の一
例を示す図である。なお、クラス選択画面は、後述のス
テップS1501において表示される。
First, an example of the class selection screen displayed when the object selection editing process corresponding to the object editing instruction is activated will be described with reference to FIG. FIG. 13 is a diagram showing an example of the class selection screen of the first embodiment. The class selection screen is displayed in step S1501 described below.

【0067】図13において、131はクラス名の選択
リストである。また、132は上記で選択されたクラス
に対応するオブジェクトの編集を指示する場合のボタン
である。133はオブジェクトの編集をキャンセルする
ためのボタンである。
In FIG. 13, 131 is a selection list of class names. Further, 132 is a button for instructing to edit an object corresponding to the class selected above. 133 is a button for canceling the editing of the object.

【0068】また、ステップS805のイベント対応処
理においてオブジェクトの編集が指示された場合に実行
されるオブジェクト選択編集処理(後述のステップS1
507)で表示される、既存オブジェクト編集時のオブ
ジェクト編集画面の一例について、図14を用いて説明
する。
Further, an object selection / editing process (step S1 to be described later) executed when an object edit is instructed in the event handling process of step S805.
An example of the object edit screen at the time of editing the existing object displayed in 507) will be described with reference to FIG.

【0069】図14は実施形態1の既存オブジェクト編
集時のオブジェクト編集画面の一例を示す図である。図
14では、ユーザ操作により、図11で示した新規作成
時の状態から、142のフィールド名「name」の値が、
145のように「日本 太郎」から「日本 太郎1」に
変更された様子を表している。
FIG. 14 is a diagram showing an example of an object edit screen when editing an existing object according to the first embodiment. In FIG. 14, the value of the field name “name” of 142 is changed from the state at the time of new creation shown in FIG. 11 by the user operation.
As shown by 145, the state is changed from "Japan Taro" to "Japan Taro 1".

【0070】次に、オブジェクト選択編集処理の詳細に
ついて、図15を用いて説明する。図15は実施形態1
のオブジェクト選択編集処理の詳細を示すフローチャー
トである。
Details of the object selection / editing process will be described with reference to FIG. FIG. 15 shows the first embodiment.
6 is a flowchart showing details of the object selection editing process of FIG.

【0071】オブジェクト選択編集処理が起動される
と、ステップS1501で、クラス選択処理を実行し、
図13で説明したクラス選択画面を表示し、ユーザの選
択操作を受け付ける。クラス選択処理の結果、続く、ス
テップS1502で、クラスに対応するオブジェクトの
編集が指示されたか否かを判定する。この判定は、OK
ボタン132とキャンセルボタン133のいずれがクリ
ックされたかに従ってなされる。オブジェクトの編集が
指示されなかった場合(キャンセルボタン133がクリ
ックされた場合、ステップS1502でNO)は、「失
敗」として処理を終了する。一方、オブジェクトの編集
が指示された場合(OKボタン132がクリックされた
場合、ステップS1502でYES)は、ステップS1
503に進む。
When the object selection / editing process is activated, a class selection process is executed in step S1501.
The class selection screen described with reference to FIG. 13 is displayed to accept the user's selection operation. As a result of the class selection processing, in the next step S1502, it is determined whether or not an instruction to edit the object corresponding to the class has been given. This decision is OK
This is performed according to which one of the button 132 and the cancel button 133 is clicked. When the object editing is not instructed (when the cancel button 133 is clicked, NO in step S1502), the processing ends as “failure”. On the other hand, if the object edit is instructed (YES in step S1502 if the OK button 132 is clicked), step S1
Proceed to 503.

【0072】ステップS1503で、全オブジェクト取
得確定処理を実行し、選択されたクラスに対応する全て
のオブジェクトを取得する。なお、ステップS1503
の全オブジェクト取得確定処理については図18を参照
して後述する。全オブジェクト取得確定処理の結果、続
く、ステップS1504で、オブジェクトの取得が成功
したか否かを判定する。オブジェクトの取得が成功しな
かった場合(ステップS1504でNO)、「失敗」と
して処理を終了する。一方、オブジェクトの取得が成功
した場合(ステップS1504でYES)、ステップS
1505に進む。そして、ステップS1505で、処理
対象を前記取得された全オブジェクトの先頭とするべく
初期化を行い、次ステップ以降でそれぞれのオブジェク
トに対する処理を繰り返す。
In step S1503, all object acquisition confirmation processing is executed to acquire all objects corresponding to the selected class. Note that step S1503
The all-object acquisition confirmation process will be described later with reference to FIG. As a result of the all object acquisition confirmation process, in the next step S1504, it is determined whether or not the object acquisition has succeeded. If acquisition of the object has not succeeded (NO in step S1504), the processing ends as “failure”. On the other hand, if acquisition of the object is successful (YES in step S1504), step S
Proceed to 1505. Then, in step S1505, initialization is performed so that the processing target is the head of all the acquired objects, and the processing for each object is repeated in the subsequent steps.

【0073】まず、ステップS1506で、全処理対象
のオブジェクトに対する処理が終了しているか否か判定
する。全処理対象のオブジェクトに対する処理が終了し
ている場合(ステップS1506でYES)「成功」と
して処理を終了する。一方、全処理対象のオブジェクト
に対する処理がまだ終了していない場合(ステップS1
506でNO)、ステップS1507に進む。
First, in step S1506, it is determined whether the processing for all objects to be processed has been completed. If the processes for all the objects to be processed are completed (YES in step S1506), the processing ends as “success”. On the other hand, when the processing for all the objects to be processed is not yet completed (step S1)
(No in 506), the process advances to step S1507.

【0074】ステップS1507では、オブジェクト編
集処理を実行し、図14で説明したオブジェクト編集画
面を表示してユーザの操作を受け付ける。オブジェクト
編集処理の結果、続く、ステップS1508で、オブジ
ェクトの編集内容の確定が指示されたか否かを判定す
る。この判定は、OKボタン148とキャンセルボタン
149のいずれがクリックされたかに従ってなされる。
オブジェクトの編集内容の確定が指示されなかった場合
(キャンセルボタン149がクリックされた場合、ステ
ップS1508でNO)、ステップS1511に進む。
一方、オブジェクトの編集内容の確定が指示された場合
(OKボタン148がクリックされた場合、ステップS
1508でYES)、ステップS1509に進む。
In step S1507, object edit processing is executed, the object edit screen described with reference to FIG. 14 is displayed, and the user's operation is accepted. As a result of the object edit processing, in the next step S1508, it is determined whether or not an instruction to confirm the edit content of the object has been issued. This determination is made according to which one of the OK button 148 and the cancel button 149 is clicked.
If the confirmation of the edit content of the object has not been instructed (when the cancel button 149 is clicked, NO in step S1508), the process advances to step S1511.
On the other hand, if it is instructed to confirm the edited contents of the object (when the OK button 148 is clicked, step S
(YES in 1508) and the process proceeds to step S1509.

【0075】ステップS1509では、オブジェクト更
新確定処理を実行し、確定した編集内容でデータベース
内のデータを更新し、その結果を確定する。なお、オブ
ジェクト更新確定処理については、図20を参照して後
述する。オブジェクト更新確定処理の結果、続く、ステ
ップS1510で、データの更新が成功したか否かを判
定する。データの更新が成功しなかった場合(ステップ
S1510でNO)、「失敗」として処理を終了する。
一方、データの更新が成功した場合(ステップS151
0でYES)、ステップS1511に進む。
In step S1509, the object update confirmation process is executed, the data in the database is updated with the confirmed edit contents, and the result is confirmed. The object update confirmation process will be described later with reference to FIG. As a result of the object update confirmation process, it is determined in next step S1510 whether or not the data update is successful. If the data update has not succeeded (NO in step S1510), the processing ends as “failure”.
On the other hand, if the data update is successful (step S151)
If YES, the process proceeds to step S1511.

【0076】ステップS1511では、処理対象のオブ
ジェクトを次に進め、ステップS1506に戻り、上記
処理を繰り返す。
In step S1511, the object to be processed is advanced to the next step, the process returns to step S1506, and the above process is repeated.

【0077】次に、ステップS805のイベント対応処
理において、オブジェクトの削除を指示するメニューア
イテム72がクリックされた場合の処理であるオブジェ
クト選択削除処理について説明する。
Next, the object selecting and deleting process, which is the process when the menu item 72 instructing to delete the object is clicked in the event corresponding process of step S805, will be described.

【0078】まず、オブジェクト選択削除処理において
表示される、既存オブジェクト参照時のオブジェクト参
照画面の一例について、図16を用いて説明する。図1
6は実施形態1の既存オブジェクト参照時のオブジェク
ト参照画面の一例を示す図である。この参照画面は、図
11の新規作成時や、図14の編集時のと同様の画面で
あるが、165のフィールドに格納される値の入力エリ
アが、入力不可能な状態になっている点が異なってい
る。
First, an example of the object reference screen at the time of referring to an existing object, which is displayed in the object selection / deletion process, will be described with reference to FIG. Figure 1
FIG. 6 is a diagram showing an example of an object reference screen when referring to an existing object according to the first embodiment. This reference screen is the same screen as when newly creating in FIG. 11 or when editing in FIG. 14, but the input area for the value stored in the field 165 is in a state in which input is impossible. Are different.

【0079】次に、オブジェクト選択削除処理の詳細に
ついて、図17を用いて説明する。図17は実施形態1
のオブジェクト選択削除処理の詳細を示すフローチャー
トである。
Details of the object selection / deletion process will be described below with reference to FIG. FIG. 17 shows the first embodiment.
8 is a flowchart showing details of the object selection / deletion process.

【0080】オブジェクト選択削除処理が起動される
と、ステップS1701のクラス選択処理を実行し、図
13で説明したクラス選択画面を表示し、ユーザの選択
操作を受け付ける。クラス選択処理の結果、続く、ステ
ップS1702で、クラスに対応するオブジェクトの削
除が指示されたか否かを判定する。オブジェクト選択削
除処理において、図13のOKボタン132がクリック
されるとオブジェクトの削除が指示されたと判定され
る。またキャンセルボタン133がクリックされた場合
は、オブジェクトの削除が指示されなかったと判定され
る。オブジェクトの削除が指示されなかった場合(ステ
ップS1702でNO)は「失敗」として処理を終了す
る。一方、オブジェクトの削除が指示された場合(ステ
ップS1702でYES)は、ステップS1703に進
む。
When the object selection / deletion process is activated, the class selection process of step S1701 is executed, the class selection screen described in FIG. 13 is displayed, and the user's selection operation is accepted. As a result of the class selection processing, in the next step S1702, it is determined whether or not the deletion of the object corresponding to the class is instructed. When the OK button 132 in FIG. 13 is clicked in the object selection and deletion process, it is determined that the object deletion is instructed. Further, when the cancel button 133 is clicked, it is determined that the instruction to delete the object has not been given. If deletion of the object has not been instructed (NO in step S1702), the processing ends as “failure”. On the other hand, if the deletion of the object is instructed (YES in step S1702), the process advances to step S1703.

【0081】ステップS1703では、全オブジェクト
取得確定処理を実行し、選択されたクラスに対応する全
てのオブジェクトを取得する。なお、ステップS170
3の全オブジェクト取得確定処理については図18を参
照して後述する。全オブジェクト取得確定処理の結果、
続く、ステップS1704で、オブジェクトの取得が成
功したか否かを判定する。オブジェクトの取得が成功し
なかった場合(ステップS1704でNO)、「失敗」
として処理を終了する。一方、オブジェクトの取得が成
功した場合(ステップS1704でYES)、ステップ
S1705に進む。ステップS1705では、処理対象
を前記取得された全オブジェクトの先頭にする初期化を
行い、次ステップ以降でそれぞれのオブジェクトに対す
る処理を繰り返す。
In step S1703, all object acquisition confirmation processing is executed to acquire all objects corresponding to the selected class. Note that step S170
The all object acquisition confirmation processing of No. 3 will be described later with reference to FIG. As a result of all object acquisition confirmation processing,
Subsequently, in step S1704, it is determined whether the acquisition of the object has succeeded. If acquisition of the object has not succeeded (NO in step S1704), “failure”
The processing ends. On the other hand, if acquisition of the object has succeeded (YES in step S1704), the process advances to step S1705. In step S1705, initialization is performed so that the processing targets are the heads of all the acquired objects, and the processing for each object is repeated in the subsequent steps.

【0082】まず、ステップS1706で、全処理対象
のオブジェクトに対して処理が終了したか否かを判定す
る。全処理対象のオブジェクトに対する処理が終了した
場合(ステップS1706でYES)、「成功」として
本処理を終了する。一方、全処理対象のオブジェクトに
対する処理が終了でない場合(ステップS1706でN
O)、ステップS1707に進む。
First, in step S1706, it is determined whether processing has been completed for all objects to be processed. If the processes for all the objects to be processed are complete (YES in step S1706), the process ends as “success”. On the other hand, if the processing for all objects to be processed has not been completed (N in step S1706)
O), and proceeds to step S1707.

【0083】ステップS1707では、オブジェクト参
照処理を実行し、図16で説明したオブジェクト参照画
面を表示してユーザの操作を受け付ける。オブジェクト
参照処理の結果、続く、ステップS1708で、オブジ
ェクトの削除が指示されたか否かを判定する。この判定
は、OKボタン168或はキャンセルボタン169のい
ずれがクリックされたかに基づいてなされる。オブジェ
クトの削除が指示されなかった場合(キャンセルボタン
169がクリックされた場合、ステップS1708でN
O)、ステップS1711に進む。一方、オブジェクト
の削除が指示された場合(OKボタン168がクリック
された場合、ステップS1708でYES)、ステップ
S1709に進む。
In step S1707, object reference processing is executed, the object reference screen described with reference to FIG. 16 is displayed, and the user's operation is accepted. As a result of the object reference processing, in the next step S1708, it is determined whether or not the deletion of the object is instructed. This determination is made based on whether the OK button 168 or the cancel button 169 is clicked. When the deletion of the object is not instructed (when the cancel button 169 is clicked, N in step S1708)
O), and proceeds to step S1711. On the other hand, when the deletion of the object is instructed (when the OK button 168 is clicked, YES in step S1708), the process advances to step S1709.

【0084】ステップS1709で、オブジェクト削除
確定処理を実行し、データベース内のデータを削除し、
その結果を確定する。なお、オブジェクト削除確定処理
については、図21を参照して後述する。オブジェクト
削除確定処理の結果、続く、ステップS1710で、デ
ータの削除が成功したか否かを判定する。データの削除
が成功しなかった場合(ステップS1710でNO)、
「失敗」として処理を終了する。一方、データの削除が
成功した場合(ステップS1710でYES)、ステッ
プS1711に進む。ステップS1711で、処理対象
のオブジェクトを次に進め、ステップS1706に戻
り、処理を繰り返す。
In step S1709, object deletion confirmation processing is executed to delete the data in the database,
Confirm the result. The object deletion confirmation processing will be described later with reference to FIG. As a result of the object deletion confirmation process, it is determined in next step S1710 whether or not the data deletion has succeeded. If the data deletion has not succeeded (NO in step S1710),
The process ends as “failure”. On the other hand, if the data has been successfully deleted (YES in step S1710), the process advances to step S1711. In step S1711, the object to be processed is advanced, the process returns to step S1706, and the process is repeated.

【0085】次に、上記ステップS1503、ステップ
S1703の全オブジェクト取得確定処理の詳細につい
て、図18を用いて説明する。図18は実施形態1のス
テップS1503、ステップ1703の全オブジェクト
取得確定処理の詳細を示すフローチャートである。
Details of the all object acquisition confirmation processing in steps S1503 and S1703 will be described below with reference to FIG. FIG. 18 is a flowchart showing details of the all object acquisition confirmation processing in steps S1503 and 1703 of the first embodiment.

【0086】全オブジェクト取得確定処理が起動される
と、ステップS1801で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップS1802で、全オブジェクト取得処理を
実行し、指定されたクラスに対応する全てのオブジェク
トを取得する。全オブジェクト取得処理については、図
31を参照して後述する。全オブジェクト取得処理の結
果、続く、ステップS1803で、全てのオブジェクト
の取得が成功したか否かを判定する。全てのオブジェク
トの取得が成功した場合(ステップS1803でYE
S)、ステップS1804に進む。一方、全てのオブジ
ェクトの取得が成功しなかった場合(ステップS180
3でNO)、ステップS1805に進む。
When the all object acquisition confirmation process is activated, a DB transaction start process is executed in step S1801 to declare the start of a transaction. In a succeeding step S1802, an all object acquisition process is executed to acquire all objects corresponding to the designated class. The all object acquisition process will be described later with reference to FIG. As a result of the all object acquisition process, in the next step S1803, it is determined whether acquisition of all objects has succeeded. If all objects have been successfully acquired (YES in step S1803)
S), and proceeds to step S1804. On the other hand, if acquisition of all objects has not succeeded (step S180)
No in step 3), the process proceeds to step S1805.

【0087】ステップS1804で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。一
方、ステップS1805では、DBトランザクション取
消処理を実行し、これまでのデータベースに対する処理
を取り消し、「失敗」として処理を終了する。
In step S1804, the DB transaction confirmation processing is executed, the processing for the database so far is confirmed, and the processing ends as "success". On the other hand, in step S1805, the DB transaction cancellation processing is executed, the processing on the database so far is canceled, and the processing ends as “failure”.

【0088】次に、ステップS1007のオブジェクト
追加確定処理の詳細について、図19を用いて説明す
る。図19は実施形態1のステップS1007のオブジ
ェクト追加確定処理の詳細を示すフローチャートであ
る。
Details of the object addition confirmation process in step S1007 will be described below with reference to FIG. FIG. 19 is a flowchart showing details of the object addition confirmation process of step S1007 of the first embodiment.

【0089】オブジェクト追加確定処理が起動される
と、ステップS1901で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップS1902で、オブジェクト追加処理を実
行し、指定されたオブジェクトをデータベースに追加す
る。オブジェクト追加処理については図32を参照して
後述する。オブジェクト追加処理の結果、続く、ステッ
プS1903で、オブジェクトの追加が成功したか否か
を判定する。オブジェクトの追加が成功した場合(ステ
ップS1903でYES)、ステップS1904に進
む。一方、オブジェクトの追加が成功しなかった場合
(ステップS1903でNO)、ステップS1905に
進む。
When the object addition confirmation process is activated, a DB transaction start process is executed in step S1901 to declare the start of a transaction. In a succeeding step S1902, an object adding process is executed to add the designated object to the database. The object addition process will be described later with reference to FIG. As a result of the object addition processing, in the next step S1903, it is determined whether or not the addition of the object is successful. If the addition of the object has succeeded (YES in step S1903), the process advances to step S1904. On the other hand, if the addition of the object has not succeeded (NO in step S1903), the process advances to step S1905.

【0090】ステップS1904で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。一
方、ステップS1905では、DBトランザクション取
消処理を実行し、これまでのデータベースに対する処理
を取り消し、「失敗」として処理を終了する。
In step S1904, the DB transaction confirmation processing is executed, the processing for the database so far is confirmed, and the processing ends as "success". On the other hand, in step S1905, the DB transaction cancellation processing is executed, the processing on the database so far is canceled, and the processing ends as “failure”.

【0091】次に、ステップS1509のオブジェクト
更新確定処理の詳細について、図20を用いて説明す
る。図20は実施形態1のステップS1509のオブジ
ェクト更新確定処理の詳細を示すフローチャートであ
る。
Details of the object update confirmation process in step S1509 will be described below with reference to FIG. FIG. 20 is a flow chart showing details of the object update confirmation process of step S1509 of the first embodiment.

【0092】オブジェクト更新確定処理が起動される
と、ステップS2001で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップS2002で、オブジェクト更新処理を実
行し、指定されたオブジェクトでデータベースを更新す
る。オブジェクト更新処理については、図33を参照し
て後述する。オブジェクト更新処理の結果、続く、ステ
ップS2003で、オブジェクトの更新が成功したか否
かを判定する。オブジェクトの更新が成功した場合(ス
テップS2003でYES)、ステップS2004に進
む。一方、オブジェクトの更新が成功しなかった場合
(ステップS2003でNO)、ステップS2005に
進む。
When the object update confirmation process is activated, a DB transaction start process is executed in step S2001 to declare the start of a transaction. In a succeeding step S2002, an object updating process is executed to update the database with the designated object. The object update process will be described later with reference to FIG. As a result of the object update processing, in the next step S2003, it is determined whether or not the object update is successful. If the object has been updated successfully (YES in step S2003), the process advances to step S2004. On the other hand, if the update of the object has not succeeded (NO in step S2003), the process advances to step S2005.

【0093】ステップS2004で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。一
方、ステップS2005では、DBトランザクション取
消処理を実行し、これまでのデータベースに対する処理
を取り消し、「失敗」として処理を終了する。
In step S2004, DB transaction confirmation processing is executed, the processing for the database so far is confirmed, and the processing ends as "success". On the other hand, in step S2005, the DB transaction cancellation processing is executed, the processing for the database so far is canceled, and the processing ends as "failure".

【0094】次に、ステップS1709のオブジェクト
削除確定処理の詳細について、図21を用いて説明す
る。図21は実施形態1のステップS1709のオブジ
ェクト削除確定処理の詳細を示すフローチャートであ
る。
Details of the object deletion confirmation process in step S1709 will be described below with reference to FIG. FIG. 21 is a flowchart showing details of the object deletion confirmation process of step S1709 of the first embodiment.

【0095】オブジェクト削除確定処理が起動される
と、ステップS2101で、DBトランザクション開始
処理を実行し、トランザクションの開始を宣言する。続
く、ステップS2102で、オブジェクト削除処理を実
行し、指定されたオブジェクトをデータベースから削除
する。このオブジェクト削除処理については、図34を
参照して後述する。オブジェクト削除処理の結果、続
く、ステップS2103で、オブジェクトの削除が成功
したか否かを判定する。オブジェクトの削除が成功した
場合(ステップS2103でYES)、ステップS21
04に進む。一方、オブジェクトの削除が成功しなかっ
た場合(ステップS2103でNO)、ステップS21
05に進む。
When the object deletion confirmation process is activated, a DB transaction start process is executed in step S2101, and the start of a transaction is declared. In a succeeding step S2102, object deletion processing is executed to delete the designated object from the database. This object deletion processing will be described later with reference to FIG. As a result of the object deletion processing, in the next step S2103, it is determined whether or not the object has been successfully deleted. When the deletion of the object is successful (YES in step S2103), step S21
Go to 04. On the other hand, if the deletion of the object is not successful (NO in step S2103), step S21
Go to 05.

【0096】ステップS2104で、DBトランザクシ
ョン確定処理を実行し、これまでのデータベースに対す
る処理を確定し、「成功」として処理を終了する。一
方、ステップS2105で、DBトランザクション取消
処理を実行し、これまでのデータベースに対する処理を
取り消し、「失敗」として処理を終了する。
In step S2104, the DB transaction confirmation processing is executed, the processing for the database so far is confirmed, and the processing ends as "success". On the other hand, in step S2105, the DB transaction cancellation processing is executed, the processing for the database so far is canceled, and the processing ends as "failure".

【0097】以上のような構成を有し、上記基本処理を
実行する本実施形態の情報処理装置におけるトランザク
ション処理について詳細に説明する。
The transaction processing in the information processing apparatus of this embodiment having the above-mentioned configuration and executing the above-mentioned basic processing will be described in detail.

【0098】図22は実施形態1の情報処理装置の機能
構成を示す図である。DBマネージャー508は、1つ
以上のアプリケーションプログラムA501、アプリケ
ーションプログラムX502からの要求に対応したデー
タベース(DB)506、507との間の一連のトラン
ザクション(取引)を扱うDBトランザクション50
3、504、505を生成・廃棄する。
FIG. 22 is a block diagram showing the functional arrangement of the information processing apparatus according to the first embodiment. The DB manager 508 handles a series of transactions (transactions) between one or more application programs A 501 and databases (DB) 506, 507 corresponding to a request from the application program X 502.
3, 504, 505 are generated and discarded.

【0099】図22において、アプリケーションプログ
ラムA501からの2つの要求に対応して、2つのDB
トランザクション503、504が生成され、それぞれ
データベース506、507が対応付けられている。ま
た、アプリケーションプログラムX502からの要求に
対応したDBトランザクション505は、DBトランザ
クション504と同じデータベース507が対応付けら
れている。
In FIG. 22, two DBs corresponding to two requests from the application program A 501
Transactions 503 and 504 are generated, and databases 506 and 507 are associated with them, respectively. Further, the DB transaction 505 corresponding to the request from the application program X502 is associated with the same database 507 as the DB transaction 504.

【0100】次に、DBトランザクションの内部データ
について、図23を用いて説明する。図23は実施形態
1のDBトランザクションの内部データを示す図であ
る。図23において、DBトランザクションは、511
に示すように、トランザクションが実行中かどうかを示
す実行ステータスと、トランザクション対象のデータベ
ース情報512と、トランザクション実行中に行われた
未確定の処理リスト513と、トランザクション生成後
に処理対象となったアプリケーションオブジェクトとD
Bオブジェクトの関連を記憶するオブジェクト対応テー
ブル514の内部データを構成する。
Next, the internal data of the DB transaction will be described with reference to FIG. FIG. 23 is a diagram showing internal data of the DB transaction of the first embodiment. In FIG. 23, the DB transaction is 511.
As shown in, the execution status indicating whether the transaction is being executed, the transaction target database information 512, the undetermined processing list 513 executed during the transaction execution, and the application object that is the processing target after the transaction is generated. And D
The internal data of the object correspondence table 514 that stores the relationship of the B object is configured.

【0101】次に、ステップS603のDBトランザク
ション生成処理の詳細について、図24を用いて説明す
る。図24は実施形態1のステップS603のDBトラ
ンザクション生成処理の詳細を示すフローチャートであ
る。
Details of the DB transaction generation processing in step S603 will be described below with reference to FIG. FIG. 24 is a flowchart showing details of the DB transaction generation processing in step S603 of the first embodiment.

【0102】DBトランザクション生成処理が起動され
ると、ステップS5201で、初期化処理を実行し、図
23で説明したDBトランザクションの内部データを初
期化する。続く、ステップS5202で、DB接続処理
を実行し、指定された条件でデータベースに接続する。
DB接続処理の結果、続く、ステップS5203で、デ
ータベースの接続が成功したか否かを判定する。接続が
成功しなかった場合(ステップS5203でNO)、
「失敗」として処理を終了する。一方、接続が成功した
場合(ステップS5203でYES)、ステップS52
04に進む。ステップS5204では、接続に関連した
情報をDBトランザクションの内部データに格納し、
「成功」として処理を終了する。
When the DB transaction generation process is activated, an initialization process is executed in step S5201 to initialize the internal data of the DB transaction described in FIG. Then, in step S5202, a DB connection process is executed to connect to the database under the specified conditions.
As a result of the DB connection processing, in the next step S5203, it is determined whether or not the database connection is successful. If the connection is not successful (NO in step S5203),
The process ends as “failure”. On the other hand, if the connection is successful (YES in step S5203), step S52
Go to 04. In step S5204, information related to the connection is stored in the internal data of the DB transaction,
The process ends as “success”.

【0103】次に、図18の全オブジェクト取得確定処
理、図19のオブジェクト追加確定処理、図20のオブ
ジェクト更新確定処理、図21のオブジェクト削除確定
処理それぞれにおけるステップS1801、ステップS
1901、ステップS2001、ステップS2101の
DBトランザクション開始処理の詳細について、図25
を用いて説明する。
Next, step S1801 and step S in each of all object acquisition confirmation processing of FIG. 18, object addition confirmation processing of FIG. 19, object update confirmation processing of FIG. 20, and object deletion confirmation processing of FIG.
FIG. 25 shows details of the DB transaction start processing of 1901, step S2001, and step S2101.
Will be explained.

【0104】図25は実施形態1のステップS180
1、ステップS1901、ステップS2001、ステッ
プS2101のDBトランザクション開始処理の詳細を
示すフローチャートである。
FIG. 25 shows step S180 of the first embodiment.
It is a flowchart which shows the detail of the DB transaction start process of 1, step S1901, step S2001, and step S2101.

【0105】DBトランザクション開始処理が起動され
ると、ステップS5301で、前述のDBトランザクシ
ョンの内部データの実行ステータスを参照し、実行ステ
ータスが「停止」であるか否かを判定する。実行ステー
タスが「停止」でない場合(ステップS5301でN
O)は「失敗」として本処理を終了する。一方、実行ス
テータスが「停止」である場合(ステップS5301で
YES)、ステップS5302に進む。ステップS53
02では、未確定処理リスト513を初期化する。続
く、ステップS5303で、実行ステータスを「実行
中」に変更し、「成功」として処理を終了する。
When the DB transaction start process is activated, it is checked in step S5301 with reference to the execution status of the internal data of the DB transaction described above whether the execution status is "stop". When the execution status is not "stop" (N in step S5301)
O) regards this as "failure" and terminates this processing. On the other hand, if the execution status is “stop” (YES in step S5301), the flow advances to step S5302. Step S53
In 02, the unconfirmed processing list 513 is initialized. In next step S5303, the execution status is changed to "execution in progress", and the processing ends as "success".

【0106】次に、図18の全オブジェクト取得確定処
理、図19のオブジェクト追加確定処理、図20のオブ
ジェクト更新確定処理、図21のオブジェクト削除確定
処理それぞれにおけるステップS1804、ステップS
1904、ステップS2004、ステップS2104の
DBトランザクション確定処理の詳細について、図26
を用いて説明する。
Next, step S1804 and step S1 in each of all object acquisition confirmation processing of FIG. 18, object addition confirmation processing of FIG. 19, object update confirmation processing of FIG. 20, and object deletion confirmation processing of FIG.
Details of the DB transaction confirmation processing of 1904, step S2004, and step S2104 will be described with reference to FIG.
Will be explained.

【0107】図26は実施形態1のステップS180
4、ステップS1904、ステップS2004、ステッ
プS2104のDBトランザクション確定処理の詳細を
示すフローチャートである。
FIG. 26 shows step S180 of the first embodiment.
4 is a flowchart showing details of the DB transaction confirmation processing in step 4, step S1904, step S2004, and step S2104.

【0108】DBトランザクション確定処理が起動され
ると、ステップS5401で、前述のDBトランザクシ
ョンの内部データの実行ステータスを参照し、実行ステ
ータスが「実行中」であるか否かを判定する。実行ステ
ータスが「実行中」でない場合(ステップS5401で
NO)、「失敗」として本処理を終了する。一方、実行
ステータスが「実行中」である場合(ステップS540
1でYES)、ステップS5402に進む。ステップS
5402で、処理対象を未確定処理リスト513の先頭
にセット後、次ステップ以降で全ての処理対象に対する
処理を繰り返す。
When the DB transaction confirmation process is activated, it is checked in step S5401 with reference to the execution status of the internal data of the DB transaction described above whether the execution status is "execution in progress" or not. If the execution status is not "execution in progress" (NO in step S5401), the processing ends as "failure". On the other hand, if the execution status is "execution in progress" (step S540)
If YES, the process proceeds to step S5402. Step S
In 5402, the processing target is set to the head of the unconfirmed processing list 513, and the processing for all the processing targets is repeated in the subsequent steps.

【0109】まず、ステップS5403で、全処理対象
に対する処理が終了したか否かを判定する。全処理対象
に対する処理が終了していない場合(ステップS540
3でNO)、ステップS5404に進み、処理対象確定
処理を実行し、処理対象となるデータベースで行われた
処理内容を確定し、ステップS5403に戻る。一方、
全処理対象に対する処理が終了している場合(ステップ
S5403でYES)、ステップS5405に進み、実
行ステータスを「停止」に変更し、「成功」として処理
を終了する。
First, in step S5403, it is determined whether the processing for all the processing targets has been completed. When the processing for all the processing targets is not completed (step S540)
(NO in step 3), the process proceeds to step S5404, the process target determination process is executed, the process content performed in the process target database is determined, and the process returns to step S5403. on the other hand,
If the processes for all process targets have been completed (YES in step S5403), the flow advances to step S5405 to change the execution status to “stop”, and ends the process as “success”.

【0110】次に、図18の全オブジェクト取得確定処
理、図19のオブジェクト追加確定処理、図20のオブ
ジェクト更新確定処理、図21のオブジェクト削除確定
処理それぞれにおけるステップS1805、ステップS
1905、ステップS2005、ステップS2105の
DBトランザクション取消処理の詳細について、図27
を用いて説明する。
Next, step S1805 and step S in each of all object acquisition confirmation processing of FIG. 18, object addition confirmation processing of FIG. 19, object update confirmation processing of FIG. 20, and object deletion confirmation processing of FIG.
27 for details of the DB transaction cancellation processing of 1905, step S2005, and step S2105.
Will be explained.

【0111】図27は実施形態1のステップS180
5、ステップS1905、ステップS2005、ステッ
プS2105のDBトランザクション取消処理の詳細を
示すフローチャートである。
FIG. 27 shows step S180 of the first embodiment.
5 is a flowchart showing details of the DB transaction cancellation processing in step 5, step S1905, step S2005, and step S2105.

【0112】DBトランザクション取消処理が起動され
ると、ステップS5501で、前述のDBトランザクシ
ョンの内部データの実行ステータスを参照し、実行ステ
ータスが「実行中」であるか否かを判定する。実行ステ
ータスが「実行中」でない場合(ステップS5501で
NO)、「失敗」として処理を終了する。一方、実行ス
テータスが「実行中」である場合(ステップS5501
でYES)、ステップS5502に進む。ステップS5
502では、実行ステータスを「停止」に変更し、「成
功」として本処理を終了する。
When the DB transaction cancel processing is activated, it is checked in step S5501 with reference to the execution status of the internal data of the DB transaction described above whether the execution status is "execution in progress" or not. If the execution status is not "execution in progress" (NO in step S5501), the processing ends as "failure". On the other hand, if the execution status is "execution in progress" (step S5501)
YES), and proceeds to step S5502. Step S5
In 502, the execution status is changed to “stop”, and the processing ends as “success”.

【0113】次に、実施形態1の情報処理装置で用いら
れるオブジェクト間の関係について、図28を用いて説
明する。図28は実施形態1の情報処理装置で用いられ
るオブジェクト間の関係を示す図である。
Next, the relationship between objects used in the information processing apparatus of the first embodiment will be described with reference to FIG. FIG. 28 is a diagram showing a relationship between objects used in the information processing apparatus of the first embodiment.

【0114】図28において、アプリケーションプログ
ラムA561が、生成・あるいは取得したアプリケーシ
ョンオブジェクト562を永続的なデータとするために
データベース565が利用される。
In FIG. 28, the database 565 is used in order for the application program A 561 to make the generated or acquired application object 562 permanent data.

【0115】その際、アプリケーションプログラムA5
61は、直接データベース565をアクセスせずに、図
22の機能構成で説明したように、データベース565
への接続条件を指定した上で生成されたDBトランザク
ション563を介してアクセスする。
At this time, the application program A5
61 does not directly access the database 565, but the database 565 does not access the database 565 as described in the functional configuration of FIG.
Access is made via the DB transaction 563 generated after specifying the connection condition to.

【0116】具体的には、アプリケーションプログラム
A561により生成されたアプリケーションオブジェク
ト562は、DBトランザクション563が提供するサ
ービスにより、内部的にDBオブジェクト566に変換
された後、データベース565に格納される。同時に、
アプリケーションオブジェクト562とDBオブジェク
ト566間の関連を記憶する、オブジェクト対応テーブ
ル564(図23の514に対応する)が更新される。
Specifically, the application object 562 generated by the application program A 561 is internally converted into the DB object 566 by the service provided by the DB transaction 563 and then stored in the database 565. at the same time,
The object correspondence table 564 (corresponding to 514 in FIG. 23) that stores the relationship between the application object 562 and the DB object 566 is updated.

【0117】逆に、DBトランザクション563が提供
するサービスにより、データベース565に格納された
DBオブジェクト566を、内部的にアプリケーション
オブジェクト562に変換した上で扱うことが可能とな
る。この場合も、同時に、アプリケーションオブジェク
ト562とDBオブジェクト566間の関連を記憶す
る、オブジェクト対応テーブル564が更新される。
On the contrary, the service provided by the DB transaction 563 enables the DB object 566 stored in the database 565 to be internally converted into the application object 562 before being handled. Also in this case, at the same time, the object correspondence table 564 that stores the relationship between the application object 562 and the DB object 566 is updated.

【0118】上記処理により、アプリケーションプログ
ラムA561は、データベース565内のオブジェクト
の構造を意識せずに、データベース565に格納された
データを、アプリケーションオブジェクト562として
取得・追加・更新・削除することが可能となる。
Through the above processing, the application program A561 can acquire / add / update / delete the data stored in the database 565 as the application object 562 without being aware of the structure of the objects in the database 565. Become.

【0119】次に、実施形態1の情報処理装置で用いら
れるアプリケーションオブジェクトのプログラミングコ
ードの例について、図29を用いて説明する。
Next, an example of the programming code of the application object used in the information processing apparatus of the first embodiment will be described with reference to FIG.

【0120】図29は実施形態1のアプリケーションオ
ブジェクトのプログラミングコードの例を示す図であ
る。図29において、571はプログラミングコードか
ら生成されるクラス群のまとまりを示すパッケージ名で
ある。572は前記パッケージ内におけるクラス名であ
る。実際に、プログラミングコードから生成されたクラ
スのクラス名は、前記パッケージ名と組み合わせた“co
m.xxxx.ks.KSPerson”となる。573から578は前記
クラスが持つフィールドの定義及び初期値を示してい
る。例えば、同図の定義ではクラス外から参照可能な$M
ALE,$FEMALE,name,age,sex,contactsの6フィール
ドが存在する。これらの内、$MALE,$FEMALEは、書き換
え不可能であると定義されている。
FIG. 29 is a diagram showing an example of the programming code of the application object of the first embodiment. In FIG. 29, 571 is a package name indicating a group of classes generated from the programming code. 572 is a class name in the package. In fact, the class name of the class generated from the programming code is "co
m.xxxx.ks.KSPerson ”. 573 to 578 represent the definition and the initial value of the field of the class.
There are 6 fields of ALE, $ FEMALE, name, age, sex and contacts. Of these, $ MALE and $ FEMALE are defined as non-rewritable.

【0121】尚、実施形態1の情報処理装置のアプリケ
ーションオブジェクトは、前述のとおり、前記プログラ
ミングコードから生成されたクラスをインスタンス化し
たものであり、逆にアプリケーションオブジェクトのサ
ービスを利用することで、前記定義情報を取得すること
ができる。
As described above, the application object of the information processing apparatus of the first embodiment is an instantiation of the class generated from the programming code, and conversely, by using the service of the application object, Definition information can be acquired.

【0122】次に、実施形態1の情報処理装置で用いら
れるデータベースオブジェクトの一覧について、図30
を用いて説明する。図30は実施形態1のデータベース
オブジェクトの一覧を示す図である。
Next, regarding the list of database objects used in the information processing apparatus of the first embodiment, FIG.
Will be explained. FIG. 30 is a diagram showing a list of database objects according to the first embodiment.

【0123】図30において、581はデータベース内
でのクラス名である。582は各データベースオブジェ
クト固有の識別IDである。583は前記アプリケーシ
ョンオブジェクトの各フィールドに対応するフィールド
名である。同図では、name,age,sex,contactsの4つ
のフィールドを持っている。
In FIG. 30, 581 is a class name in the database. Reference numeral 582 is an identification ID unique to each database object. Reference numeral 583 is a field name corresponding to each field of the application object. In the figure, it has four fields of name, age, sex, and contacts.

【0124】584から587は実際の各データオブジ
ェクトの値を示している。ここで、前記データベース内
のクラス名は、図30のように必ずしもアプリケーショ
ンオブジェクトのクラス名とは一致していない。
Reference numerals 584 to 587 represent actual values of each data object. Here, the class name in the database does not always match the class name of the application object as shown in FIG.

【0125】また、図30のように、アプリケーション
オブジェクトが持つ全てのフィールドの値が、データベ
ースオブジェクトに格納されるとは限らない。例えば、
アプリケーションオブジェクトのフィールドのうち、書
き込み不可能なフィールドの値(本例では、$MALE、$FE
MALE)をデータベースオブジェクトに格納していたとし
ても、アプリケーションオブジェクトに書き込むことが
できないため、あるいはアプリケーションオブジェクト
のデフォルトインスタンスの作成時に自動的に初期化さ
れるため、データベースオブジェクト内に持つ必要はな
いと判断できる。
Further, as shown in FIG. 30, the values of all the fields of the application object are not always stored in the database object. For example,
Of the fields of the application object, the value of the unwritable field ($ MALE, $ FE in this example)
Even if the MALE) is stored in the database object, it is not necessary to have it in the database object because it cannot be written to the application object or is automatically initialized when the default instance of the application object is created. it can.

【0126】次に、ステップS1802の全オブジェク
ト取得処理の詳細について、図31を用いて説明する。
図31は実施形態1のステップS1802の全オブジェ
クト取得処理の詳細を示すフローチャートである。
Details of the all object acquisition process in step S1802 will be described below with reference to FIG.
FIG. 31 is a flowchart showing details of the all object acquisition process in step S1802 of the first embodiment.

【0127】全オブジェクト取得処理が起動されると、
ステップS5901で、前述のDBトランザクションの
内部データの実行ステータスを参照し、実行ステータス
が「実行中」であるか否かを判定する。実行ステータス
が「実行中」でない場合(ステップS5901でN
O)、「失敗」として処理を終了する。一方、実行ステ
ータスが「実行中」である場合(ステップS5901で
YES)、ステップS5902に進む。
When the all object acquisition process is activated,
In step S5901, the execution status of the internal data of the DB transaction is referred to, and it is determined whether the execution status is "execution in progress". When the execution status is not "execution in progress" (N in step S5901)
O), the processing ends as “failure”. On the other hand, if the execution status is "execution in progress" (YES in step S5901), the flow advances to step S5902.

【0128】ステップS5902で、全DBオブジェク
ト取得処理を実行し、指定したクラスに対応したデータ
ベース内の全オブジェクトを取得する。全DBオブジェ
クト取得処理については、図35により後述する。DB
オブジェクト取得処理の結果、続く、ステップS590
3で、全オブジェクトの取得が成功したか否かを判定す
る。全オブジェクトの取得が成功しなかった場合(ステ
ップS5903でNO)、「失敗」として処理を終了す
る。一方、全オブジェクトの取得が成功した場合(ステ
ップS5903でYES)、ステップS5904に進
む。
In step S5902, all DB object acquisition processing is executed to acquire all objects in the database corresponding to the specified class. The all DB object acquisition process will be described later with reference to FIG. DB
As a result of the object acquisition processing, the subsequent step S590
At 3, it is determined whether acquisition of all objects has succeeded. If acquisition of all objects has not succeeded (NO in step S5903), the processing ends as “failure”. On the other hand, if acquisition of all objects has succeeded (YES in step S5903), the flow advances to step S5904.

【0129】ステップS5904で、処理対象を取得さ
れたデータベースのオブジェクトの先頭にセットした
後、次ステップ以降で、全ての処理対象のオブジェクト
に対して以下の処理を繰り返す。
In step S5904, the process target is set to the head of the acquired objects in the database, and the following processes are repeated for all the process target objects in the subsequent steps.

【0130】まず、ステップS5905で、全処理対象
のオブジェクトに対する処理が終了したか否かを判定す
る。全処理対象のオブジェクトに対する処理が終了して
いる場合(ステップS5905でYES)、「成功」と
して処理を終了する。一方、全処理対象のオブジェクト
に対する処理が終了でない場合(ステップS5905で
NO)、ステップS5906に進む。
First, in step S5905, it is determined whether the processing has been completed for all objects to be processed. If the processes for all objects to be processed have been completed (YES in step S5905), the process ends as “success”. On the other hand, if the processes for all the objects to be processed are not completed (NO in step S5905), the process advances to step S5906.

【0131】ステップS5906で、オブジェクト生成
処理を実行し、指定されたクラスのデフォルトインスタ
ンスを生成する。このオブジェクト生成処理について
は、図39を参照して後述する。次に、ステップS59
07で、オブジェクト値セット処理を実行し、処理対象
のデータベースオブジェクトの値を参照して、上記生成
されたアプリケーションオブジェクトの各フィールドに
値をセットする。オブジェクト値セット処理について
は、図40により後述する。更に、続く、ステップS5
908で、前述のオブジェクト対応テーブルに前記生成
されたアプリケーションオブジェクトと、前記取得され
たデータベースオブジェクトの組み合わせを追加する。
その後、ステップS5909で処理対象を次のオブジェ
クトに進め、再びステップS5905に戻り、処理を繰
り返す。
In step S5906, object generation processing is executed to generate a default instance of the designated class. This object generation processing will be described later with reference to FIG. Next, step S59.
At 07, an object value setting process is executed, the value of the database object to be processed is referenced, and a value is set in each field of the generated application object. The object value setting process will be described later with reference to FIG. Further, the following step S5
At 908, the combination of the generated application object and the acquired database object is added to the aforementioned object correspondence table.
After that, the process target is advanced to the next object in step S5909, the process returns to step S5905, and the process is repeated.

【0132】次に、ステップS1902のオブジェクト
追加処理の詳細について、図32を用いて説明する。図
32は実施形態1のステップS1902のオブジェクト
追加処理の詳細を示すフローチャートである。
Details of the object addition processing in step S1902 will be described below with reference to FIG. FIG. 32 is a flowchart showing details of the object addition processing in step S1902 of the first embodiment.

【0133】オブジェクト追加処理が起動されると、ス
テップS6001で、前述のDBトランザクションの内
部データの実行ステータスを参照し、実行ステータスが
「実行中」であるか否かを判定する。実行ステータスが
「実行中」でない場合(ステップS6001でNO)、
「失敗」として処理を終了する。一方、実行ステータス
が「実行中」である場合(ステップS6001でYE
S)、ステップS6002に進む。
When the object addition process is activated, in step S6001, the execution status of the internal data of the DB transaction is referred to, and it is determined whether the execution status is "execution in progress". When the execution status is not “execution in progress” (NO in step S6001),
The process ends as “failure”. On the other hand, when the execution status is “execution in progress” (YES in step S6001)
S), and proceeds to step S6002.

【0134】次に、ステップS6002で、DBオブジ
ェクト生成追加処理を実行し、与えられたアプリケーシ
ョンオブジェクトのクラスに対応したデータベース内の
クラスのデータベースオブジェクトを生成追加する。D
Bオブジェクト生成追加処理については、図36により
後述する。続く、ステップS6003で、DBオブジェ
クト値セット処理を実行し、与えられたアプリケーショ
ンオブジェクトの値を参照して、上記生成追加されたデ
ータベースオブジェクトの各フィールドに値をセットす
る。DBオブジェクト値セット処理については、図38
により後述する。その後、ステップS6004で、前述
の未確定処理リスト513に、前記処理に対応した情報
を追加する。続く、ステップS6005で、前述のオブ
ジェクト対応テーブルに、前記与えられたアプリケーシ
ョンオブジェクトと、前記生成追加されたデータベース
オブジェクトの組み合わせを追加し、「成功」として処
理を終了する。
Next, in step S6002, a DB object generation / addition process is executed to generate and add a database object of a class in the database corresponding to the given application object class. D
The B object generation / addition process will be described later with reference to FIG. In a succeeding step S6003, a DB object value setting process is executed, the value of the given application object is referred to, and a value is set in each field of the generated and added database object. For the DB object value setting process, see FIG.
Will be described later. After that, in step S6004, the information corresponding to the processing is added to the undetermined processing list 513. Subsequently, in step S6005, the combination of the given application object and the generated and added database object is added to the above-mentioned object correspondence table, and the processing ends as “success”.

【0135】次に、ステップS2002のオブジェクト
更新処理の詳細について、図33を用いて説明する。図
33は実施形態1のステップS2002のオブジェクト
更新処理の詳細を示すフローチャートである。
Details of the object updating process in step S2002 will be described below with reference to FIG. FIG. 33 is a flowchart showing details of the object update processing in step S2002 of the first embodiment.

【0136】オブジェクト更新処理が起動されると、ス
テップS6101で、前述のDBトランザクションの内
部データの実行ステータスを参照し、実行ステータスが
「実行中」であるか否かを判定する。実行ステータスが
「実行中」でない場合(ステップS6101でNO)、
「失敗」として処理する。一方、実行ステータスが「実
行中」である場合(ステップS6101でYES)、ス
テップS6102に進む。
When the object update process is activated, in step S6101, the execution status of the internal data of the DB transaction is referred to, and it is determined whether the execution status is "execution in progress". When the execution status is not “execution in progress” (NO in step S6101),
Process as "failure". On the other hand, if the execution status is "execution in progress" (YES in step S6101), the flow advances to step S6102.

【0137】ステップS6102で、前述のオブジェク
ト対応テーブルを参照し、与えられたアプリケーション
オブジェクトに対応するデータベースオブジェクトを検
索する。検索の結果、続く、ステップS6103で、検
索が成功したか否かを判定する。検索が成功しなかった
場合(ステップS6103でNO)、「失敗」として処
理を終了する。一方、検索が成功した場合(ステップS
6103でYES)、ステップS6104に進む。
In step S6102, the aforementioned object correspondence table is referred to and the database object corresponding to the given application object is searched. As a result of the search, in step S6103, it is determined whether the search is successful. If the search has not succeeded (NO in step S6103), the processing ends as “failure”. On the other hand, if the search is successful (step S
If YES in 6103), the process advances to step S6104.

【0138】ステップS6104では、DBオブジェク
ト値セット処理を実行し、与えられたアプリケーション
オブジェクトの値を参照して、上記検索されたデータベ
ースオブジェクトの各フィールドに値をセットする。そ
の後、ステップS6105で、前述の未確定処理リスト
513に上記処理に対応した情報を追加し、「成功」と
して処理を終了する。
In step S6104, a DB object value setting process is executed, the value of the given application object is referred to, and a value is set in each field of the retrieved database object. Then, in step S6105, information corresponding to the above processing is added to the undetermined processing list 513, and the processing ends as “success”.

【0139】次に、ステップS2102のオブジェクト
削除処理の詳細について、図34を用いて説明する。図
34は実施形態1のステップS2102のオブジェクト
削除処理の詳細を示すフローチャートである。
Details of the object deleting process in step S2102 will be described below with reference to FIG. FIG. 34 is a flowchart showing details of the object deleting process in step S2102 of the first embodiment.

【0140】オブジェクト削除処理が起動されると、ス
テップS6201で、前述のDBトランザクションの内
部データの実行ステータスを参照し、実行ステータスが
「実行中」であるか否かを判定する。実行ステータスが
「実行中」でない場合(ステップS6201でNO)、
「失敗」として処理を終了する。一方、実行ステータス
が「実行中」である場合(ステップS6201でYE
S)、ステップS6202に進む。
When the object deleting process is activated, in step S6201, the execution status of the internal data of the DB transaction is referred to, and it is determined whether or not the execution status is "execution in progress". When the execution status is not “execution in progress” (NO in step S6201),
The process ends as “failure”. On the other hand, when the execution status is "execution in progress" (YES in step S6201).
S), and proceeds to step S6202.

【0141】次に、ステップS6202で、前述のオブ
ジェクト対応テーブル514を参照し、与えられたアプ
リケーションオブジェクトに対応するデータベースオブ
ジェクトを検索する。検索の結果、続く、ステップS6
203で、検索が成功したか否かを判定する。検索が成
功しなかった場合(ステップS6203でNO)、「失
敗」として処理を終了する。一方、検索が成功した場合
(ステップS6203でYES)、ステップS6204
に進む。
Next, in step S6202, the aforementioned object correspondence table 514 is referred to search the database object corresponding to the given application object. As a result of the search, continue, step S6
At 203, it is determined whether the search is successful. If the search has not succeeded (NO in step S6203), the processing ends as “failure”. On the other hand, if the search is successful (YES in step S6203), step S6204.
Proceed to.

【0142】ステップS6204では、DBオブジェク
ト削除処理を実行し、上記検索されたデータベースオブ
ジェクトを削除する。DBオブジェクト削除処理につい
ては、図37により後述する。その後、ステップS62
05で、前述の未確定処理リスト513に、上記処理に
対応した情報を追加する。続く、ステップS6206
で、前述のオブジェクト対応テーブル514より、上記
与えられたアプリケーションオブジェクトと、上記削除
されたデータベースオブジェクトの組み合わせを削除
し、「成功」として処理を終了する。
In step S6204, DB object deletion processing is executed to delete the searched database object. The DB object deletion process will be described later with reference to FIG. Then, step S62
At 05, information corresponding to the above processing is added to the undetermined processing list 513. Continued at step S6206
Then, the combination of the given application object and the deleted database object is deleted from the above-mentioned object correspondence table 514, and the processing ends as “success”.

【0143】次に、ステップS5902の全DBオブジ
ェクト取得処理の詳細について、図35を用いて説明す
る。図35は実施形態1のステップS5902の全DB
オブジェクト取得処理の詳細を示すフローチャートであ
る。
Details of the all DB object acquisition processing in step S5902 will be described below with reference to FIG. FIG. 35 shows all DBs in step S5902 of the first embodiment.
It is a flow chart which shows details of object acquisition processing.

【0144】全DBオブジェクト取得処理が起動される
と、ステップS7001で、DBクラス名決定処理を実
行し、与えられたアプリケーションクラスのアプリケー
ションクラス名に対応するデータベース内のデータベー
スクラス名を決定する。
When the all DB object acquisition process is activated, a DB class name determination process is executed in step S7001 to determine the database class name in the database corresponding to the application class name of the given application class.

【0145】実施形態1で用いられるデータベースのよ
うに、クラス名に“.”を使用できない場合、“___”の
ようなデータベース内で利用可能な文字列に置換した結
果を、データベースクラス名として利用する。例えば、
アプリケーションクラス名“com.xxxx.ks.KSPerson”か
ら、データベースクラス名“com___xxxx___ks___KSPers
on”が決定される。
When "." Cannot be used in the class name like the database used in the first embodiment, the result obtained by substituting a character string that can be used in the database such as "___" is used as the database class name. To do. For example,
From the application class name “com.xxxx.ks.KSPerson” to the database class name “com___xxxx___ks___KSPers
on ”is determined.

【0146】DBクラス名決定処理の結果、続く、ステ
ップS7002で、データベースクラス名の決定が成功
したか否かを判定する。データベースクラス名の決定が
成功しなかった場合(ステップS7002でNO)、
「失敗」として処理を終了する。一方、データベースク
ラス名の決定が成功した場合(ステップS7002でY
ES)、ステップS7003に進む。
As a result of the DB class name determination processing, it is determined in subsequent step S7002 whether or not the database class name has been successfully determined. If the determination of the database class name has not succeeded (NO in step S7002),
The process ends as “failure”. On the other hand, when the determination of the database class name is successful (Y in step S7002)
ES), and proceeds to step S7003.

【0147】ステップS7003で、出力用の全データ
ベースオブジェクトリストを初期化する。続く、ステッ
プS7004で、処理対象をデータベース内の前記デー
タベースクラスに対応するデータベースオブジェクト群
の先頭にセットした後、次ステップ以降で全ての処理対
象のデータベースオブジェクトに対する処理を繰り返
す。
In step S7003, a list of all database objects for output is initialized. Subsequently, in step S7004, the processing target is set at the head of the database object group corresponding to the database class in the database, and then the processing for all the database objects to be processed is repeated in the subsequent steps.

【0148】まず、ステップS7005で、全処理対象
のデータベースオブジェクトに対する処理が終了してい
るか否かを判定する。全処理対象のデータベースオブジ
ェクトに対する処理が終了している場合(ステップS7
005でYES)、「成功」として処理を終了する。一
方、全処理対象のデータベースオブジェクトに対する処
理が終了でない場合(ステップS7005でNO)、ス
テップS7006に進む。
First, in step S7005, it is determined whether the processing has been completed for all database objects to be processed. When all the database objects to be processed have been processed (step S7)
(YES in 005), the processing ends as “success”. On the other hand, if the processes for all the database objects to be processed are not completed (NO in step S7005), the process advances to step S7006.

【0149】ステップS7006では、全データベース
オブジェクトリストに処理対象のデータベースオブジェ
クトを追加する。その後、ステップS7007で、処理
対象を次のデータベースオブジェクトに進め、再び、ス
テップS7005に戻り、処理を繰り返す。
In step S7006, the database object to be processed is added to the all database object list. Then, in step S7007, the process target is advanced to the next database object, the process returns to step S7005 again, and the process is repeated.

【0150】次に、ステップS6002のDBオブジェ
クト生成追加処理の詳細について、図36を用いて説明
する。図36は実施形態1のステップS6002のDB
オブジェクト生成追加処理の詳細を示すフローチャート
である。
Details of the DB object generation / addition processing in step S6002 will be described below with reference to FIG. FIG. 36 shows the DB of step S6002 of the first embodiment.
It is a flow chart which shows the details of object generation addition processing.

【0151】DBオブジェクト生成追加処理が起動され
ると、ステップS7101で、アプリケーションクラス
名取得処理を実行し、与えられたアプリケーションオブ
ジェクトのアプリケーションクラス名を取得する。次
に、ステップS7102で、DBクラス名決定処理を実
行し、前記アプリケーションクラス名に対応するデータ
ベース内のデータベースクラス名を決定する。DBクラ
ス名決定処理の結果、続く、ステップS7103で、デ
ータベースクラス名の決定が成功したか否かを判定す
る。データベースクラス名の決定が成功しなかった場合
(ステップS7103でNO)、「失敗」として処理を
終了する。
When the DB object generation / addition process is activated, an application class name acquisition process is executed in step S7101, and the application class name of the given application object is acquired. Next, in step S7102, a DB class name determination process is executed to determine the database class name in the database corresponding to the application class name. As a result of the DB class name determination processing, in the following step S7103, it is determined whether the database class name has been successfully determined. If the determination of the database class name has not succeeded (NO in step S7103), the processing ends as “failure”.

【0152】一方、データベースクラス名の決定が成功
した場合(ステップS7102でYES)、ステップS
7104に進む。ステップS7104では、前記データ
ベースクラスに対応するデフォルトデータベースオブジ
ェクトを生成追加し、「成功」として処理を終了する。
On the other hand, if the determination of the database class name is successful (YES in step S7102), step S
Proceed to 7104. In step S7104, a default database object corresponding to the database class is generated and added, and the processing ends as “success”.

【0153】次に、ステップS6204のDBオブジェ
クト削除処理の詳細について、図37を用いて説明す
る。図37は実施形態1のステップS6204のDBオ
ブジェクト削除処理の詳細を示すフローチャートであ
る。
Details of the DB object deletion processing in step S6204 will be described below with reference to FIG. FIG. 37 is a flowchart showing details of the DB object deletion processing in step S6204 of the first embodiment.

【0154】DBオブジェクト削除処理が起動される
と、ステップS7201で、DBクラス取得処理を実行
し、与えられたデータベースオブジェクトに対応するデ
ータベースクラスを取得する。DBクラス取得処理の結
果、次に、ステップS7202で、データベースクラス
の取得が成功したか否かを判定する。データベースクラ
スの取得が成功しなかった場合(ステップS7202で
NO)、「失敗」として処理を終了する。
When the DB object deletion process is activated, a DB class acquisition process is executed in step S7201 to acquire the database class corresponding to the given database object. As a result of the DB class acquisition processing, next, in step S7202, it is determined whether the acquisition of the database class has succeeded. If acquisition of the database class has not succeeded (NO in step S7202), the processing ends as “failure”.

【0155】一方、データベースクラスの取得が成功し
た場合(ステップS7202でYES)、ステップS7
203に進む。ステップS7203で、前記データベー
スクラスのサービスを用いて、与えられたデータベース
オブジェクトを削除し、「成功」として処理を終了す
る。
On the other hand, if acquisition of the database class has succeeded (YES in step S7202), step S7.
Proceed to 203. In step S7203, the given database object is deleted using the service of the database class, and the processing ends as “success”.

【0156】次に、図31のオブジェクト追加処理及び
図32のオブジェクト更新処理それぞれにおけるステッ
プS5907、ステップS6003のDBオブジェクト
値セット処理の詳細について、図38を用いて説明す
る。図38は実施形態1のステップS5907、ステッ
プS6003のDBオブジェクト値セット処理の詳細を
示すフローチャートである。
Details of the DB object value setting process in steps S5907 and S6003 in each of the object adding process of FIG. 31 and the object updating process of FIG. 32 will be described below with reference to FIG. FIG. 38 is a flowchart showing details of the DB object value setting process in steps S5907 and S6003 of the first embodiment.

【0157】DBオブジェクト値セット処理が起動され
ると、ステップS7301で、全書き込み可能フィール
ド名取得処理を実行し、与えられたアプリケーションオ
ブジェクトの各フィールド定義を参照し、書き込み可能
な全てのフィールド名を取得する。全書き込み可能フィ
ールド名取得処理については、図41を参照して後述す
る。全書き込み可能フィールド名取得処理の結果、続
く、ステップS7302で、フィールド名の取得が成功
したか否かを判定する。フィールド名の取得が成功しな
かった場合(ステップS7302でNO)、「失敗」と
して処理を終了する。一方、フィールド名の取得が成功
した場合(ステップS7302でYES)、ステップS
7303に進む。
When the DB object value set process is activated, all writable field name acquisition process is executed in step S7301, and each writable field name is referenced by referring to each field definition of the given application object. get. The all writable field name acquisition process will be described later with reference to FIG. As a result of the all writable field name acquisition process, in the following step S7302, it is determined whether the field name acquisition is successful. If acquisition of the field name has not succeeded (NO in step S7302), the processing ends as “failure”. On the other hand, if acquisition of the field name has succeeded (YES in step S7302), step S
Proceed to 7303.

【0158】次に、ステップS7303で、処理対象を
前述の取得された全書き込み可能フィールド名リストの
先頭にセットした後、次ステップ以降で全ての処理対象
のフィールドに対する処理を繰り返す。
Next, in step S7303, the process target is set to the head of the above-mentioned acquired all writable field name list, and then the processes for all the process target fields are repeated in the subsequent steps.

【0159】続く、ステップS7304で、全処理対象
のフィールドに対する処理が終了しているか否かを判定
する。全処理対象のフィールドに対する処理が終了して
いる場合(ステップS7304でYES)、「成功」と
して処理を終了する。一方、全処理対象のフィールドに
対する処理が終了でない場合(ステップS7304でN
O)、ステップS7305に進む。
In next step S7304, it is determined whether or not the processing for all fields to be processed is completed. If the processing for all fields to be processed is completed (YES in step S7304), the processing ends as “success”. On the other hand, if the processing has not been completed for all fields to be processed (N in step S7304).
O), and proceeds to step S7305.

【0160】次に、ステップS7305で、処理対象の
フィールドが配列であるか否かを判定する。フィールド
が配列でない場合(ステップS7305でNO)、ステ
ップS7306に進む。ステップS7306で、フィー
ルド値取得処理を実行し、与えられたアプリケーション
オブジェクトの処理対象のフィールド名に対応する値を
取得する。続くステップS7307で、DBフィール値
セット処理を実行し、データベースオブジェクトの対応
するフィールドに格納する。そして、ステップS730
8で、処理対象のフィールドを次に進め、再びステップ
S7304に戻り、処理を繰り返す。
Next, in step S7305, it is determined whether the field to be processed is an array. If the field is not an array (NO in step S7305), the flow advances to step S7306. In step S7306, field value acquisition processing is executed to acquire a value corresponding to the field name of the processing target of the given application object. In subsequent step S7307, DB field value setting processing is executed and stored in the corresponding field of the database object. Then, step S730
In step 8, the field to be processed is advanced to the next field, the process returns to step S7304, and the process is repeated.

【0161】一方、ステップS7305で、処理対象の
フィールドが配列である場合(ステップS7305でY
ES)、ステップS7309に進む。ステップS730
9で、配列フィールド値取得処理を実行し、与えられた
アプリケーションオブジェクトの処理対象のフィールド
名に対応する値を取得する。続く、ステップS7310
で、DB配列フィール値セット処理を実行し、データベ
ースオブジェクトの対応するフィールドに格納する。そ
して、ステップS7308で、処理対象のフィールドを
次に進め、再びステップS7304に戻り、処理を繰り
返す。
On the other hand, if the field to be processed is an array in step S7305 (Y in step S7305).
ES), and proceeds to step S7309. Step S730
At 9, the array field value acquisition process is executed to acquire the value corresponding to the field name to be processed by the given application object. Continued in Step S7310
Then, the DB array field value setting process is executed and stored in the corresponding field of the database object. Then, in step S7308, the field to be processed is advanced to the next, the process returns to step S7304, and the process is repeated.

【0162】次に、ステップS5906のオブジェクト
生成処理の詳細について、図39を用いて説明する。図
39は実施形態1のステップS5906のオブジェクト
生成処理の詳細を示すフローチャートである。
Details of the object generation processing in step S5906 will be described below with reference to FIG. FIG. 39 is a flowchart showing details of the object generation processing in step S5906 of the first embodiment.

【0163】オブジェクト生成処理が起動されると、ス
テップS7401で、DBクラス名取得処理を実行し、
与えられたデータベースオブジェクトのデータベースク
ラス名を取得する。次に、ステップS7402で、アプ
リケーションクラス名決定処理を実行し、前記データベ
ースクラス名に対応するアプリケーションクラス名を決
定する。
When the object generation process is activated, a DB class name acquisition process is executed in step S7401.
Gets the database class name of the given database object. Next, in step S7402, application class name determination processing is executed to determine the application class name corresponding to the database class name.

【0164】アプリケーションクラス名決定処理の結
果、続く、ステップS7403で、アプリケーションク
ラス名の決定が成功したか否かを判定する。アプリケー
ションクラス名の決定が成功しなかった場合(ステップ
S7403でNO)、「失敗」として処理を終了する。
一方、アプリケーションクラス名の決定が成功した場合
(ステップS7403でYES)、ステップS7404
に進む。ステップS7404で、前記アプリケーション
クラスに対応するデフォルトアプリケーションオブジェ
クトを生成し、「成功」として処理を終了する。
As a result of the application class name determination processing, in step S7403, it is determined whether the application class name has been successfully determined. If the determination of the application class name has not succeeded (NO in step S7403), the processing ends as “failure”.
On the other hand, if the determination of the application class name has succeeded (YES in step S7403), step S7404.
Proceed to. In step S7404, a default application object corresponding to the application class is generated, and the processing ends as “success”.

【0165】次に、ステップS5907のオブジェクト
値セット処理の詳細について、図40を用いて説明す
る。図40は実施形態1のステップS5907のオブジ
ェクト値セット処理の詳細を示すフローチャートであ
る。
Details of the object value setting process in step S5907 will be described below with reference to FIG. FIG. 40 is a flow chart showing details of the object value setting process of step S5907 of the first embodiment.

【0166】オブジェクト値セット処理が起動される
と、ステップS7501で、全書き込み可能フィールド
名取得処理を実行し、与えられたアプリケーションオブ
ジェクトの各フィールド定義を参照し、書き込み可能な
全てのフィールド名を取得する。全書き込み可能フィー
ルド名取得処理については、図41を参照して後述す
る。全書き込み可能フィールド名取得処理の結果、続
く、ステップS7502で、フィールド名の取得が成功
したか否かを判定する。フィールド名の取得が成功しな
かった場合(ステップS7502でNO)、「失敗」と
して処理を終了する。一方、フィールド名の取得が成功
した場合(ステップS7502でYES)、ステップS
7503に進む。
When the object value setting process is activated, all writable field name acquisition process is executed in step S7501, and each writable field name is acquired by referring to each field definition of the given application object. To do. The all writable field name acquisition process will be described later with reference to FIG. As a result of the all writable field name acquisition process, in the following step S7502, it is determined whether the field name acquisition has succeeded. If acquisition of the field name has not succeeded (NO in step S7502), the processing ends as “failure”. On the other hand, if acquisition of the field name has succeeded (YES in step S7502), step S
Continue to 7503.

【0167】ステップS7503で、処理対象のフィー
ルド名を前述の取得された全書き込み可能フィールド名
リストの先頭にセットした後、次ステップ以降で全ての
処理対象のフィールドに対する処理を繰り返す。
In step S7503, the field name to be processed is set at the head of the list of all the writable field names acquired as described above, and the processes for all fields to be processed are repeated in the subsequent steps.

【0168】まず、ステップS7504で、全処理対象
のフィールドに対する処理が終了しているか否かを判定
する。全処理対象のフィールドに対する処理が終了して
いる場合(ステップS7504でYES)、「成功」と
して処理を終了する。一方、全処理対象のフィールドに
対する処理が終了でない場合(ステップS7504でN
O)、ステップS7505に進む。
First, in step S7504, it is determined whether the processing has been completed for all fields to be processed. If the processing for all fields to be processed is completed (YES in step S7504), the processing ends as “success”. On the other hand, if the processing has not been completed for all fields to be processed (N in step S7504).
O), and proceeds to step S7505.

【0169】次に、ステップS7505で、処理対象の
フィールドが配列であるか否かを判定する。フィールド
が配列でない場合(ステップS7505でNO)、ステ
ップS7506に進む。ステップS7506で、DBフ
ィールド値取得処理を実行し、与えられたデータベース
オブジェクトの処理対象のフィールド名に対応する値を
取得する。続く、ステップS7507で、フィールド値
セット処理を実行し、アプリケーションオブジェクトの
対応するフィールドに格納する。ステップS7508
で、処理対象のフィールドを次に進め、再びステップS
7504に戻り、処理を繰り返す。
Next, in step S7505, it is determined whether the field to be processed is an array. If the field is not an array (NO in step S7505), the flow advances to step S7506. In step S7506, a DB field value acquisition process is executed to acquire a value corresponding to the field name of the processing target of the given database object. In next step S7507, a field value setting process is executed and stored in the corresponding field of the application object. Step S7508
Then, the field to be processed is advanced to the next step, and step S is performed again.
Returning to 7504, the process is repeated.

【0170】一方、ステップS7505で、フィールド
が配列である場合(ステップS7505でYES)、ス
テップS7509に進む。ステップS7509で、DB
配列フィールド値取得処理を実行し、与えられたデータ
ベースオブジェクトの処理対象のフィールド名に対応す
る値を取得する。続く、ステップS7510で、配列フ
ィール値セット処理を実行し、アプリケーションオブジ
ェクトの対応するフィールドに格納する。ステップS7
508で、処理対象のフィールドを次に進め、再びステ
ップS7504に戻り、処理を繰り返す。
If it is determined in step S7505 that the field is an array (YES in step S7505), the flow advances to step S7509. In step S7509, the DB
Executes array field value acquisition processing and acquires the value corresponding to the field name of the processing target of the given database object. In a succeeding step S7510, an array field value setting process is executed and stored in the corresponding field of the application object. Step S7
In 508, the field to be processed is advanced to the next step, the process returns to step S7504 and the process is repeated.

【0171】次に、図38のDBオブジェクト値セット
処理及び図40のオブジェクト値セット処理それぞれに
おけるステップ7301、ステップS7501の全書き
込み可能フィールド名取得処理の詳細について、図41
を用いて説明する。図41は実施形態1のステップS7
301、ステップS7501の全書き込み可能フィール
ド名取得処理の詳細を示すフローチャートである。
Next, the details of the all writable field name acquisition process of steps 7301 and S7501 in the DB object value setting process of FIG. 38 and the object value setting process of FIG. 40 will be described with reference to FIG.
Will be explained. FIG. 41 shows step S7 of the first embodiment.
301 is a flowchart showing details of all writable field name acquisition processing in step S7501.

【0172】全書き込み可能フィールド名取得処理が起
動されると、ステップS7601で、全フィールド情報
取得処理を実行し、与えられたアプリケーションオブジ
ェクトの各フィールド情報を取得する。全フィールド情
報取得処理の結果、続く、ステップS7602で、フィ
ールド情報の取得が成功したか否かを判定する。フィー
ルド情報の取得が成功しなかった場合(ステップS76
02でNO)、「失敗」として処理を終了する。一方、
フィールド情報の取得が成功した場合(ステップS76
02でYES)、ステップS7603に進む。
When the all writable field name acquisition process is activated, the all field information acquisition process is executed in step S7601 to acquire each field information of the given application object. As a result of the all-field information acquisition processing, it is determined in subsequent step S7602 whether or not the field information has been successfully acquired. If acquisition of field information has not succeeded (step S76)
No in 02), the processing ends as “failure”. on the other hand,
When acquisition of the field information is successful (step S76)
If YES in 02), the process advances to step S7603.

【0173】ステップS7603で、出力用の全書き込
み可能フィールド名リストを初期化する。続く、ステッ
プS7604で、処理対象を前述の取得された全フィー
ルド情報の先頭にセットした後、次ステップ以降で全て
の処理対象に対する処理を繰り返す。
[0173] In step S7603, a list of all writable field names for output is initialized. Subsequently, in step S7604, the process target is set to the head of the above-mentioned acquired all field information, and then the process for all process targets is repeated in the subsequent steps.

【0174】まず、ステップS7605で、全処理対象
のフィールド情報に対する処理が終了しているか否かを
判定する。全処理対象のフィールド情報に対する処理が
終了している場合(ステップS7605でYES)、
「成功」として処理を終了する。一方、全処理対象のフ
ィールド情報に対する処理が終了していない場合(ステ
ップS7605でNO)、ステップS7606に進む。
First, in step S7605, it is determined whether the processing for all field information to be processed has been completed. If the processing has been completed for all the field information to be processed (YES in step S7605),
The process ends as “success”. On the other hand, if the processing for all field information to be processed has not been completed (NO in step S7605), the flow advances to step S7606.

【0175】ステップS7606では、フィールド情報
のフィールド属性が外部参照可能(Public)であるか否
かを判定する。フィールド属性が外部参照可能でない場
合(ステップS7606でNO)、ステップS7609
に進む。一方、フィールド属性が外部参照可能である場
合(ステップS7606でYES)、ステプs7607
に進む。
[0175] In step S7606, it is determined whether the field attribute of the field information is externally referable (Public). If the field attribute is not externally referable (NO in step S7606), step S7609.
Proceed to. On the other hand, if the field attribute can be externally referenced (YES in step S7606), step s7607.
Proceed to.

【0176】ステップS7607では、フィールド情報
のフィールド属性が書き込み不可能(Final)であるか
否かを判定する。フィールド属性が書き込み不可能であ
る場合(ステップS7607でYES)、ステップS7
609に進む。一方、フィールド属性が書き込み不可能
でない場合(ステップS7607でNO)、ステップS
7608に進む。
In step S7607, it is determined whether the field attribute of the field information is unwritable (Final). If the field attribute is not writable (YES in step S7607), step S7
Proceed to 609. On the other hand, if the field attribute is not writable (NO in step S7607), step S
Proceed to 7608.

【0177】ステップS7608では、全書き込み可能
フィールド名リストに処理対象のフィールド名を追加す
る。すなわち、フィールド情報のフィールド属性が外部
参照可能(Public)であり、書き込み不可能(Final)
ではない場合に、ステップS7608でそのフィールド
名がリストに追加される。その後、ステップS7609
で、処理対象のフィールド情報が次に進められ、再びス
テップS7605に戻り、処理を繰り返す。
In step S7608, the field name to be processed is added to the all writable field name list. That is, the field attribute of the field information can be externally referenced (Public) and cannot be written (Final)
If not, the field name is added to the list in step S7608. Then, step S7609
Then, the field information to be processed is advanced to the next step, the process returns to step S7605 and the process is repeated.

【0178】以上説明したように、実施形態1によれ
ば、永続的なデータを格納するデータベースに対して、
アプリケーションプログラムにより参照されるアプリケ
ーションオブジェクトの定義情報を取得し、そのアプリ
ケーションオブジェクト及び取得したアプリケーション
オブジェクト定義情報を用いてデータベースを操作す
る。
As described above, according to the first embodiment, with respect to a database that stores permanent data,
The definition information of the application object referred to by the application program is acquired, and the database is operated using the application object and the acquired application object definition information.

【0179】これにより、データベースモジュール特有
のコーディング手順及び複雑なノウハウを習得すること
なく、永続的なデータを扱うためにデータベースを利用
でき、開発者は独自のビジネスロジックの開発に集中す
ることが可能となり、開発効率の飛躍的な向上を実現で
きる。
As a result, the database can be used for handling persistent data without learning the coding procedure and complicated know-how peculiar to the database module, and the developer can concentrate on the development of original business logic. Therefore, the development efficiency can be dramatically improved.

【0180】<実施形態2>次に、実施形態2について
説明する。
<Second Embodiment> Next, a second embodiment will be described.

【0181】図42は実施形態2の情報処理装置の階層
構造化されたデータベース操作手段を示す図である。実
施形態2のデータベース操作手段は、アプリケーション
IF(インターフェース)層8001、データベースI
F(インターフェース)層8002、個別データベース
操作実装8003の3つの層から構成される。
FIG. 42 is a diagram showing a hierarchically structured database operating means of the information processing apparatus of the second embodiment. The database operation means according to the second embodiment includes an application IF (interface) layer 8001 and a database I.
It is composed of three layers of an F (interface) layer 8002 and an individual database operation implementation 8003.

【0182】アプリケーションIF層8001では、ア
プリケーションプログラムとデータベースで使用される
各種データ構造の違いや、メソッドの違いを吸収するた
めの橋渡しを行う。具体的には、アプリケーションオブ
ジェクト及びデータベースオブジェクトを相互に変換
し、アプリケーションプログラムが求める形態にデータ
ベースのメソッドをラッピングする。
The application IF layer 8001 serves as a bridge for absorbing differences in various data structures used in the application program and the database and differences in methods. Specifically, the application object and the database object are converted into each other, and the database method is wrapped in a form required by the application program.

【0183】データベースIF層8002では、各種デ
ータベース操作の上位クラスあるいはインターフェース
を提供し、同時に各種データベース共通のメソッドを提
供する。これにより、全てのデータベースに対する共通
のメソッドが実現可能になるともに、個別のデータベー
スに依存しない共通の処理を個別に実装する必要がなく
なる。
The database IF layer 8002 provides an upper class or interface for various database operations, and at the same time provides methods common to various databases. This makes it possible to implement a common method for all databases and eliminate the need to individually implement common processing that does not depend on individual databases.

【0184】また、個別データベース操作実装8003
では、データベースIF操作が提供する上位クラスある
いはインターフェースを拡張するだけで、各種データベ
ース個別の実装が可能となる。
Also, individual database operation implementation 8003
Then, it is possible to implement various databases individually simply by extending the upper class or interface provided by the database IF operation.

【0185】データベース操作手段を上記のように階層
構造とすることで、アプリケーション開発者にとって
は、個別のメソッドを利用することなく、異なるデータ
ベースを利用できるようになる。また、個別のデータベ
ース提供者にとっては、既存のアプリケーションを修正
することなく、提供されたデータベースを組み込むこと
ができるようになる。更に、異なる要求を持ったアプリ
ケーション開発者にとっては、専用のアプリケーション
IF層を開発することで、より専門性の高い機能を実現
することも可能となる。
By making the database operation means a hierarchical structure as described above, it becomes possible for the application developer to use different databases without using individual methods. Also, the individual database provider can incorporate the provided database without modifying the existing application. Furthermore, for application developers who have different requirements, it is possible to realize more specialized functions by developing a dedicated application IF layer.

【0186】次に、実施形態2の階層DBトランザクシ
ョン構造について、図43を用いて説明する。図43は
実施形態2の階層DBトランザクション構造を示す図で
ある。
Next, the hierarchical DB transaction structure of the second embodiment will be described with reference to FIG. FIG. 43 is a diagram showing a hierarchical DB transaction structure according to the second embodiment.

【0187】実施形態2のDBマネージャー8105
は、アプリケーションプログラムA8101からの要求
に対応した、データベース8104との間の一連のトラ
ンザクション(取引)を扱うDBトランザクション81
02を生成・廃棄する。ここで、DBトランザクション
8102は、アプリケーションプログラムA8101と
やり取りを行うアプリケーションインタフェース層と、
個々のデータベースの実装DBトランザクション810
3に依存したデータベースインタフェース層で構成され
る。
DB manager 8105 of the second embodiment
Is a DB transaction 81 that handles a series of transactions with the database 8104 in response to a request from the application program A 8101.
02 is generated and discarded. Here, the DB transaction 8102 is an application interface layer that exchanges with the application program A 8101,
Implementation DB transaction 810 of each database
It consists of a database interface layer that depends on 3.

【0188】次に、階層DBトランザクションの内部デ
ータについて、図44を用いて説明する。図44は実施
形態2の階層DBトランザクションの内部データを示す
図である。
Next, the internal data of the hierarchical DB transaction will be described with reference to FIG. FIG. 44 is a diagram showing internal data of a hierarchical DB transaction according to the second embodiment.

【0189】階層DBトランザクションは8201に示
すように、実際に組み込まれている実装DBトランザク
ションの情報8202と、トランザクション生成後に処
理対象となったアプリケーションオブジェクトとDBオ
ブジェクトの関連を記憶するオブジェクト対応テーブル
8205の内部データを持つ。
As indicated by reference numeral 8201, the hierarchical DB transaction includes information 8202 on the actually installed DB transaction and an object correspondence table 8205 for storing the relationship between the application object and the DB object which are the processing target after the transaction is generated. Holds internal data.

【0190】また、実装DBトランザクションの情報8
202は、トランザクションが実行中かどうかを示す実
行ステータスと、トランザクションの対象となっている
データベースの情報8203と、トランザクション実行
中に行われた未確定の処理リスト8204を持つ。
Also, information 8 of the mounting DB transaction
202 has an execution status indicating whether or not a transaction is being executed, information 8203 of the database that is the target of the transaction, and an unconfirmed processing list 8204 executed during the execution of the transaction.

【0191】次に、上述の図5のトランザクション生成
画面において、データベースの種類を選択している状態
のトランザクション生成画面について、図45を用いて
説明する。図45は実施形態2のデータベースの種類を
選択する場合のトランザクション生成画面の一例を示す
図である。53をクリックすることにより、データベー
スの種類を指定するコンボボックス8304が表示さ
れ、任意のデータベースの種類を選択することができ
る。
Next, the transaction generation screen in the state where the database type is selected in the transaction generation screen shown in FIG. 5 will be described with reference to FIG. FIG. 45 is a diagram showing an example of a transaction generation screen when the type of database of the second embodiment is selected. By clicking 53, a combo box 8304 for designating a database type is displayed, and an arbitrary database type can be selected.

【0192】次に、上述の図5のトランザクション生成
画面において、サーバ名を入力する場合のトランザクシ
ョン生成画面について、図46を用いて説明する。図4
6は実施形態2のサーバ名を入力する場合のトランザク
ション生成画面の一例を示す図である。54はデータベ
ースへの接続サービスを提供するサーバ名の入力エリア
であり、任意のサーバ名を指定するか、何も指定しない
こともできる。
Next, with reference to FIG. 46, a transaction generation screen for inputting a server name in the transaction generation screen shown in FIG. 5 will be described. Figure 4
6 is a diagram showing an example of a transaction generation screen when the server name of the second embodiment is input. Reference numeral 54 is an input area for a server name that provides a connection service to the database, and an arbitrary server name can be designated or nothing can be designated.

【0193】次に、実施形態2におけるステップS60
3のDBトランザクション生成処理の詳細について、図
47を用いて説明する。図47は実施形態2のDBトラ
ンザクション生成処理の詳細を示すフローチャートであ
る。
Next, step S60 in the second embodiment.
Details of the DB transaction generation process of No. 3 will be described with reference to FIG. 47. FIG. 47 is a flow chart showing details of the DB transaction generation processing of the second embodiment.

【0194】DBトランザクション生成処理が起動され
ると、ステップS8501の初期化処理を実行し、図4
4で説明した階層DBトランザクションの内部データを
初期化する。続く、ステップS8502で、図46で説
明したトランザクション生成画面で指定されたサーバ名
が有効であるか否かを判定する。サーバ名が有効である
場合(ステップS8502でYES)、ステップS85
03に進み、リモートデータベースマネージャー生成処
理を実行し、サーバ名で指定されたサーバに接続するた
めのデータベースマネージャーを生成する。一方、サー
バ名が有効でない場合(ステップS8502でNO)、
ステップS8504に進み、対応データベースマネージ
ャー生成処理を実行し、図45で説明したトランザクシ
ョン生成画面で指定されたデータベースのデータベース
マネージャーを生成する。
When the DB transaction generation process is started, the initialization process of step S8501 is executed, and the process shown in FIG.
The internal data of the hierarchical DB transaction described in 4 is initialized. In next step S8502, it is determined whether the server name specified on the transaction generation screen described in FIG. 46 is valid. If the server name is valid (YES in step S8502), step S85.
In step 03, the remote database manager generation process is executed to generate a database manager for connecting to the server specified by the server name. On the other hand, if the server name is not valid (NO in step S8502),
In step S8504, the corresponding database manager generation process is executed to generate the database manager of the database designated on the transaction generation screen described with reference to FIG.

【0195】続く、ステップS8505で、生成された
データベースマネージャーが提供する実装DBトランザ
クション初期化処理を実行し、図44で説明した実装D
Bトランザクションの内部データを初期化する。
In next step S8505, the implemented DB transaction initialization processing provided by the generated database manager is executed, and implementation D described in FIG.
Initializes the internal data of the B transaction.

【0196】続く、ステップS8506で、上記で生成
されたデータベースマネージャーが提供するDB接続処
理を実行し、指定された条件でデータベースに接続す
る。DB接続処理の結果、次に、ステップS8507
で、データベースの接続が成功したか否かを判定する。
データベースの接続が成功しなかった場合(ステップS
8507でNO)、「失敗」として処理を終了する。一
方、データベースの接続が成功した場合(ステップS8
507でYES)、ステップS8508に進む。ステッ
プS8508では、接続に関連した情報を実装DBトラ
ンザクションの内部データに格納し、「成功」として処
理を終了する。
In step S8506, the DB connection process provided by the database manager generated above is executed to connect to the database under the specified conditions. As a result of the DB connection processing, next, step S8507
Then, it is determined whether or not the database connection is successful.
If the database connection is not successful (step S
If NO in 8507), the processing ends as “failure”. On the other hand, if the database connection is successful (step S8)
If YES, the process proceeds to step S8508. In step S8508, information related to the connection is stored in the internal data of the mounting DB transaction, and the processing ends as “success”.

【0197】次に、階層DBトランザクション構造で説
明したいくつかの目的のまとまりであるパッケージ間の
関係について、図48を用いて説明する。図48は実施
形態2の階層DBトランザクション構造のいくつかの目
的のまとまりであるパッケージ間の関係の一例を示す図
である。
Next, the relationship between packages, which is a group of some purposes described in the hierarchical DB transaction structure, will be described with reference to FIG. FIG. 48 is a diagram showing an example of a relationship between packages, which is a set of some purposes of the hierarchical DB transaction structure of the second embodiment.

【0198】図48において、8601及び8612
は、実施形態2が動作するシステム、デバイス、プロセ
ス等のまとまりであり、相互にRMIなどのプロトコル
を用いてオブジェクトをやり取りすることができる。こ
こで、アプリケーションプログラム8602は、同一デ
バイス8601上に存在するアプリケーションIF層8
603を実装したパッケージcom.xxxx.cdbm8605に
よって、データベース8611にアクセスすることがで
きる。
In FIG. 48, 8601 and 8612 are shown.
Is a group of systems, devices, processes, etc. on which the second embodiment operates, and objects can be exchanged with each other using a protocol such as RMI. Here, the application program 8602 is the application IF layer 8 existing on the same device 8601.
The database 8611 can be accessed by the package com.xxxx.cdbm8605 in which 603 is mounted.

【0199】また、アプリケーションIF層8603
は、データベースIF層8604のパッケージcom.xxx
x.cdbm.mng8606及びcom.xxxx.cdbm.mng.admin86
07を用いて実装される。
Also, the application IF layer 8603
Is the package com.xxx of the database IF layer 8604
x.cdbm.mng8606 and com.xxxx.cdbm.mng.admin86
It is implemented using 07.

【0200】但し、個別のデータベース固有の実装は、
上記データベースIF層8604のインターフェースま
たはクラスを拡張したパッケージcom.xxxx.cdbm.core8
608やcom.xxxx.cdbm.rmi8609で行われている。
また、パッケージcom.xxxx.cdbm.file8610は、上記
パッケージ8608で利用される、データベース861
1の物理構造を隠蔽したものである。
However, the individual database-specific implementation is as follows:
Package com.xxxx.cdbm.core8 that extends the interface or class of the database IF layer 8604.
608 and com.xxxx.cdbm.rmi8609.
Also, the package com.xxxx.cdbm.file8610 is a database 861 used in the package 8608.
The physical structure of No. 1 is hidden.

【0201】更に、異なるデバイスに存在するデータベ
ースにアクセスするには、上記パッケージ8609に実
装されたRMI等のプロトコルを介して、別デバイスの
パッケージcom.xxxx.cdbm.svr8613を用いて実現さ
れる。尚、上記パッケージ8613以下の実装は自由で
はあるが、同図では前述の構成と同様にデータベースI
F層8614のパッケージcom.xxxx.cdbm.mng8615
及びcom.xxxx.cdbm.mng.admin8616を用いて実装さ
れている。
Further, to access the database existing in a different device, it is realized by using the package com.xxxx.cdbm.svr8613 of another device via the protocol such as RMI mounted in the package 8609. It should be noted that although the package 8613 and the following packages can be mounted freely, the database I is similar to the above-described configuration in FIG.
Package of F layer 8614 com.xxxx.cdbm.mng8615
And com.xxxx.cdbm.mng.admin8616.

【0202】次に、階層DBトランザクション構造で説
明したクラス間の関係について、図49を用いて説明す
る。図49は実施形態2の階層DBトランザクション構
造のクラス間の関係の一例を示す図である。
Next, the relationship between the classes described in the hierarchical DB transaction structure will be described with reference to FIG. FIG. 49 is a diagram showing an example of a relationship between classes of the hierarchical DB transaction structure according to the second embodiment.

【0203】図49において、8701及び8708
は、実施形態2が動作するシステム、デバイス、プロセ
ス等のまとまりであり、相互にRMIなどのプロトコル
を用いてオブジェクトをやり取りすることができる。
In FIG. 49, 8701 and 8708
Is a group of systems, devices, processes, etc. on which the second embodiment operates, and objects can be exchanged with each other using a protocol such as RMI.

【0204】ここで、アプリケーションは、同一デバイ
ス8701上に存在するDBマネジャークラスCDBM
8702を用いて、DBトランザクションクラスCDBMTr
ansaction8703を生成し、データベースにアクセス
できる。
Here, the application is the DB manager class CDBM existing on the same device 8701.
DB transaction class CDBMTr using 8702
Can generate ansaction 8703 and access the database.

【0205】DBトランザクションクラスCDBMTransact
ion8703内部には、指定されたデータベースに対応
する実装DBトランザクションクラスCDBTransaction8
704を持つ。
DB transaction class CDBMTransact
Inside ion8703, the implementation DB transaction class CDBTransaction8 corresponding to the specified database
Have 704.

【0206】実装DBトランザクションクラスCDBTrans
action8704内部には、指定されたデータベースに対
応するデータベースクラスCDBDatabase8705を持
つ。また、データベースクラスCDBDatabase8705内
部には、格納されているデータの定義に対応したデータ
ベース定義クラスCDBClass8706を持つ。データベー
スクラスCDBClass8706内部には、格納されているデ
ータに対応したデータベースオブジェクトクラスCDBObj
ect8707を持つ。
Implementation DB transaction class CDBTrans
The action 8704 has a database class CDBDatabase8705 corresponding to the designated database. Further, the database class CDBDatabase8705 has a database definition class CDBClass8706 corresponding to the definition of stored data. Within the database class CDBClass8706, the database object class CDBObj corresponding to the stored data is stored.
It has an ect8707.

【0207】次に、階層DBトランザクション構造で説
明した基本クラス階層について、図50を用いて説明す
る。図50は実施形態2の階層DBトランザクション構
造の基本クラス階層の一例を示す図である。
Next, the basic class hierarchy described in the hierarchical DB transaction structure will be described with reference to FIG. FIG. 50 is a diagram showing an example of the basic class hierarchy of the hierarchical DB transaction structure of the second embodiment.

【0208】図50において、アプリケーション880
1は、アプリケーションIF層com.xxxx.cdbm8802
が提供するサービスを利用して、データベースをアクセ
スする。また、アプリケーションIF層com.xxxx.cdbm
8802の各クラスは、データベースIF層com.xxxx.c
dbm.mng及びcom.xxxx.cdbm.mng.admin8803が提供す
るサービスを利用して、処理される。
In FIG. 50, the application 880 is used.
1 is the application IF layer com.xxxx.cdbm8802
Access the database using the service provided by. In addition, application IF layer com.xxxx.cdbm
Each 8802 class is a database IF layer com.xxxx.c
It is processed using the service provided by dbm.mng and com.xxxx.cdbm.mng.admin8803.

【0209】次に、階層DBトランザクション構造のう
ち、アプリケーションプログラムと同一デバイス上にデ
ータベースが存在する場合の階層DBトランザクション
構造について、図51を用いて説明する。図51は実施
形態2のアプリケーションプログラムと同一デバイス上
にデータベースが存在する場合の階層トランザクション
構造の一例を示す図である。
Next, of the hierarchical DB transaction structure, the hierarchical DB transaction structure when the database exists on the same device as the application program will be described with reference to FIG. FIG. 51 is a diagram showing an example of a hierarchical transaction structure when a database exists on the same device as the application program of the second embodiment.

【0210】実施形態2のDBマネージャー8905
は、アプリケーションプログラムA8901からの要求
に対応したデータベース8904との間の一連のトラン
ザクション(取引)を扱うDBトランザクション890
2を生成・廃棄する。ここで、DBトランザクション8
902は、アプリケーションプログラムA8901とや
り取りを行うアプリケーションインタフェース層と、同
一デバイスに存在するデータベースのローカル実装DB
トランザクション8903に依存したデータベースイン
タフェース層で構成される。
DB manager 8905 of the second embodiment
Is a DB transaction 890 that handles a series of transactions with the database 8904 corresponding to a request from the application program A8901.
Generate and discard 2. Here, DB transaction 8
Reference numeral 902 denotes an application interface layer that interacts with the application program A8901, and a local implementation DB of a database existing in the same device.
It consists of a database interface layer that depends on transaction 8903.

【0211】次に、基本クラス階層をローカルデータベ
ースに拡張した場合の基本クラス階層について、図52
を用いて説明する。図52は実施形態2のローカルデー
タベースに拡張した場合の基本クラス階層の一例を示す
図である。
Next, FIG. 52 shows the basic class hierarchy when the basic class hierarchy is extended to the local database.
Will be explained. FIG. 52 is a diagram showing an example of the basic class hierarchy when extended to the local database of the second embodiment.

【0212】図52において、アプリケーション900
1は、アプリケーションIF層com.xxxx.cdbm9002
が提供するサービスを利用して、データベースをアクセ
スする。また、アプリケーションIF層com.xxxx.cdbm
9002の各クラスは、図50で説明したデータベース
IF層com.xxxx.cdbm.mng及びcom.xxxx.cdbm.mng.admin
が提供するサービスを利用して処理される。但し、その
実装は同図のようにCoreデータベースcom.xxxx.cdb
m.core9003により提供されている。つまり、Cor
eデータベースcom.xxxx.cdbm.core9003は、図50
で説明したデータベースIF層com.xxxx.cdbm.mng及びc
om.xxxx.cdbm.mng.adminが提供するインターフェース及
びクラスを拡張した形態で実装されている。
In FIG. 52, the application 900
1 is the application IF layer com.xxxx.cdbm9002
Access the database using the service provided by. In addition, application IF layer com.xxxx.cdbm
Each class of 9002 is a database IF layer com.xxxx.cdbm.mng and com.xxxx.cdbm.mng.admin described in FIG.
Processed using the service provided by. However, its implementation is the core database com.xxxx.cdb as shown in the figure.
It is provided by m.core9003. That is, Cor
e database com.xxxx.cdbm.core9003 is shown in FIG.
Database IF layer com.xxxx.cdbm.mng and c described in
It is implemented by extending the interface and class provided by om.xxxx.cdbm.mng.admin.

【0213】ここで、Coreデータベースcom.xxxx.c
dbm.core9003は、データベースの物理構造を隠蔽し
たファイルIF層com.xxxx.cdbm.file9004を用いて
実装されている。
Here, the core database com.xxxx.c
The dbm.core9003 is implemented using a file IF layer com.xxxx.cdbm.file9004 that hides the physical structure of the database.

【0214】次に、階層DBトランザクション構造のう
ち、アプリケーションプログラムと異なるデバイス上に
データベースが存在する場合の階層DBトランザクショ
ン構造について、図53を用いて説明する。
Next, of the hierarchical DB transaction structure, the hierarchical DB transaction structure in the case where the database exists on a device different from the application program will be described with reference to FIG.

【0215】図53は実施形態2のアプリケーションプ
ログラムと異なるデバイス上にデータベースが存在する
場合の階層DBトランザクション構造の一例を示す図で
ある。実施形態2のDBマネージャー9104は、アプ
リケーションプログラムA9101からの要求に対応し
たデータベース9106との間の一連のトランザクショ
ン(取引)を扱うDBトランザクション9102を生成
・廃棄する。
FIG. 53 is a diagram showing an example of a hierarchical DB transaction structure when a database exists on a device different from the application program of the second embodiment. The DB manager 9104 of the second embodiment creates / discards a DB transaction 9102 that handles a series of transactions (transactions) with the database 9106 corresponding to the request from the application program A9101.

【0216】ここで、DBトランザクション9102
は、アプリケーションプログラムA9101とやり取り
を行うアプリケーションインタフェース層と、異なるデ
バイス9105に存在するデータベースとのリモート実
装DBトランザクション9103に依存したデータベー
スインタフェース層で構成される。
Here, the DB transaction 9102
Is composed of an application interface layer that interacts with the application program A 9101 and a database interface layer that depends on a remote implementation DB transaction 9103 with a database that exists in a different device 9105.

【0217】次に、基本クラス階層をリモートデータベ
ースに拡張した場合の基本クラス階層について、図54
を用いて説明する。図54は実施形態2のリモートデー
タベースに拡張した場合の基本クラス階層の一例を示す
図である。
Next, FIG. 54 shows the basic class hierarchy when the basic class hierarchy is extended to a remote database.
Will be explained. FIG. 54 is a diagram showing an example of a basic class hierarchy when extended to the remote database of the second embodiment.

【0218】図54において、アプリケーション920
1は、アプリケーションIF層com.xxxx.cdbm9202
が提供するサービスを利用して、データベースをアクセ
スする。
In FIG. 54, the application 920 is displayed.
1 is the application IF layer com.xxxx.cdbm9202
Access the database using the service provided by.

【0219】また、アプリケーションIF層com.xxxx.c
dbm9202の各クラスは、図50で説明したデータベ
ースIF層com.xxxx.cdbm.mng及びcom.xxxx.cdbm.mng.a
dminが提供するサービスを利用して処理される。但し、
その実装は同図のようにリモートデータベースcom.xxx
x.cdbm.rmi9203により提供されている。つまり、リ
モートデータベースcom.xxxx.cdbm.rmi9203は、図
50で説明したデータベースIF層com.xxxx.cdbm.mng
及びcom.xxxx.cdbm.mng.adminが提供するインターフェ
ース及びクラスを拡張した形態で実装されている。
Application IF layer com.xxxx.c
Each class of the dbm9202 is a database IF layer com.xxxx.cdbm.mng and com.xxxx.cdbm.mng.a described in FIG.
It is processed using the service provided by dmin. However,
Its implementation is remote database com.xxx as shown in the figure.
Supplied by x.cdbm.rmi9203. That is, the remote database com.xxxx.cdbm.rmi9203 is the database IF layer com.xxxx.cdbm.mng described in FIG.
And it is implemented in the form that extends the interface and class provided by com.xxxx.cdbm.mng.admin.

【0220】ここで、リモートデータベースcom.xxxx.c
dbm.rmi9203は、異なるデバイス上のデータベース
にアクセスするためのリモートインタフェースを提供す
るサーバーデータベースcom.xxxx.cdbm.svr9204を
用いて実装されている。
Here, the remote database com.xxxx.c
dbm.rmi9203 is implemented using a server database com.xxxx.cdbm.svr9204 that provides a remote interface for accessing databases on different devices.

【0221】次に、階層DBトランザクション構造の
内、異なるデバイス上のアプリケーションプログラムに
データベースサービスを提供する場合の階層DBトラン
ザクション構造について、図55を用いて説明する。図
55は実施形態2の異なるデバイス上のアプリケーショ
ンプログラムにデータベースサービスを提供する場合の
階層DBトランザクション構造の一例を示す図である。
Next, of the hierarchical DB transaction structure, the hierarchical DB transaction structure for providing a database service to application programs on different devices will be described with reference to FIG. FIG. 55 is a diagram showing an example of a hierarchical DB transaction structure in the case of providing a database service to application programs on different devices according to the second embodiment.

【0222】実施形態2のDBマネージャー9304
は、アプリケーションプログラムA9301からの要求
に対応したデータベース9307との間の一連のトラン
ザクション(取引)を扱う、DBトランザクション93
02を生成・廃棄する。
DB manager 9304 of the second embodiment
Is a DB transaction 93 that handles a series of transactions with the database 9307 corresponding to a request from the application program A9301.
02 is generated and discarded.

【0223】ここで、DBトランザクション9302
は、アプリケーションプログラムA9301とやり取り
を行うアプリケーションインタフェース層と、異なるデ
バイス9308に存在するデータベース9307とのリ
モート実装DBトランザクション9303に依存したリ
モートデータベースインタフェース層で構成される。
Here, the DB transaction 9302
Is composed of an application interface layer that interacts with the application program A9301, and a remote database interface layer that depends on a remote implementation DB transaction 9303 with a database 9307 that exists in a different device 9308.

【0224】一方、データベースサービスを提供するD
Bマネージャー9308は、データベース9307の実
装DBトランザクション9306に依存したデータベー
スIF層を異なるデバイスから利用可能なように拡張し
たサーバ実装DBトランザクション9305を提供す
る。
On the other hand, D which provides the database service
The B manager 9308 provides a server mounted DB transaction 9305 in which the database IF layer depending on the mounted DB transaction 9306 of the database 9307 is extended so that it can be used from different devices.

【0225】上記のように、アプリケーション側から
は、異なるデバイスに存在するデータベースとのリモー
トインタフェースを、上記リモート実装DBトランザク
ション9303により隠蔽するとともに、データベース
側からは、ローカルのサービスをサーバ実装DBトラン
ザクション9305により異なるデバイスからも利用可
能なように拡張することができる。
As described above, from the application side, the remote interface with the database existing in a different device is hidden by the remote mounting DB transaction 9303, and from the database side, the local service is stored in the server mounting DB transaction 9305. Can be extended to be used by different devices.

【0226】次に、基本クラス階層のデータベースIF
層を異なるデバイスからも利用可能なようにリモートイ
ンタフェースを拡張した場合の基本クラス階層につい
て、図56を用いて説明する。
Next, the database IF of the basic class hierarchy
The basic class hierarchy when the remote interface is extended so that the layers can be used by different devices will be described with reference to FIG.

【0227】図56は実施形態2のデータベースIF層
を異なるデバイスからも利用可能なようにリモートイン
タフェースを拡張した場合の基本クラス階層の一例を示
す図である。図56において、データベースIF層94
02を異なるデバイスからもアクセスできるように、サ
ーバーデータベース9401によりリモートインタフェ
ースが拡張されている。
FIG. 56 is a diagram showing an example of a basic class hierarchy when the remote interface is extended so that the database IF layer of the second embodiment can be used by different devices. In FIG. 56, the database IF layer 94
The remote interface is extended by the server database 9401 so that 02 can be accessed from different devices.

【0228】以上説明しように、実施形態2によれば、
永続的なデータを格納するデータベースと、アプリケー
ションプログラムによる操作を解釈し、処理するアプリ
ケーションインタフェースと、データベース共通の操作
を解釈し、処理するデータベースインタフェースと、デ
ータベース個別の処理を実行する個別データベースを備
えることにより、ローカルデータベースに対する余計な
オーバーヘッドを発生させずに、データベースの種類の
違いや、ローカルあるいはサーバのどちらに存在するか
の違いを吸収する。これにより、個々のインターフェー
スを熟知しなくても、永続的なデータを扱うためにデー
タベースを利用できるようになり、開発者は独自のビジ
ネスロジックの開発に集中することで、開発効率の飛躍
的な向上が実現される効果がある。
As described above, according to the second embodiment,
A database that stores persistent data, an application interface that interprets and processes operations by application programs, a database interface that interprets and processes common database operations, and an individual database that performs individual database processing Thus, the difference in the type of database and the difference in whether it exists locally or on the server are absorbed without generating extra overhead for the local database. This allows the database to be used to work with persistent data without having to be familiar with the individual interfaces, allowing developers to focus on developing their own business logic, which dramatically improves development efficiency. There is an effect that improvement is realized.

【0229】<実施形態3>図57は実施形態3のデー
タベースの変化などに伴う通知情報の流れを示す図であ
る。
<Third Embodiment> FIG. 57 is a diagram showing a flow of notification information according to a change in a database according to the third embodiment.

【0230】図57において、アプリケーションプログ
ラム10002と同一デバイス10001上に存在する
DBマネージャー10004を用いて、DBトランザク
ションA10005が生成される。同様に、アプリケー
ションプログラム10003により、DBトランザクシ
ョンX10006が生成される。
In FIG. 57, a DB transaction A10005 is generated by using the DB manager 10004 existing on the same device 10001 as the application program 10002. Similarly, the application program 10003 generates a DB transaction X10006.

【0231】ここで、DBトランザクションA1000
5で行われた処理により発生した変化に伴い、通知情報
がDBマネージャー10004に通知される。DBマネ
ージャー10004は、通知された通知情報を管理下の
DBトランザクションA10005及びDBトランザク
ションX10006に通知する。上記通知を受け取った
DBトランザクションA10005はアプリケーション
プログラム10002に通知し、同様にDBトランザク
ションX10006はアプリケーションプログラムX1
0003に通知する。
Here, the DB transaction A1000
The notification information is notified to the DB manager 10004 according to the change caused by the processing performed in step 5. The DB manager 10004 notifies the notified notification information to the managed DB transaction A10005 and DB transaction X10006. The DB transaction A10005 that has received the above notification notifies the application program 10002, and similarly the DB transaction X10006 indicates the application program X1.
Notify 0003.

【0232】上記流れにより、上記通知情報を受け取っ
たアプリケーションプログラムは、それぞれの判断によ
り、データベース情報の再表示などの適切な処理を実行
する。
[0232] According to the above flow, the application program which has received the notification information executes appropriate processing such as redisplay of the database information according to each judgment.

【0233】次に、実施形態3の階層DBトランザクシ
ョン構造について、図58を用いて説明する。尚、実施
形態3の階層DBトランザクション構造は、実施形態2
の階層DBトランザクション構造に対し、実装DBトラ
ンザクション管理リストという概念を導入する。
Next, the hierarchical DB transaction structure of the third embodiment will be described with reference to FIG. The hierarchical DB transaction structure of the third embodiment is the same as that of the second embodiment.
Introduces the concept of implementation DB transaction management list to the hierarchical DB transaction structure of.

【0234】図58は実施形態3の情報処理装置の階層
DBトランザクション構造を示す図である。
FIG. 58 is a diagram showing the hierarchical DB transaction structure of the information processing apparatus of the third embodiment.

【0235】実施形態3のDBマネージャー10110
は、アプリケーションプログラムA10101からの要
求に対応したデータベース10105との間の一連のト
ランザクション(取引)を扱うDBトランザクション1
0103を生成・廃棄する。ここで、DBトランザクシ
ョン10103は、アプリケーションプログラムA10
101とやり取りを行うアプリケーションインタフェー
ス層と、個々のデータベースの実装に依存したデータベ
ースインタフェース層である実装DBトランザクション
A10104で構成される。同様に、アプリケーション
プログラムX10102からの要求に対応したデータベ
ース10108との間の一連のトランザクションを扱う
DBトランザクション10106及び実装DBトランザ
クションX10107が生成される。
DB manager 10110 of the third embodiment
Is a DB transaction 1 that handles a series of transactions with the database 10105 corresponding to a request from the application program A 10101.
0103 is generated and discarded. Here, the DB transaction 10103 is the application program A10.
101 and an implementation DB transaction A10104 which is a database interface layer depending on the implementation of each database. Similarly, a DB transaction 10106 and a mounted DB transaction X10107 that handle a series of transactions with the database 10108 corresponding to a request from the application program X10102 are generated.

【0236】以上、生成された実装DBトランザクショ
ン群は、実装DBトランザクション管理リスト1010
9に格納、管理されている。
The implementation DB transaction group thus generated is the implementation DB transaction management list 1010.
9 stored and managed.

【0237】次に、階層DBトランザクションの内部デ
ータについて、図59を用いて説明する。図59は実施
形態3の階層DBトランザクションの内部データを示す
図である。
Next, the internal data of the hierarchical DB transaction will be described with reference to FIG. FIG. 59 is a diagram showing internal data of a hierarchical DB transaction according to the third embodiment.

【0238】階層DBトランザクションは10201に
示すように、実際に組み込まれている実装DBトランザ
クションの情報10202と、トランザクション生成後
に処理対象となったアプリケーションオブジェクトとD
Bオブジェクトの関連を記憶するオブジェクト対応テー
ブル10206の内部データを持つ。
As indicated by reference numeral 10201, the hierarchical DB transaction is information 10202 of the actually installed DB transaction, the application object which is the processing target after the transaction is generated, and D.
It has internal data of the object correspondence table 10206 which stores the relation of B objects.

【0239】また、実装DBトランザクションの情報1
0202は、トランザクションが実行中かどうかを示す
実行ステータスと、トランザクションの対象となってい
るデータベースの情報10203と、トランザクション
実行中に行われた未確定の処理リスト10204と、デ
ータベースの変化を通知する先(例えば、アプリケーシ
ョンプログラム10205)の情報を持つDBリスナー
と、データベースの変化状況を保持する更新ステータス
を持つ。
Also, information 1 of the mounting DB transaction
Reference numeral 0202 denotes an execution status indicating whether or not a transaction is being executed, information 10203 of the database that is the target of the transaction, an unconfirmed processing list 10204 executed during the execution of the transaction, and a notification destination of the database. It has a DB listener that holds information (for example, the application program 10205) and an update status that holds the change status of the database.

【0240】次に、ステップS409における、実施形
態3のトランザクション廃棄処理の詳細について、図6
0を用いて説明する。
Details of the transaction discarding process of the third embodiment in step S409 will be described below with reference to FIG.
It will be described using 0.

【0241】図60はステップS409において実行さ
れる実施形態3のトランザクション廃棄処理の詳細を示
すフローチャートである。
FIG. 60 is a flow chart showing details of the transaction discard processing of the third embodiment executed in step S409.

【0242】トランザクション廃棄処理が起動される
と、ステップS10301で、DBトランザクション廃
棄処理を実行し、対応するDBトランザクションを廃棄
する。DBトランザクション廃棄処理の結果、続く、ス
テップS10302で、DBトランザクションの廃棄が
成功したか否かを判定する。DBトランザクションの廃
棄が成功した場合(ステップS10302でYES)、
「成功」として処理を終了する。一方、DBトランザク
ションの廃棄が成功しなかった場合(ステップS103
02でNO)、「失敗」として処理を終了する。
When the transaction discarding process is activated, the DB transaction discarding process is executed in step S10301 to discard the corresponding DB transaction. As a result of the DB transaction discarding process, in the next step S10302, it is determined whether the DB transaction has been discarded successfully. If the discard of the DB transaction is successful (YES in step S10302),
The process ends as “success”. On the other hand, if the discard of the DB transaction has not succeeded (step S103)
No in 02), the processing ends as “failure”.

【0243】次に、ステップS603において実行され
る実施形態3のDBトランザクション生成処理の詳細に
ついて、図61を用いて説明する。図61は実施形態3
のDBトランザクション生成処理の詳細を示すフローチ
ャートである。
Details of the DB transaction generation processing of the third embodiment executed in step S603 will be described below with reference to FIG. FIG. 61 shows the third embodiment.
5 is a flowchart showing details of the DB transaction generation process of FIG.

【0244】DBトランザクション生成処理が起動され
ると、ステップS10401で、初期化処理を実行し、
図59で説明した階層DBトランザクションの内部デー
タを初期化する。続く、ステップS10402で、図4
6で説明したトランザクション生成画面で指定されたサ
ーバ名が有効であるか否かを判定する。サーバ名が有効
である場合(ステップS10402でYES)、ステッ
プS10403に進み、リモートデータベースマネージ
ャー生成処理を実行し、サーバ名で指定されたサーバに
接続するためのデータベースマネージャーを生成する。
一方、サーバ名が有効でない場合(ステップS1040
2でNO)、ステップS10404に進み、対応データ
ベースマネージャー生成処理を実行し、図46で説明し
たトランザクション生成画面で指定されたデータベース
のデータベースマネージャーを生成する。
When the DB transaction generation process is activated, initialization process is executed in step S10401,
The internal data of the hierarchical DB transaction described in FIG. 59 is initialized. Subsequently, in step S10402, FIG.
It is determined whether the server name specified on the transaction generation screen described in 6 is valid. If the server name is valid (YES in step S10402), the flow advances to step S10403 to execute remote database manager generation processing, and generate a database manager for connecting to the server specified by the server name.
On the other hand, if the server name is not valid (step S1040)
(NO in 2), the flow advances to step S10404 to execute the corresponding database manager generation processing, and generate the database manager of the database specified on the transaction generation screen described with reference to FIG.

【0245】続く、ステップS10405で、生成され
たデータベースマネージャーが提供する実装DBトラン
ザクション初期化処理を実行し、図59で説明した実装
DBトランザクションの内部データを初期化する。
In next step S10405, the implemented DB transaction initialization processing provided by the generated database manager is executed to initialize the internal data of the implemented DB transaction described in FIG.

【0246】続く、ステップS10406で、上記で生
成されたデータベースマネージャーが提供するDB接続
処理を実行し、指定された条件でデータベースに接続す
る。DB接続処理の結果、次に、ステップS10407
で、データベースの接続が成功したか否かを判定する。
データベースの接続が成功しなかった場合(ステップS
10407でNO)、「失敗」として処理を終了する。
一方、データベースの接続が成功した場合(ステップS
10407でYES)、ステップS10408に進む。
[0246] In subsequent step S10406, the DB connection processing provided by the database manager generated above is executed to connect to the database under the specified conditions. As a result of the DB connection processing, next, step S10407
Then, it is determined whether or not the database connection is successful.
If the database connection is not successful (step S
If NO in 10407), the processing ends as “failure”.
On the other hand, if the database connection is successful (step S
(YES in 10407), and proceeds to step S10408.

【0247】ステップS10408では、接続に関連し
た情報を実装DBトランザクションの内部データに格納
する。次に、ステップS10409で、与えられたデー
タベース変化通知先をDBリスナーに格納する。次に、
ステップS10410で、上記生成された実装DBトラ
ンザクションを実装DBトランザクション管理リストに
追加し、「成功」として処理を終了する。
In step S10408, information related to the connection is stored in the internal data of the mounting DB transaction. Next, in step S10409, the given database change notification destination is stored in the DB listener. next,
In step S10410, the generated mounting DB transaction is added to the mounting DB transaction management list, and the processing ends as “success”.

【0248】次に、ステップS10301のDBトラン
ザクション廃棄処理について、図62を用いて説明す
る。図62は実施形態3のステップS10301のDB
トランザクション廃棄処理の詳細を示すフローチャート
である。
Next, the DB transaction discard processing in step S10301 will be described with reference to FIG. FIG. 62 shows the DB of step S10301 of the third embodiment.
It is a flow chart which shows details of transaction disposal processing.

【0249】DBトランザクション廃棄処理が起動され
ると、ステップS10501で、処理対象を実装DBト
ランザクション管理リストの先頭にセットした後、次ス
テップ以降で全ての処理対象の実装DBトランザクショ
ンに対する処理を繰り返す。
When the DB transaction discarding process is activated, the process target is set to the head of the mounted DB transaction management list in step S10501, and then the processes for all the mounted DB transactions to be processed are repeated in the subsequent steps.

【0250】ステップS10502で、全処理対象の実
装DBトランザクションに対する処理が終了しているか
否かを判定する。全処理対象の実装DBトランザクショ
ンに対する処理が終了している場合(ステップS105
02でNO)、「失敗」として処理を終了する。一方、
全処理対象の実装DBトランザクションに対する処理が
終了してない場合(ステップS10502でYES)、
ステップS10503に進む。
[0250] In step S10502, it is determined whether or not the processing for all mounted DB transactions to be processed has been completed. When the processing for all the mounted DB transactions to be processed is completed (step S105)
No in 02), the processing ends as “failure”. on the other hand,
If the processes for all the implemented DB transactions to be processed have not been completed (YES in step S10502),
Proceeds to step S10503.

【0251】次に、ステップS10503で、処理対象
の実装DBトランザクションと廃棄対象の実装DBトラ
ンザクションが一致しているか否かを判定する。処理対
象の実装DBトランザクションと廃棄対象の実装DBト
ランザクションが一致している場合(ステップS105
03でYES)、ステップS10505に進み、処理対
象の実装DBトランザクションを実装DBトランザクシ
ョン管理リストから削除した後、「成功」として処理を
終了する。
Next, in step S10503, it is determined whether or not the mounting DB transaction to be processed matches the mounting DB transaction to be discarded. When the implementation DB transaction to be processed and the implementation DB transaction to be discarded match (step S105)
(YES in 03), the process advances to step S10505, the processing target mounted DB transaction is deleted from the mounted DB transaction management list, and then the processing ends as “success”.

【0252】一方、ステップS10503において、処
理対象の実装DBトランザクションと廃棄対象の実装D
Bトランザクションが一致していなかった場合(ステッ
プS10503でYES)、ステップS10504に進
み、処理対象の実装DBトランザクションを次に進め、
再びステップS10502に戻り、上記の処理を繰り返
す。
On the other hand, in step S10503, the implementation DB transaction to be processed and the implementation D to be discarded are
If the B transactions do not match (YES in step S10503), the process advances to step S10504 to proceed to the implementation DB transaction to be processed,
The procedure returns to step S10502 again, and the above processing is repeated.

【0253】次に、実施形態3におけるステップS60
02のDBオブジェクト生成追加処理の詳細について、
図63を用いて説明する。図63は、実施形態3によ
る、ステップS6002のDBオブジェクト生成追加処
理の詳細を示すフローチャートである。
Next, step S60 in the third embodiment.
For details of the DB object generation addition process of 02,
This will be described with reference to FIG. 63. FIG. 63 is a flowchart showing details of the DB object generation / addition processing in step S6002 according to the third embodiment.

【0254】DBオブジェクト生成追加処理が起動され
ると、ステップS10601で、アプリケーションクラ
ス名取得処理を実行し、与えられたアプリケーションオ
ブジェクトのアプリケーションクラス名を取得する。次
に、ステップS10602で、DBクラス名決定処理を
実行し、前記アプリケーションクラス名に対応するデー
タベース内のデータベースクラス名を決定する。
When the DB object generation / addition process is activated, an application class name acquisition process is executed in step S10601 to acquire the application class name of the given application object. Next, in step S10602, a DB class name determination process is executed to determine the database class name in the database corresponding to the application class name.

【0255】DBクラス名決定処理の結果、続く、ステ
ップS10603で、データベースクラス名の決定が成
功したか否かを判定する。データベースクラス名の決定
が成功した場合(ステップS10603でNO)、「失
敗」として処理を終了する。
As a result of the DB class name determination processing, it is determined in next step S10603 whether the database class name has been successfully determined. If the determination of the database class name has succeeded (NO in step S10603), the processing ends as “failure”.

【0256】一方、データベースクラス名の決定が成功
した場合(ステップS10603でYES)、ステップ
S10604に進む。次に、ステップS10604で、
前記データベースクラスに対応するデフォルトデータベ
ースオブジェクトを生成追加する。次に、ステップS1
0605で、更新ステータスにデータが追加されたこと
を示す「追加」フラグを付与し、「成功」として処理を
終了する。
On the other hand, if the database class name has been successfully determined (YES in step S10603), the flow advances to step S10604. Next, in step S10604,
Create and add a default database object corresponding to the database class. Next, step S1
In 0605, an “addition” flag indicating that data has been added is added to the update status, and the processing ends as “success”.

【0257】次に、実施形態3におけるステップS62
04のDBオブジェクト削除処理の詳細について、図6
4を用いて説明する。図64は実施形態3のDBオブジ
ェクト削除処理の詳細を示すフローチャートである。
Next, step S62 in the third embodiment.
Details of the DB object deletion processing of 04 are shown in FIG.
4 will be described. FIG. 64 is a flowchart showing details of the DB object deletion processing according to the third embodiment.

【0258】DBオブジェクト削除処理が起動される
と、ステップS10701で、DBクラス取得処理を実
行し、与えられたデータベースオブジェクトに対応する
データベースクラスが取得する。
When the DB object deletion process is activated, a DB class acquisition process is executed in step S10701 to acquire the database class corresponding to the given database object.

【0259】DBクラス取得処理の結果、次に、ステッ
プS10702で、データベースクラスの取得が成功し
たか否かを判定する。データベースクラスの取得が成功
しなかった場合(ステップS10702でNO)、「失
敗」として処理を終了する。一方、データベースクラス
の取得が成功した場合(ステップS10702でYE
S)、ステップS10703に進む。
As a result of the DB class acquisition processing, next, in step S10702, it is determined whether the acquisition of the database class has succeeded. If acquisition of the database class has not succeeded (NO in step S10702), the processing ends as “failure”. On the other hand, if acquisition of the database class has succeeded (YES in step S10702).
S), and proceeds to step S10703.

【0260】ステップS10703で、前記データベー
スクラスのサービスを用いて、与えられたデータベース
オブジェクトを削除する。次に、ステップS10704
で、更新ステータスにデータが削除されたことを示す
「削除」フラグを付与し、「成功」として処理を終了す
る。
In step S10703, the given database object is deleted by using the service of the database class. Next, step S10704.
Then, a "deletion" flag indicating that the data has been deleted is added to the update status, and the processing ends as "success".

【0261】次に、図31のオブジェクト追加処理及び
図32のオブジェクト更新処理それぞれにおけるステッ
プS5907、ステップS6003の、実施形態3によ
るDBオブジェクト値セット処理の詳細について、図6
5を用いて説明する。
Next, the details of the DB object value setting process according to the third embodiment of steps S5907 and S6003 in the object adding process of FIG. 31 and the object updating process of FIG. 32 will be described with reference to FIG.
This will be described using 5.

【0262】図65は実施形態3のステップS590
7、ステップS6003のDBオブジェクト値セット処
理の詳細を示すフローチャートである。
FIG. 65 shows step S590 of the third embodiment.
7 is a flowchart showing details of the DB object value setting process in step S6003.

【0263】DBオブジェクト値セット処理が起動され
ると、ステップS10801で、全書き込み可能フィー
ルド名取得処理を実行し、与えられたアプリケーション
オブジェクトの各フィールド定義を参照し、書き込み可
能な全てのフィールド名を取得する。
When the DB object value set process is activated, all writable field name acquisition process is executed in step S10801, and each writable field name is referenced by referring to each field definition of the given application object. get.

【0264】全書き込み可能フィールド名取得処理の結
果、続く、ステップS10802で、フィールド名の取
得が成功したか否かを判定する。フィールド名の取得が
成功しなかった場合(ステップS10802でNO)、
「失敗」として処理を終了する。一方、フィールド名の
取得が成功した場合(ステップS10802でYE
S)、ステップS10803に進む。ステップS108
03で、処理対象を前述の取得された全書き込み可能フ
ィールド名リストの先頭にセットした後、次ステップ以
降で全ての処理対象のフィールドに対する処理を繰り返
す。
As a result of the all writable field name acquisition process, in a succeeding step S10802, it is determined whether or not the field name has been successfully acquired. If the acquisition of the field name has not succeeded (NO in step S10802),
The process ends as “failure”. On the other hand, if acquisition of the field name is successful (YES in step S10802).
S), and proceeds to step S10803. Step S108
In 03, after setting the processing target to the head of the above-mentioned acquired all writable field name list, the processing for all fields to be processed is repeated from the next step.

【0265】ステップS10804で、全処理対象のフ
ィールドに対する処理が終了しているか否かを判定す
る。全処理対象のフィールドに対する処理が終了してい
る場合(ステップS10804でYES)、ステップS
10811に進み、更新ステータスにデータが更新され
たことを示す「更新」フラグを付与し、「成功」として
処理を終了する。一方、全処理対象のフィールドに対す
る処理が終了でない場合(ステップS10804でN
O)、ステップS10805に進む。
[0265] In step S10804, it is determined whether the processing has been completed for all fields to be processed. If the processing for all fields to be processed is complete (YES in step S10804), step S
In step 10811, an “update” flag indicating that the data has been updated is added to the update status, and the processing ends as “success”. On the other hand, if the processing has not been completed for all fields to be processed (N in step S10804).
O), and proceeds to step S10805.

【0266】ステップS10805で、処理対象のフィ
ールドが配列であるか否かを判定する。フィールドが配
列でない場合(ステップS10805でNO)、ステッ
プS10806に進む。ステップS10806で、フィ
ールド値取得処理を実行し、与えられたアプリケーショ
ンオブジェクトの処理対象のフィールド名に対応する値
を取得する。続くステップS10807で、DBフィー
ル値セット処理を実行し、データベースオブジェクトの
対応するフィールドに格納する。そして、ステップS1
0808で、処理対象のフィールドを次に進め、再びス
テップS10804に戻り、処理を繰り返す。
[0266] In step S10805, it is determined whether the field to be processed is an array. If the field is not an array (NO in step S10805), the flow advances to step S10806. In step S10806, a field value acquisition process is executed to acquire a value corresponding to the field name of the processing target of the given application object. In subsequent step S10807, DB field value setting processing is executed and stored in the corresponding field of the database object. And step S1
In 0808, the field to be processed is advanced to the next field, the process returns to step S10804, and the process is repeated.

【0267】一方、ステップS10805で、処理対象
のフィールドが配列である場合(ステップS10805
でYES)、ステップS10809に進む。ステップS
10809で、配列フィールド値取得処理を実行し、与
えられたアプリケーションオブジェクトの処理対象のフ
ィールド名に対応する値を取得する。続く、ステップS
10810で、DB配列フィールド値セット処理を実行
し、データベースオブジェクトの対応するフィールドに
格納する。そして、ステップS10808で、処理対象
のフィールドを次に進め、再びステップS10804に
戻り、処理を繰り返す。
On the other hand, in step S10805, if the field to be processed is an array (step S10805).
YES), and proceeds to step S10809. Step S
In 10809, the array field value acquisition process is executed to acquire the value corresponding to the field name of the processing object of the given application object. Continued, step S
At 10810, DB array field value set processing is performed and stored in the corresponding field of the database object. Then, in step S10808, the field to be processed is advanced, the process returns to step S10804, and the process is repeated.

【0268】次に、図18の全オブジェクト取得確定処
理、図19のオブジェクト追加確定処理、図20のオブ
ジェクト更新確定処理、図21のオブジェクト削除確定
処理それぞれにおけるステップS1804、ステップS
1904、ステップS2004、ステップS2104で
実行される、実施形態3によるDBトランザクション確
定処理の詳細について、図66を用いて説明する。
Next, step S1804 and step S in each of all object acquisition confirmation processing of FIG. 18, object addition confirmation processing of FIG. 19, object update confirmation processing of FIG. 20, and object deletion confirmation processing of FIG.
Details of the DB transaction confirmation processing according to the third embodiment executed in 1904, step S2004, and step S2104 will be described with reference to FIG. 66.

【0269】図66は実施形態3のステップS180
4、ステップS1904、ステップS2004、ステッ
プS2104のDBトランザクション確定処理の詳細を
示すフローチャートである。
FIG. 66 shows step S180 of the third embodiment.
4 is a flowchart showing details of the DB transaction confirmation processing in step 4, step S1904, step S2004, and step S2104.

【0270】DBトランザクション確定処理が起動され
ると、ステップS10901で、図59で説明した階層
DBトランザクションの内部データの実行ステータスを
参照し、実行ステータスが「実行中」であるか否かを判
定する。実行ステータスが「実行中」でない場合(ステ
ップS10901でNO)、「失敗」として処理を終了
する。一方、実行ステータスが「実行中」である場合
(ステップS10901でYES)、ステップS109
02に進む。ステップS10902で、処理対象を未確
定処理リスト先頭にセットした後、次ステップ以降で全
ての処理対象に対する処理を繰り返す。
When the DB transaction confirmation process is activated, it is checked in step S10901 with reference to the execution status of the internal data of the hierarchical DB transaction described in FIG. 59 whether the execution status is "execution in progress". . If the execution status is not "execution in progress" (NO in step S10901), the processing ends as "failure". On the other hand, if the execution status is “execution in progress” (YES in step S10901), step S109
Go to 02. In step S10902, the process target is set to the head of the unconfirmed process list, and then the process for all process targets is repeated in the subsequent steps.

【0271】ステップS10903で、全処理対象に対
する処理が終了しているか否かを判定する。処理対象に
対する処理が終了していない場合(ステップS1090
3でNO)、ステップS10904に進み、処理対象確
定処理を実行し、対象となるデータベースに行われた処
理内容を確定し、ステップS10903に戻る。
It is checked in step S10903 if processing has been completed for all processing targets. When the process for the process target is not completed (step S1090)
(NO in 3), the process proceeds to step S10904, the process target confirmation process is executed, the process contents performed in the target database are confirmed, and the process returns to step S10903.

【0272】一方、ステップS10903で、処理対象
に対する処理が終了である場合(ステップS10903
でYES)、ステップS10905に進む。ステップS
10905で、更新ステータスを参照して更新されたか
否かを判定する。更新された場合(ステップS1090
5でYES)、ステップS10907に進む。一方、更
新されていない場合(ステップS10905でNO)、
ステップS10906に進む。ステップS10906
で、更新情報生成通知処理を実行し、更新情報を対応す
るデータベースに通知する。
On the other hand, in step S10903, when the process for the process target is completed (step S10903).
YES), and proceeds to step S10905. Step S
In 10905, it is determined whether or not it has been updated with reference to the update status. If updated (step S1090)
If YES, the process proceeds to step S10907. On the other hand, if it has not been updated (NO in step S10905),
The process advances to step S10906. Step S10906
Then, the update information generation notification process is executed, and the update information is notified to the corresponding database.

【0273】その後、続く、ステップS10907で、
実行ステータスを「停止」に変更する。次に、ステップ
S10908で、更新ステータスを初期化し、「成功」
として処理を終了する。
Thereafter, in the following step S10907,
Change the execution status to "stopped". Next, in step S10908, the update status is initialized and "successful"
The processing ends.

【0274】次に、ステップS10906の更新情報生
成通知処理の詳細について、図67を用いて説明する。
図67は実施形態3のステップS10906の更新情報
生成通知処理の詳細を示すフローチャートである。
Details of the update information generation notification process in step S10906 will be described below with reference to FIG.
FIG. 67 is a flowchart showing details of the update information generation notification process of step S10906 of the third embodiment.

【0275】更新情報生成通知処理が起動されると、ス
テップS11001で、図59で説明した階層DBトラ
ンザクションの内部データの更新ステータスを参照し、
更新ステータスが「追加」であるか否かを判定する。更
新ステータスが「追加」でない場合(ステップS110
01でNO)、ステップS11004に進む。一方、更
新ステータスが「追加」である場合(ステップS110
01でYES)、ステップS11002に進む。ステッ
プS11002では、追加通知情報生成処理を実行し、
通知される追加通知情報を生成する。そして、ステップ
S11003で、DBM追加通知情報通知処理を実行
し、生成した追加通知情報を対応するデータベースに通
知する。
When the update information generation notification process is activated, the update status of the internal data of the hierarchical DB transaction described in FIG. 59 is referred to in step S11001,
It is determined whether the update status is "addition". When the update status is not "addition" (step S110)
(NO at 01), the process proceeds to step S11004. On the other hand, when the update status is “addition” (step S110)
If YES at 01), the process proceeds to step S11002. In step S11002, additional notification information generation processing is executed,
Generate additional notification information to be notified. Then, in step S11003, the DBM additional notification information notification processing is executed, and the generated additional notification information is notified to the corresponding database.

【0276】次に、ステップS11004で、図59で
説明したDBトランザクションの内部データの更新ステ
ータスを参照し、更新ステータスが「削除」であるか否
かを判定する。更新ステータスが「削除」でない場合
(ステップS11004でNO)、ステップS1100
7に進む。一方、更新ステータスが「削除」である場合
(ステップS11004でYES)、ステップS110
05に進む。ステップS11005では、削除通知情報
生成処理を実行し、通知される削除通知情報を生成す
る。そして、ステップS11006で、DBM削除通知
情報通知処理を実行し、生成した削除通知情報を対応す
るデータベースに通知する。
Next, in step S11004, the update status of the internal data of the DB transaction described with reference to FIG. 59 is referred to, and it is determined whether the update status is "delete". If the update status is not “delete” (NO in step S11004), step S1100
Proceed to 7. On the other hand, if the update status is “delete” (YES in step S11004), step S110
Go to 05. In step S11005, deletion notification information generation processing is executed to generate deletion notification information to be notified. Then, in step S11006, DBM deletion notification information notification processing is executed, and the generated deletion notification information is notified to the corresponding database.

【0277】続く、ステップS11007で、図59で
説明したDBトランザクションの内部データの更新ステ
ータスを参照し、更新ステータスが「更新」であるか否
かを判定する。更新ステータスが「更新」でない場合
(ステップS11007でNO)、処理を終了する。一
方、更新ステータスが「更新」である場合(ステップS
11007でYES)、ステップS11008に進む。
ステップS11008では、更新通知情報生成処理を実
行し、通知される更新通知情報を生成する。そして、ス
テップS11009で、DBM更新通知情報通知処理を
実行し、生成した更新通知情報を対応するデータベース
に通知する。
In step S11007, the update status of the internal data of the DB transaction described with reference to FIG. 59 is referred to, and it is determined whether the update status is "update". If the update status is not "update" (NO in step S11007), the process ends. On the other hand, if the update status is “update” (step S
(YES in 11007), and the process proceeds to step S11008.
In step S11008, update notification information generation processing is executed to generate update notification information to be notified. Then, in step S11009, DBM update notification information notification processing is executed, and the generated update notification information is notified to the corresponding database.

【0278】次に、ステップS11008の更新通知情
報生成処理で生成される通知情報について、図68を用
いて説明する。図68は実施形態3のステップS110
08の更新通知情報生成処理で生成される通知情報の一
例を示す図である。通知情報11101には、通知情報
の種類を示す通知種類と対応するデータベースを示す対
象データベース11102を持つ。後述の図69〜図7
1の処理においては、ステップS11201、S113
01、S11401において空の通知情報(通知情報の
枠組み)が生成され、その後「通知種類」と「対象デー
タベース」に値が格納される。
Next, the notification information generated in the update notification information generation processing in step S11008 will be described with reference to FIG. FIG. 68 shows step S110 of the third embodiment.
It is a figure which shows an example of the notification information produced | generated by the update notification information production | generation process of 08. The notification information 11101 has a target database 11102 indicating a database corresponding to the notification type indicating the type of notification information. 69 to 7 described later
In the process of No. 1, steps S11201 and S113
01, empty notification information (notification information framework) is generated in S11401, and thereafter, values are stored in the “notification type” and the “target database”.

【0279】次に、ステップS11002の追加通知情
報生成処理の詳細について、図69を用いて説明する。
図69は実施形態3のステップS11002の追加通知
情報生成処理の詳細を示すフローチャートである。
Details of the additional notification information generation processing in step S11002 will be described below with reference to FIG.
FIG. 69 is a flowchart showing details of the additional notification information generation processing in step S11002 of the third embodiment.

【0280】追加通知情報生成処理が起動されると、ス
テップS11201で、前述の通知情報を生成する。続
く、ステップS11202で、上記通知情報の通知種類
に、データベースにデータが追加されたことを示す「追
加」フラグをセットする。続く、ステップS11203
で、上記通知情報の対象データベースに、トランザクシ
ョン自身の対象データベースの情報をセットし、処理を
終了する。
When the additional notification information generating process is activated, the above-mentioned notification information is generated in step S11201. In a succeeding step S11202, an "addition" flag indicating that data has been added to the database is set in the notification type of the notification information. Sequential step S11203
Then, the information of the target database of the transaction itself is set in the target database of the notification information, and the process ends.

【0281】次に、ステップS11005の削除通知情
報生成処理の詳細について、図70を用いて説明する。
図70は実施形態3のステップS11005の削除通知
情報生成処理の詳細を示すフローチャートである。
Details of the deletion notification information generation processing in step S11005 will be described below with reference to FIG.
FIG. 70 is a flowchart showing details of the deletion notification information generation processing in step S11005 of the third embodiment.

【0282】削除通知情報生成処理が起動されると、ス
テップS11301で、前述の通知情報を生成する。続
く、ステップS11302で、上記通知情報の通知種類
に、データベースからデータが削除されたことを示す
「削除」フラグをセットする。続く、ステップS113
03で、上記通知情報の対象データベースに、トランザ
クション自身の対象データベースの情報をセットし、処
理を終了する。
When the deletion notification information generating process is activated, the above-mentioned notification information is generated in step S 11301. In next step S11302, a "deletion" flag indicating that data has been deleted from the database is set in the notification type of the notification information. Sequential step S113
In 03, the information of the target database of the transaction itself is set in the target database of the notification information, and the process is terminated.

【0283】次に、ステップS11008の更新通知情
報生成処理の詳細について、図71を用いて説明する。
図71は実施形態3のステップS11008の更新通知
情報生成処理の詳細を示すフローチャートである。
Details of the update notification information generation processing in step S11008 will be described below with reference to FIG.
FIG. 71 is a flowchart showing details of the update notification information generation processing in step S11008 of the third embodiment.

【0284】更新通知情報生成処理が起動されると、ス
テップS11401で、前述の通知情報を生成する。続
く、ステップS11402で、上記通知情報の通知種類
に、データベースのデータが更新されたことを示す「更
新」フラグをセットする。続く、ステップS11403
で、上記通知情報の対象データベースに、トランザクシ
ョン自身の対象データベースの情報をセットし、処理を
終了する。
When the update notification information generation process is activated, the above-mentioned notification information is generated in step S11401. Subsequently, in step S11402, an "update" flag indicating that the data in the database has been updated is set in the notification type of the notification information. Succeeding, Step S11403
Then, the information of the target database of the transaction itself is set in the target database of the notification information, and the process ends.

【0285】次に、ステップS11003のDBM追加
通知情報通知処理について、図72を用いて説明する。
図72は実施形態3のステップS11003のDBM追
加通知情報通知処理の詳細を示すフローチャートであ
る。
Next, the DBM addition notification information notification processing in step S11003 will be described with reference to FIG.
FIG. 72 is a flowchart showing details of the DBM addition notification information notification processing in step S11003 according to the third embodiment.

【0286】DBM追加通知情報通知処理が起動される
と、ステップS11501で、処理対象のトランザクシ
ョンをDBM自身が持つ実装DBトランザクション管理
リストの先頭にセットした後、次ステップ以降で全ての
処理対象のトランザクションに対する処理を繰り返す。
When the DBM addition notification information notification process is activated, in step S11501 the transaction to be processed is set at the head of the mounted DB transaction management list of the DBM itself, and all transactions to be processed in the subsequent steps are performed. The process for is repeated.

【0287】ステップS11502で、全処理対象のト
ランザクションに対する処理が終了であるか否かを判定
する。全処理対象のトランザクションに対する処理が終
了である場合(ステップS11502でYES)、処理
を終了する。一方、全処理対象のトランザクションに対
する処理が終了でない場合(ステップS11503でN
O)、ステップS11503に進む。
[0287] In step S11502, it is determined whether the processing for all transactions to be processed is completed. If the processes for all transactions to be processed are complete (YES in step S11502), the process ends. On the other hand, if the processing for all transactions to be processed has not ended (N in step S11503).
O), and proceeds to step S11503.

【0288】ステップS11503で、処理対象のトラ
ンザクションが提供するトランザクション追加通知情報
通知処理を実行し、通知情報を対応するデータベースに
通知する。続く、ステップS11504で、処理対象の
トランザクションを次に進め、再びステップ11502
に戻り、処理を繰り返す。
[0288] In step S11503, transaction addition notification information notification processing provided by the transaction to be processed is executed to notify the corresponding database of the notification information. In next step S11504, the transaction to be processed is advanced to the next step, and step 11502 is executed again.
Return to and repeat the process.

【0289】次に、ステップS11006のDBM削除
通知情報通知処理の詳細について、図73を用いて説明
する。図73は実施形態3のステップS11006のD
BM削除通知情報通知処理の詳細を示すフローチャート
である。
Details of the DBM deletion notification information notification processing in step S11006 will be described below using FIG. FIG. 73 shows D in step S11006 of the third embodiment.
It is a flow chart which shows details of BM deletion notice information notice processing.

【0290】DBM削除通知情報通知処理が起動される
と、ステップS11601で、処理対象のトランザクシ
ョンをDBM自身が持つ実装DBトランザクション管理
リストの先頭にセットした後、次ステップ以降で全ての
処理対象のトランザクションに対する処理を繰り返す。
When the DBM deletion notification information notification process is activated, in step S11601 the transaction to be processed is set at the beginning of the mounted DB transaction management list of the DBM itself, and then all transactions to be processed in the next and subsequent steps. The process for is repeated.

【0291】ステップS11602で、全処理対象のト
ランザクションに対する処理が終了であるか否かを判定
する。全処理対象のトランザクションに対する処理が終
了である場合(ステップS11602でNO)、処理を
終了する。一方、全処理対象のトランザクションに対す
る処理が終了でない場合(ステップS11602でYE
S)、ステップS11603に進む。
[0291] In step S11602, it is determined whether the processing for all transactions to be processed has been completed. If the processing for all transactions to be processed is completed (NO in step S11602), the processing is completed. On the other hand, if the processing for all transactions to be processed has not ended (YES in step S11602).
S), and proceeds to step S11603.

【0292】ステップS11603で、処理対象のトラ
ンザクションが提供するトランザクション削除通知情報
通知処理を実行し、通知情報を対応するデータベースに
通知する。続く、ステップS11604で、処理対象の
トランザクションを次に進め、再びステップ11602
に戻り、処理を繰り返す。
In step S11603, the transaction deletion notification information notification processing provided by the transaction to be processed is executed, and the notification information is notified to the corresponding database. In next step S11604, the transaction to be processed is advanced to the next step, and step 11602 is executed again.
Return to and repeat the process.

【0293】次に、ステップS11009のDBM更新
通知情報通知処理の詳細について、図74を用いて説明
する。図74は実施形態3のステップS11009のD
BM更新通知情報通知処理の詳細を示すフローチャート
である。
Details of the DBM update notification information notification processing in step S11009 will be described below with reference to FIG. FIG. 74 shows D in step S11009 of the third embodiment.
It is a flow chart which shows the details of BM update notification information notification processing.

【0294】DBM更新通知情報通知処理が起動される
と、ステップS11701で、処理対象のトランザクシ
ョンをDBM自身が持つ実装DBトランザクション管理
リストの先頭にセットした後、次ステップ以降で全ての
処理対象のトランザクションに対する処理を繰り返す。
When the DBM update notification information notification process is activated, in step S11701 the transaction to be processed is set at the beginning of the mounted DB transaction management list of the DBM itself, and then all transactions to be processed in the subsequent steps are performed. The process for is repeated.

【0295】ステップS11702で、全処理対象のト
ランザクションに対する処理が終了であるか否かを判定
する。全処理対象のトランザクションに対する処理が終
了である場合(ステップS11702でYES)、処理
を終了する。一方、全処理対象のトランザクションに対
する処理が終了でない場合(ステップS11702でN
O)、ステップS11703に進む。
[0295] In step S11702, it is determined whether the processing for all transactions to be processed is completed. If the process for all transactions to be processed is completed (YES in step S11702), the process is completed. On the other hand, if the processing for all transactions to be processed has not ended (N in step S11702).
O), and proceeds to step S11703.

【0296】ステップS11703で、処理対象のトラ
ンザクションが提供するトランザクション更新通知情報
通知処理を実行し、通知情報を対応するデータベースに
通知する。続く、ステップS11704で、処理対象の
トランザクションを次に進め、再びステップ11702
に戻り、処理を繰り返す。
[0296] In step S11703, transaction update notification information notification processing provided by the transaction to be processed is executed, and notification information is notified to the corresponding database. In next step S11704, the transaction to be processed is advanced to the next step, and step 11702 is executed again.
Return to and repeat the process.

【0297】次に、ステップS11503のトランザク
ション追加通知情報通知処理の詳細について、図75を
用いて説明する。図75は実施形態3のステップS11
503のトランザクション追加通知情報通知処理の詳細
を示すフローチャートである。
Details of the transaction addition notification information notification processing in step S11503 will be described below using FIG. FIG. 75 shows step S11 of the third embodiment.
It is a flowchart which shows the detail of the transaction addition notification information notification process of 503.

【0298】トランザクション追加通知情報通知処理が
起動されると、ステップS11801で、通知情報の対
象データベースがトランザクション自身の対象データベ
ースと一致しているか否かを判定する。通知情報の対象
データベースがトランザクション自身の対象データベー
スと一致していない場合(ステップS11801でN
O)、通知する必要は無いので、「成功」として処理を
終了する。一方、通知情報の対象データベースがトラン
ザクション自身の対象データベースと一致している場合
(ステップS11801でYES)、ステップS118
02に進む。
When the transaction addition notification information notification process is activated, it is determined in step S11801 whether the target database of the notification information matches the target database of the transaction itself. When the target database of the notification information does not match the target database of the transaction itself (N in step S11801)
O), there is no need to notify, so the processing ends as “success”. On the other hand, if the target database of the notification information matches the target database of the transaction itself (YES in step S11801), step S118
Go to 02.

【0299】ステップS11802で、DBリスナー取
得処理を実行し、以前に登録されたデータベース変化通
知先を取得する。そして、ステップS11803で、デ
ータベース変化通知先の取得が成功した否かを判定す
る。データベース変化通知先の取得が成功しなかた場合
(ステップS11803でNO)は、通知できなかった
ので、「失敗」として処理を終了する。一方、データベ
ース変化通知先の取得が成功した場合(ステップS11
803でYES)は、ステップS11804に進む。
[0299] In step S11802, a DB listener acquisition process is executed to acquire the previously registered database change notification destination. Then, in step S11803, it is determined whether acquisition of the database change notification destination has succeeded. If acquisition of the database change notification destination has not succeeded (NO in step S11803), the notification could not be made, and the processing ends as “failure”. On the other hand, if acquisition of the database change notification destination has succeeded (step S11)
If YES in step 803, the process advances to step S11804.

【0300】ステップS11804で、データベース変
化通知先が提供するDBリスナー追加通知情報通知処理
を実行し、通知情報を対応するデータベースに通知し、
「成功」として処理を終了する。
In step S11804, the DB listener addition notification information notification processing provided by the database change notification destination is executed, and the notification information is notified to the corresponding database.
The process ends as “success”.

【0301】次に、ステップS11603のトランザク
ション削除通知情報通知処理の詳細について、図76を
用いて説明する。図76は実施形態3のステップS11
603のトランザクション削除通知情報通知処理の詳細
を示すフローチャートである。
Details of the transaction deletion notification information notification processing in step S11603 will be described below using FIG. FIG. 76 shows step S11 of the third embodiment.
6 is a flowchart showing details of a transaction deletion notification information notification process 603.

【0302】トランザクション削除通知情報通知処理が
起動されると、ステップS11901で、通知情報の対
象データベースがトランザクション自身の対象データベ
ースと一致しているか否かを判定する。通知情報の対象
データベースがトランザクション自身の対象データベー
スと一致していない場合(ステップS11901でN
O)、通知する必要は無いので、「成功」として処理を
終了する。一方、通知情報の対象データベースがトラン
ザクション自身の対象データベースと一致している場合
(ステップS11901でYES)、ステップS119
02に進む。
When the transaction deletion notification information notification processing is activated, it is determined in step S11901 whether the target database of the notification information matches the target database of the transaction itself. If the target database of the notification information does not match the target database of the transaction itself (N in step S11901)
O), there is no need to notify, so the processing ends as “success”. On the other hand, if the target database of the notification information matches the target database of the transaction itself (YES in step S11901), step S119
Go to 02.

【0303】ステップS11902で、DBリスナー取
得処理を実行し、以前に登録されたデータベース変化通
知先を取得する。ステップS11903で、データベー
ス変化通知先の取得が成功したか否かを判定する。デー
タベース変化通知先の取得が成功しなかった場合(ステ
ップS11903でNO)、通知できなかったので、
「失敗」として処理を終了する。
In step S11902, DB listener acquisition processing is executed to acquire the previously registered database change notification destination. In step S11903, it is determined whether acquisition of the database change notification destination has succeeded. If acquisition of the database change notification destination has not succeeded (NO in step S11903), the notification cannot be made.
The process ends as “failure”.

【0304】一方、データベース変化通知先の取得が成
功した場合(ステップS11903でYES)、ステッ
プS11904に進む。ステップS11904で、デー
タベース変化通知先が提供するDBリスナー削除通知情
報通知処理を実行し、通知情報を対応するデータベース
に通知し、「成功」として処理を終了する。
On the other hand, if acquisition of the database change notification destination has succeeded (YES in step S11903), the flow advances to step S11904. In step S11904, the DB listener deletion notification information notification processing provided by the database change notification destination is executed, the notification information is notified to the corresponding database, and the processing ends as "success".

【0305】次に、ステップS11703のトランザク
ション更新通知情報通知処理の詳細について、図77を
用いて説明する。図77は実施形態3のステップS11
703のトランザクション更新通知情報通知処理の詳細
を示すフローチャートである。
Details of the transaction update notification information notification processing in step S11703 will be described below using FIG. FIG. 77 shows step S11 of the third embodiment.
7 is a flowchart showing details of a transaction update notification information notification process of 703.

【0306】トランザクション更新通知情報通知処理が
起動されると、ステップS12001で、通知情報の対
象データベースがトランザクション自身の対象データベ
ースと一致しているか否かを判定する。通知情報の対象
データベースがトランザクション自身の対象データベー
スと一致していない場合(ステップS12001でN
O)、通知する必要は無いので、「成功」として処理を
終了する。一方、通知情報の対象データベースがトラン
ザクション自身の対象データベースと一致している場合
(ステップS12001でYES)、ステップS120
02に進む。
When the transaction update notification information notification processing is activated, it is determined in step S12001 whether the target database of the notification information matches the target database of the transaction itself. When the target database of the notification information does not match the target database of the transaction itself (N in step S12001)
O), there is no need to notify, so the processing ends as “success”. On the other hand, if the target database of the notification information matches the target database of the transaction itself (YES in step S12001), step S120
Go to 02.

【0307】ステップS12002で、DBリスナー取
得処理を実行し、以前に登録されたデータベース変化通
知先を取得する。次に、ステップS12003で、デー
タベース変化通知先の取得が成功した否かを判定する。
データベース変化通知先の取得が成功しなかった場合
(ステップS12003でNO)は、通知できなかった
ので、「失敗」として処理を終了する。一方、データベ
ース変化通知先の取得が成功した場合(ステップS12
003でYES)は、ステップS12004に進む。
[0307] In step S12002, a DB listener acquisition process is executed to acquire the previously registered database change notification destination. Next, in step S12003, it is determined whether acquisition of the database change notification destination has succeeded.
If acquisition of the database change notification destination has not succeeded (NO in step S12003), the notification could not be made, and the processing ends as “failure”. On the other hand, if acquisition of the database change notification destination has succeeded (step S12)
(YES in 003), the process proceeds to step S12004.

【0308】ステップS12004で、データベース変
化通知先が提供するDBリスナー更新通知情報通知処理
を実行し、通知情報を対応するデータベースに通知し、
「成功」として処理を終了する。
In step S12004, the DB listener update notification information notification processing provided by the database change notification destination is executed, and the notification information is notified to the corresponding database,
The process ends as “success”.

【0309】次に、ステップS11804のDBリスナ
ー追加通知情報通知処理の詳細について、図78を用い
て説明する。図78は実施形態3のステップS1180
4のDBリスナー追加通知情報通知処理の詳細を示すフ
ローチャートである。
Details of the DB listener addition notification information notification processing in step S11804 will be described below using FIG. FIG. 78 shows step S1180 of the third embodiment.
It is a flowchart which shows the detail of the DB listener addition notification information notification process of FIG.

【0310】DBリスナー追加通知情報通知処理が起動
されると、ステップS12101で、表示情報更新処理
を実行し、上記通知情報に対応して表示中の情報を更新
し、再描画する。
When the DB listener addition notification information notification processing is activated, display information update processing is executed in step S12101 to update the information being displayed corresponding to the notification information and redraw.

【0311】次に、ステップS11904のDBリスナ
ー削除通知情報通知処理の詳細について、図79を用い
て説明する。図79は実施形態3のステップS1190
4のDBリスナー削除通知情報通知処理の詳細を示すフ
ローチャートである。
Details of the DB listener deletion notification information notification processing in step S11904 will be described below with reference to FIG. FIG. 79 shows step S1190 of the third embodiment.
It is a flowchart which shows the detail of the DB listener deletion notification information notification process of FIG.

【0312】DBリスナー削除通知情報通知処理が起動
されると、ステップS12201で、表示情報更新処理
を実行し、上記通知情報に対応して表示中の情報を更新
し、再描画する。
When the DB listener deletion notification information notification processing is activated, display information update processing is executed in step S12201 to update the information being displayed corresponding to the notification information and redraw.

【0313】次に、ステップS12004のDBリスナ
ー更新通知情報通知処理の詳細について、図80を用い
て説明する。図80は実施形態3のステップS1200
4のDBリスナー更新通知情報通知処理の詳細を示すフ
ローチャートである。
Details of the DB listener update notification information notification processing in step S12004 will be described below with reference to FIG. FIG. 80 shows step S1200 of the third embodiment.
It is a flow chart which shows details of DB listener update notice information notice processing of No. 4.

【0314】DBリスナー更新通知情報通知処理が起動
されると、ステップS12301で、表示情報更新処理
を実行し、上記通知情報に対応して表示中の情報を更新
し、再描画する。
When the DB listener update notification information notification process is activated, the display information update process is executed in step S12301 to update the information being displayed corresponding to the notification information and redraw.

【0315】以上説明したように、実施形態3によれ
ば、永続的なデータを格納するデータベースに対し、デ
ータベースの変化を通知する通知先を登録し、データベ
ースに対する一連の複数のデータベーストランザクショ
ンを管理しておく。そして、データベーストランザクシ
ョン自身が扱うデータベースに変化があった場合に、該
データベーストランザクションを管理する管理先に通知
し、その管理先によりデータベースの変化を通知された
場合に、データベース自らが管理する複数のデータベー
ストランザクショにその変化内容を通知する。加えて、
登録された対応する通知先にその変化内容を通知する。
As described above, according to the third embodiment, a notification destination for notifying a database change is registered in a database that stores permanent data, and a series of database transactions for the database are managed. Keep it. Then, when there is a change in the database handled by the database transaction itself, the management destination managing the database transaction is notified, and when the management destination is notified of the change in the database, the plurality of databases managed by the database itself Notify the transaction of the change. in addition,
The changed content is notified to the corresponding registered notification destination.

【0316】これにより、データベースの変化を関連す
るアプリケーションプログラムに通知し、各アプリケー
ションプログラムが適切な処理を実行できる。また、他
のアプリケーションプログラムがアクセス中のデータに
はアクセスできなくなるといった制約を設けずに、対象
データベースの変化をアプリケーションが知ることが可
能となり、予期せぬ失敗を避け、再描画するなどの適切
な処理を実行させることができるようになり、適切な処
理を実装できる。
As a result, the relevant application program can be notified of the change in the database, and each application program can execute appropriate processing. In addition, it is possible for the application to know the change of the target database without restricting that the data being accessed by other application programs cannot be accessed. Process can be executed and appropriate process can be implemented.

【0317】<実施形態4>図81は実施形態4の情報
処理装置の機能構成を示す図である。
<Fourth Embodiment> FIG. 81 is a view showing the functional arrangement of an information processing apparatus according to the fourth embodiment.

【0318】図81では、異なるデバイスに存在するデ
ータベースにアクセスする際のサーバ&リモート構成を
示している。また、アプリケーションプログラム130
02と異なるデバイス13005に存在するデータベー
ス13008をアクセスする際の構成について説明す
る。
FIG. 81 shows a server & remote configuration when accessing databases existing in different devices. In addition, the application program 130
A configuration for accessing the database 13008 existing in the device 13005 different from 02 will be described.

【0319】ここで、デバイス13005に存在するデ
ータベース13008をアクセスする実装DBトランザ
クション13007は、デバイス間通信手段を有してい
ないため、直接アプリケーションプログラム13002
にサービスを提供することができない。そこで、デバイ
ス間通信手段を持った実装サーバDBトランザクション
13006により、上記実装DBトランザクション13
007を拡張することで、アプリケーションプログラム
13002にサービスを提供できるようにしている(同
図において、サーバ実装DBトランザクション1300
4は、上記サーバ実装DBトランザクション13006
をデバイス13001で利用している様子を示してい
る)。
Since the mounted DB transaction 13007 that accesses the database 13008 existing in the device 13005 does not have the inter-device communication means, the direct application program 13002 is used.
Unable to provide services to. Therefore, the mounting server DB transaction 13006 having the inter-device communication means is used to execute the mounting DB transaction 13 described above.
By extending 007, it is possible to provide a service to the application program 13002 (in the figure, the server-mounted DB transaction 1300).
4 is the server mounted DB transaction 13006
Is used in the device 13001).

【0320】しかし、そのまま上記サーバ実装DBトラ
ンザクション13004を利用するためには、アプリケ
ーションプログラム13002はローカルデータベース
と異なる実装をする必要があるため、複雑化してしまう
ことになる。そこで、上記実装の違いを吸収するリモー
ト実装DBトランザクション13003により、上記サ
ーバ実装DBトランザクション13004を拡張するこ
とで、アプリケーションプログラム13002がローカ
ルデータベースと同様にアクセスできるようにしてい
る。
However, in order to use the server-implemented DB transaction 13004 as it is, the application program 13002 needs to be implemented differently from the local database, resulting in complication. Therefore, the application program 13002 can be accessed in the same manner as the local database by extending the server mounting DB transaction 13004 with the remote mounting DB transaction 13003 that absorbs the difference in the mounting.

【0321】次に、実施形態4の階層DBトランザクシ
ョン構造について、図82を用いて説明する。
Next, the hierarchical DB transaction structure of the fourth embodiment will be described with reference to FIG.

【0322】図82は実施形態4の階層DBトランザク
ション構造を示す図である。
FIG. 82 is a diagram showing the hierarchical DB transaction structure of the fourth embodiment.

【0323】実施形態4のDBマネージャー13102
は、アプリケーションプログラムA13101からの要
求に対応したデータベース13105との間の一連のト
ランザクション(取引)を扱うDBトランザクション1
3103を生成・廃棄する。ここで、DBトランザクシ
ョン13103は、アプリケーションプログラムA13
101とやり取りを行うアプリケーションインタフェー
ス層と、個々のデータベースの実装に依存したデータベ
ースインタフェース層である実装DBトランザクション
A13104で構成される。
DB manager 13102 of the fourth embodiment
Is a DB transaction 1 that handles a series of transactions with the database 13105 corresponding to the request from the application program A 13101.
3103 is generated and discarded. Here, the DB transaction 13103 is the application program A13.
101 and an implementation DB transaction A13104 which is a database interface layer depending on the implementation of each database.

【0324】一方、上記とは異なるデバイスで実行され
るアプリケーションプログラムX13110からの要求
に対応し、DBマネージャー13111はDBトランザ
クション13112を生成する。ここで、DBトランザ
クション13112は、データベース13108との間
の一連のトランザクションを扱う実装DBトランザクシ
ョンX13107に、デバイス間通信手段を拡張したサ
ーバ実装DBトランザクションX13106とのやり取
りを隠蔽したリモート実装DBトランザクションX13
113を持っている。
On the other hand, in response to a request from the application program X13110 executed on a device different from the above, the DB manager 13111 creates a DB transaction 13112. Here, the DB transaction 13112 is a remote implementation DB transaction X13 in which the communication with the server implementation DB transaction X13106, which is an extension of the inter-device communication means, is hidden in the implementation DB transaction X13107 that handles a series of transactions with the database 13108.
I have 113.

【0325】以上、生成された実装DBトランザクショ
ン群は、実装DBトランザクション管理リスト1310
9に格納・管理されている。但し、サーバ実装DBトラ
ンザクションX13106及びリモート実装DBトラン
ザクションX13113は、デバイス間の通信手段を拡
張しているだけなので、上記実装DBトランザクション
管理リスト13109には格納・管理されない。
As described above, the created DB transaction group is the installed DB transaction management list 1310.
9 is stored and managed. However, the server-mounted DB transaction X13106 and the remote-mounted DB transaction X13113 are not stored and managed in the mounted DB transaction management list 13109 because they only extend the communication means between devices.

【0326】次に、実施形態4のデータベースの変化な
どに伴うサーバ&リモート構成における通知情報の流れ
について、図83を用いて説明する。図83は実施形態
4のデータベースの変化などに伴うサーバ&リモート構
成における通知情報の流れを示す図である。
Next, the flow of the notification information in the server & remote configuration according to the change in the database of the fourth embodiment will be described with reference to FIG. FIG. 83 is a diagram showing a flow of notification information in the server & remote configuration according to a change in the database of the fourth embodiment.

【0327】図83において、アプリケーションプログ
ラム13202と同一デバイス13201上に存在する
DBマネージャー13203を用いて、DBトランザク
ションA13204が生成される。
In FIG. 83, a DB transaction A13204 is generated using the DB manager 13203 existing on the same device 13201 as the application program 13202.

【0328】一方、アプリケーションプログラム132
11と同一デバイス13207上に存在するDBマネー
ジャー13210を用いて、リモートDBトランザクシ
ョンX13208及び通知サーバ13209が生成され
る。そして、デバイス間コミュニケーションを行うため
のサーバDBトランザクションX13205及び通知リ
モート13206が異なるデバイス13201上に存在
するDBマネージャー13203を用いて生成される。
On the other hand, the application program 132
The remote DB transaction X13208 and the notification server 13209 are generated by using the DB manager 13210 existing on the same device 13207 as 11th. Then, a server DB transaction X13205 and a notification remote 13206 for performing inter-device communication are generated using the DB manager 13203 existing on a different device 13201.

【0329】ここで、DBトランザクションA1320
4で行われた処理により発生した変化に伴い、通知情報
がDBマネージャー13203に通知される。DBマネ
ージャー13203は、伝えられた通知情報を管理下の
DBトランザクションA13204及びサーバDBトラ
ンザクションX13205に通知する。上記通知を受け
取ったDBトランザクションA13204はアプリケー
ションプログラム13202に通知する。
Here, the DB transaction A1320
The notification information is notified to the DB manager 13203 according to the change generated by the processing performed in 4. The DB manager 13203 notifies the notified notification information to the managed DB transaction A 13204 and server DB transaction X 13205. The DB transaction A 13204 that has received the above notification notifies the application program 13202.

【0330】一方、サーバDBトランザクションX13
205は、通知リモート13206を介してデバイス間
通信を行い、異なるデバイス13207の通知サーバ1
3209を介して、アプリケーションプログラム132
11に通知する。
On the other hand, the server DB transaction X13
205 performs inter-device communication via the notification remote 13206, and notifies the notification server 1 of the different device 13207.
3209 to the application program 132
Notify 11

【0331】上記流れにより、異なるデバイスに存在す
るアプリケーションプログラムに対しても通知情報を通
知することが可能となり、上記通知情報を受け取ったア
プリケーションプログラムは、それぞれの判断により、
データベース情報の再表示などの適切な処理を実行す
る。
By the above flow, it becomes possible to notify the notification information even to the application programs existing in different devices, and the application program which has received the above notification information makes a judgment according to each judgment.
Perform appropriate processing such as redisplaying database information.

【0332】次に、実施形態4の階層DBトランザクシ
ョンの内部データについて、図84を用いて説明する。
図84は実施形態4の階層DBトランザクションの内部
データを示す図である。
Next, the internal data of the hierarchical DB transaction of the fourth embodiment will be described with reference to FIG.
FIG. 84 is a diagram showing internal data of the hierarchical DB transaction of the fourth embodiment.

【0333】階層DBトランザクションは13302に
示すように、実際に組み込まれている実装DBトランザ
クションの情報13303と、トランザクション生成後
に処理対象となったアプリケーションオブジェクトとD
Bオブジェクトの関連を記憶するオブジェクト対応テー
ブル13304の内部データを持つ。
As shown in 13302, the hierarchical DB transaction is information 13303 of the actually installed DB transaction, the application object that is the processing target after the transaction is generated, and D.
It has internal data of an object correspondence table 13304 that stores the relationship of B objects.

【0334】ここで、図84において、実装DBトラン
ザクション13303は、アプリケーションプログラム
13306が実行中のデバイス13301と、異なるデ
バイス13307に存在するデータベース13311を
アクセスするためのリモート実装DBトランザクション
になっている。具体的には、リモート実装DBトランザ
クションの内部データに、異なるデバイス13307の
サーバ実装DBトランザクション13308を持ってい
る。
Here, in FIG. 84, the mounting DB transaction 13303 is a remote mounting DB transaction for accessing the device 13301 being executed by the application program 13306 and the database 13311 existing in a different device 13307. Specifically, the internal data of the remote mounting DB transaction has a server mounting DB transaction 13308 of a different device 13307.

【0335】一方、デバイス13307に存在するサー
バ実装DBトランザクション13308内部に、実際に
データベース13311にアクセスするための実装DB
トランザクション13309を持っている。
On the other hand, the implementation DB for actually accessing the database 13311 inside the server implementation DB transaction 13308 existing in the device 13307.
It has a transaction 13309.

【0336】上記実装DBトランザクションの情報13
309には、データベースの変化を通知する先の情報を
持つDBリスナーと、トランザクションが実行中かどう
かを示す実行ステータスと、トランザクションの対象と
なっているデータベースの情報13311と、トランザ
クション実行中に行われた未確定の処理リスト1331
2と、データベースの変化状況を保持する更新ステータ
スを持つ。
Information 13 of the above mounted DB transaction
309, a DB listener that has information to notify the change of the database, an execution status that indicates whether the transaction is being executed, information 13311 of the database that is the target of the transaction, and information that is executed while the transaction is being executed. Undetermined processing list 1331
2 and the update status that holds the change status of the database.

【0337】ここで、実際のDBリスナーの実体は、直
接アプリケーションを示さずに、デバイス間通信を実現
するための通知リモート13310を示している。更
に、上記通知リモート13310が、通知サーバ133
05と通信することで、異なるデバイスに存在するアプ
リケーションプログラム13306に通知することが可
能となる。
Here, the actual entity of the DB listener shows the notification remote 13310 for realizing the inter-device communication without directly showing the application. Furthermore, the notification remote 13310 is used by the notification server 133.
By communicating with 05, it is possible to notify the application program 13306 existing in a different device.

【0338】次に、実施形態4におけるステップS60
3のDBトランザクション生成処理の詳細について、図
85を用いて説明する。図85は実施形態4のステップ
S603のDBトランザクション生成処理の詳細を示す
フローチャートである。
Next, step S60 in the fourth embodiment.
Details of the DB transaction generation processing of No. 3 will be described with reference to FIG. FIG. 85 is a flowchart showing details of the DB transaction generation processing in step S603 of the fourth embodiment.

【0339】DBトランザクション生成処理が起動され
ると、ステップS13401で、初期化処理を実行し、
図84で説明した階層DBトランザクションの内部デー
タを初期化する。続く、ステップS13402で、図8
4で説明したトランザクション生成画面で指定されたサ
ーバ名が有効であるか否かを判定する。サーバ名が有効
である場合(ステップS13402でYES)、ステッ
プS13410に進む。
When the DB transaction generation processing is activated, initialization processing is executed in step S13401.
The internal data of the hierarchical DB transaction described in FIG. 84 is initialized. Subsequently, in step S13402, FIG.
It is determined whether the server name specified on the transaction generation screen described in 4 is valid. If the server name is valid (YES in step S13402), the process advances to step S13410.

【0340】ステップS13410では、リモート実装
DBトランザクション生成処理を実行し、サーバ名で指
定されたサーバに接続するためのDBトランザクション
を生成する。リモート実装DBトランザクション生成処
理の結果、続く、ステップS13411で、DBトラン
ザクションの生成が成功したか否かを判定する。DBト
ランザクションの生成が成功した場合(ステップS13
411でYES)、「成功」として処理を終了する。一
方、DBトランザクションの生成が成功しなかった場合
(ステップS13411でNO)、「失敗」として処理
を終了する。
In step S13410, a remote mounting DB transaction generation process is executed to generate a DB transaction for connecting to the server designated by the server name. As a result of the remote mounting DB transaction generation processing, it is determined in subsequent step S13411 whether or not the generation of the DB transaction has succeeded. When the DB transaction is successfully generated (step S13)
(YES in 411), the process ends as “success”. On the other hand, if the DB transaction generation has not succeeded (NO in step S13411), the processing ends as “failure”.

【0341】一方、ステップS13402で、サーバ名
が有効でない場合(ステップS13402でNO)、ス
テップS13403に進む。ステップS13403で
は、対応データベースマネージャー生成処理を実行し、
図84で説明したトランザクション生成画面で指定され
たデータベースマネージャーを生成する。続く、ステッ
プS13404で、上記で生成されたデータベースマネ
ージャーが提供する実装DBトランザクション初期化処
理を実行し、図84で説明した実装DBトランザクショ
ンの内部データを初期化する。
On the other hand, if the server name is not valid in step S 13402 (NO in step S 13402), the flow advances to step S 13403. In step S13403, a corresponding database manager generation process is executed,
The database manager specified on the transaction generation screen described in FIG. 84 is generated. Subsequently, in step S13404, the implementation DB transaction initialization processing provided by the database manager generated above is executed to initialize the internal data of the implementation DB transaction described in FIG.

【0342】続く、ステップS13405で、上記で生
成されたデータベースマネージャーが提供するDB接続
処理を実行し、指定された条件でデータベースに接続す
る。DB接続処理の結果、次に、ステップS13406
で、データベースの接続が成功したか否かを判定する。
接続が成功しなかった場合(ステップS13406でN
O)、「失敗」として処理を終了する。一方、接続が成
功した場合(ステップS13406でYES)、ステッ
プS13407に進む。
[0342] In subsequent step S13405, the DB connection processing provided by the database manager generated above is executed to connect to the database under the specified conditions. As a result of the DB connection processing, next, step S13406
Then, it is determined whether or not the database connection is successful.
If the connection is not successful (N in step S13406)
O), the processing ends as “failure”. On the other hand, if the connection is successful (YES in step S13406), the flow advances to step S13407.

【0343】ステップS13407では、接続に関連し
た情報を実装DBトランザクションの内部データに格納
する。次に、ステップS13408で、与えられたデー
タベース変化通知先をDBリスナーに格納する。次に、
ステップS13409で、上記生成された実装DBトラ
ンザクションを実装DBトランザクション管理リストに
追加し、「成功」として処理を終了する。
In step S13407, information related to the connection is stored in the internal data of the mounting DB transaction. Next, in step S13408, the given database change notification destination is stored in the DB listener. next,
In step S13409, the generated mounted DB transaction is added to the mounted DB transaction management list, and the processing ends as “success”.

【0344】次に、ステップS13410のリモート実
装DBトランザクション生成処理の詳細について、図8
6を用いて説明する。図86は実施形態4のステップS
13410のリモート実装DBトランザクション生成処
理の詳細を示すフローチャートである。
Details of the remote mounting DB transaction generation processing in step S13410 will be described below with reference to FIG.
This will be described using 6. FIG. 86 shows step S of the fourth embodiment.
13 is a flowchart showing details of a remote mounting DB transaction generation processing of 13410.

【0345】リモート実装DBトランザクション生成処
理が起動されると、ステップS13501で、サービス
名生成処理を実行し、与えられたサーバ名を元にしてサ
ーバDBマネージャーのサービス名を生成する。
When the remote mounting DB transaction generation process is activated, a service name generation process is executed in step S13501 to generate the service name of the server DB manager based on the given server name.

【0346】次に、ステップS13502で、サービス
取得処理を実行し、上記生成されたサービス名に対応す
るサービスを取得する。続く、ステップS13503
で、サービスの取得が成功したか否かを判定する。サー
ビスの取得が成功しなかった場合(ステップS1350
3でNO)、「失敗」として処理を終了する。一方、サ
ービスの取得が成功した場合(ステップS13503で
YES)、ステップS13504に進む。
Next, in step S13502, a service acquisition process is executed to acquire the service corresponding to the generated service name. Succeeding, Step S13503
Then, it is determined whether or not the service is successfully acquired. If the acquisition of the service is not successful (step S1350)
If NO, the process ends as “failure”. On the other hand, if the service has been successfully acquired (YES in step S13503), the flow advances to step S13504.

【0347】ステップS13504では、通知サーバ生
成処理を実行し、与えられたDBリスナーからデバイス
間通信手段を拡張した通知サーバを生成する。次に、ス
テップS13505で、サーバ実装DBトランザクショ
ン生成処理を実行し、上記生成された通知サーバを与え
てサーバDBトランザクションを生成する。続く、ステ
ップS13506で、リモート実装DBトランザクショ
ンの内部データに上記サーバ実装DBトランザクション
を格納し、「成功」として処理を終了する。
In step S13504, a notification server generation process is executed to generate a notification server in which the inter-device communication means is expanded from the given DB listener. Next, in step S13505, a server-installed DB transaction generation process is executed, and the generated notification server is given to generate a server DB transaction. In next step S13506, the server mounting DB transaction is stored in the internal data of the remote mounting DB transaction, and the processing ends as “success”.

【0348】次に、ステップS13505のサーバ実装
DBトランザクション生成処理の詳細について、図87
を用いて説明する。図87は実施形態4のステップS1
3505のサーバ実装DBトランザクション生成処理の
詳細を示すフローチャートである。
Details of the server-implemented DB transaction generation processing in step S13505 will be described below with reference to FIG.
Will be explained. FIG. 87 shows step S1 of the fourth embodiment.
It is a flow chart which shows details of server mounting DB transaction generation processing of 3505.

【0349】サーバ実装DBトランザクション生成処理
が起動されると、ステップS13601で、通知リモー
ト生成処理を実行し、与えられた通知サーバからローカ
ルのDBリスナーと同じインターフェースで隠蔽させた
通知リモートを生成する。
When the server-installed DB transaction generation process is activated, a notification remote generation process is executed in step S13601 to generate a notification remote concealed from the given notification server with the same interface as the local DB listener.

【0350】次に、ステップS13602で、DBトラ
ンザクション生成処理を実行し、サーバ名を指定せずに
DBトランザクションを生成する。このDBトランザク
ション生成処理は、前述のDBトランザクション生成処
理と同じであり、サーバ名が指定されていないので、ロ
ーカルのDBトランザクションが生成される。
Next, in step S13602, a DB transaction generation process is executed to generate a DB transaction without specifying the server name. This DB transaction generation processing is the same as the above-mentioned DB transaction generation processing, and since the server name is not specified, a local DB transaction is generated.

【0351】DBトランザクション生成処理の結果、ス
テップS13603で、DBトランザクションの生成が
成功したか否かを判定する。トランザクションの生成が
成功しなかった場合(ステップS13603でNO)
は、「失敗」として処理を終了する。一方、トランザク
ションの生成が成功した場合(ステップS13603で
YES)は、ステップS13604に進み、サーバ実装
DBトランザクションの内部データに上記DBトランザ
クションを格納し、「成功」として処理を終了する。
As a result of the DB transaction generation processing, in step S13603, it is determined whether the DB transaction has been successfully generated. When the transaction is not successfully generated (NO in step S13603)
Ends the processing as "failure". On the other hand, if the transaction has been successfully generated (YES in step S13603), the flow advances to step S13604 to store the DB transaction in the internal data of the server-mounted DB transaction, and the processing ends as “success”.

【0352】次に、実施形態3のステップS11804
のDBリスナー追加通知情報通知処理の別形態である通
知リモート追加通知情報通知処理の詳細について、図8
8を用いて説明する。図88は実施形態4の通知リモー
ト追加通知情報通知処理の詳細を示すフローチャートで
ある。実施形態3のDBリスナー追加通知情報通知処理
では、ローカルデバイス上に存在する通知先に通知情報
を通知していたが、ここでは異なるデバイスに存在する
通知先に通知情報を通知する方法について具体的に説明
する。
Next, step S11804 of the third embodiment.
FIG. 8 shows details of the notification remote addition notification information notification processing which is another form of the DB listener addition notification information notification processing of FIG.
This will be described using 8. 88 is a flowchart showing details of the notification remote addition notification information notification processing according to the fourth embodiment. In the DB listener addition notification information notification processing of the third embodiment, the notification information is notified to the notification destination existing on the local device, but here, a specific method of notifying the notification information to the notification destination existing on a different device will be described. Explained.

【0353】通知リモート追加通知情報通知処理が起動
されると、ステップS13701で、通知サーバ取得処
理を実行し、通知リモートの内部データに持つ情報から
通知サーバを取得する。通知サーバ取得処理の結果、続
く、ステップS13702で、通知サーバの取得が成功
したか否かを判定する。通知サーバの取得が成功しなか
った場合(ステップS13702でNO)、「失敗」と
して処理を終了する。一方、通知サーバの取得が成功し
た場合(ステップS13702でYES)、ステップS
13703に進む。
When the notification remote addition notification information notification process is activated, a notification server acquisition process is executed in step S13701 to acquire the notification server from the information contained in the internal data of the notification remote. As a result of the notification server acquisition processing, it is determined in next step S13702 whether or not the acquisition of the notification server has succeeded. If acquisition of the notification server has not succeeded (NO in step S13702), the processing ends as “failure”. On the other hand, if acquisition of the notification server has succeeded (YES in step S13702), step S
Proceed to 13703.

【0354】ステップS13703では、上記取得され
た通知サーバが提供する通知サーバ追加通知情報通知処
理を実行し、通知情報を対応するデータベースに通知
し、「成功」として処理を終了する。
In step S13703, the notification server addition notification information notification processing provided by the acquired notification server is executed, the notification information is notified to the corresponding database, and the processing ends as "success".

【0355】次に、実施形態3のステップS11904
のDBリスナー削除通知情報通知処理の別形態である通
知リモート削除通知情報通知処理の詳細について、図8
9を用いて説明する。図89は実施形態4の通知リモー
ト削除通知情報通知処理の詳細を示すフローチャートで
ある。実施形態3のDBリスナー削除通知情報通知処理
では、ローカルデバイス上に存在する通知先に通知して
いたが、ここでは異なるデバイスに存在する通知先に通
知する方法について具体的に説明する。
Next, step S11904 of the third embodiment.
FIG. 8 shows details of the notification remote deletion notification information notification processing which is another mode of the DB listener deletion notification information notification processing of FIG.
This will be described using 9. FIG. 89 is a flowchart showing details of the notification remote deletion notification information notification processing according to the fourth embodiment. In the DB listener deletion notification information notification processing of the third embodiment, the notification destination existing on the local device is notified, but a method of notifying the notification destination existing on a different device will be specifically described here.

【0356】通知リモート削除通知情報通知処理が起動
されると、ステップS13801で、通知サーバ取得処
理を実行し、通知リモートの内部データに持つ情報から
通知サーバを取得する。通知サーバ取得処理の結果、続
く、ステップS13802で、通知サーバの取得が成功
したか否かを判定する。通知サーバの取得が成功しなか
った場合(ステップS13802でNO)、「失敗」と
して処理を終了する。一方、通知サーバの取得が成功し
た場合(ステップS13802でYES)、ステップS
13803に進む。
When the notification remote deletion notification information notification process is activated, a notification server acquisition process is executed in step S13801 to acquire the notification server from the information contained in the internal data of the notification remote. As a result of the notification server acquisition processing, it is determined in step S13802 that the acquisition of the notification server has succeeded. If acquisition of the notification server has not succeeded (NO in step S13802), the processing ends as “failure”. On the other hand, if acquisition of the notification server has succeeded (YES in step S13802), step S
Proceed to 13803.

【0357】ステップS13803で、上記取得された
通知サーバが提供する通知サーバ削除通知情報通知処理
を実行し、通知情報を対応するデータベースに通知し、
「成功」として処理を終了する。
In step S13803, the notification server deletion notification information notification processing provided by the acquired notification server is executed, and the notification information is notified to the corresponding database.
The process ends as “success”.

【0358】次に、実施形態3のステップS12004
のDBリスナー更新通知情報通知処理の別形態である通
知リモート更新通知情報通知処理の詳細について、図9
0を用いて説明する。図90は実施形態4の通知リモー
ト更新通知情報通知処理の詳細を示すフローチャートで
ある。実施形態3のDBリスナー更新通知情報通知処理
では、ローカルデバイス上に存在する通知先に通知して
いたが、ここでは異なるデバイスに存在する通知先に通
知する方法について具体的に説明する。
Next, step S12004 of the third embodiment.
FIG. 9 shows details of the notification remote update notification information notification process which is another form of the DB listener update notification information notification process of FIG.
It will be described using 0. FIG. 90 is a flowchart showing details of the notification remote update notification information notification processing according to the fourth embodiment. In the DB listener update notification information notification process of the third embodiment, the notification destinations existing on the local device are notified, but here, a method of notifying the notification destinations existing on different devices will be specifically described.

【0359】通知リモート更新通知情報通知処理が起動
されると、ステップS13901で、通知サーバ取得処
理を実行し、通知リモートの内部データに持つ情報から
通知サーバを取得する。通知サーバ取得処理の結果、続
く、ステップS13902で、通知サーバの取得が成功
したか否かを判定する。通知サーバの取得が成功しなか
った場合(ステップS13902でNO)、「失敗」と
して処理を終了する。一方、通知サーバの取得が成功し
た場合(ステップS13902でYES)、ステップS
13903に進む。
When the notification remote update notification information notification process is activated, a notification server acquisition process is executed in step S13901 to acquire the notification server from the information contained in the internal data of the notification remote. As a result of the notification server acquisition processing, it is determined in subsequent step S13902 whether or not the acquisition of the notification server has succeeded. If acquisition of the notification server has not succeeded (NO in step S13902), the processing ends as “failure”. On the other hand, if acquisition of the notification server has succeeded (YES in step S13902), step S
Proceed to 13903.

【0360】ステップS13903で、上記取得された
通知サーバが提供する通知サーバ更新通知情報通知処理
を実行し、通知情報を対応するデータベースに通知し、
「成功」として処理を終了する。
[0360] In step S13903, the notification server update notification information notification processing provided by the acquired notification server is executed, and the notification information is notified to the corresponding database.
The process ends as “success”.

【0361】次に、ステップS13703の通知サーバ
追加通知情報通知処理の詳細について、図91を用いて
説明する。図91は実施形態4のステップS13703
の通知サーバ追加通知情報通知処理の詳細を示すフロー
チャートである。
Details of the notification server addition notification information notification processing in step S13703 will be described below using FIG. FIG. 91 shows step S13703 of the fourth embodiment.
5 is a flowchart showing details of the notification server addition notification information notification process of FIG.

【0362】通知サーバ追加通知情報通知処理が起動さ
れると、ステップS14001で、DBリスナー取得処
理を実行し、以前に登録されたデータベース変化通知先
を取得する。次に、ステップS14002で、データベ
ース変化通知先の取得が成功したか否かを判定する。デ
ータベース変化通知先の取得が成功しなかった場合(ス
テップS14002でNO)、「失敗」として処理を終
了する。一方、データベース変化通知先の取得が成功し
た場合(ステップS14002でYES)、ステップS
14003に進む。
When the notification server addition notification information notification process is activated, a DB listener acquisition process is executed in step S14001 to acquire the previously registered database change notification destination. Next, in step S14002, it is determined whether acquisition of the database change notification destination has succeeded. If acquisition of the database change notification destination has not succeeded (NO in step S14002), the processing ends as “failure”. On the other hand, if acquisition of the database change notification destination has succeeded (YES in step S14002), step S
Proceed to 14003.

【0363】ステップS14003で、データベース変
化通知先が提供するDBリスナー追加通知情報通知処理
を実行し、通知情報を対応するデータベースに通知し、
「成功」として処理を終了する。
In step S14003, the DB listener addition notification information notification processing provided by the database change notification destination is executed, and the notification information is notified to the corresponding database,
The process ends as “success”.

【0364】次に、ステップS13803の通知サーバ
削除通知情報通知処理の詳細について、図92を用いて
説明する。図92は実施形態4のステップS13803
の通知サーバ削除通知情報通知処理の詳細を示すフロー
チャートである。
Details of the notification server deletion notification information notification processing in step S13803 will be described below with reference to FIG. FIG. 92 shows step S13803 of the fourth embodiment.
5 is a flowchart showing details of notification server deletion notification information notification processing of FIG.

【0365】通知サーバ削除通知情報通知処理が起動さ
れると、ステップS14101で、DBリスナー取得処
理を実行し、以前に登録されたデータベース変化通知先
を取得する。次に、ステップS14102で、データベ
ース変化通知先の取得が成功したか否かを判定する。デ
ータベース変化通知先の取得が成功しなかった場合(ス
テップS14102でNO)、「失敗」として処理を終
了する。一方、データベース変化通知先の取得が成功し
た場合(ステップS14102でYES)、ステップS
14103に進む。
When the notification server deletion notification information notification process is activated, the DB listener acquisition process is executed in step S14101 to acquire the previously registered database change notification destination. Next, in step S14102, it is determined whether acquisition of the database change notification destination has succeeded. If acquisition of the database change notification destination has not succeeded (NO in step S14102), the processing ends as “failure”. On the other hand, if acquisition of the database change notification destination has succeeded (YES in step S14102), step S
Proceed to 14103.

【0366】ステップS14103で、データベース変
化通知先が提供するDBリスナー削除通知情報通知処理
を実行し、通知情報を対応するデータベースに通知し、
「成功」として処理を終了する。
In step S14103, the DB listener deletion notification information notification processing provided by the database change notification destination is executed, and the notification information is notified to the corresponding database,
The process ends as “success”.

【0367】次に、ステップS13903の通知サーバ
更新通知情報通知処理の詳細について、図93を用いて
説明する。図93は実施形態4のステップS13903
の通知サーバ更新通知情報通知処理の詳細を示すフロー
チャートである。
Details of the notification server update notification information notification processing in step S13903 will be described below with reference to FIG. FIG. 93 shows step S13903 of the fourth embodiment.
5 is a flowchart showing details of the notification server update notification information notification process of FIG.

【0368】通知サーバ更新通知情報通知処理が起動さ
れると、ステップS14201で、DBリスナー取得処
理を実行し、以前に登録されたデータベース変化通知先
を取得する。次に、ステップS14202で、データベ
ース変化通知先の取得が成功した否かを判定する。デー
タベース変化通知先の取得が成功しなかった場合(ステ
ップS14202でNO)、「失敗」として処理を終了
する。一方、データベース変化通知先の取得が成功した
場合(ステップS14202でYES)、ステップS1
4203に進む。
When the notification server update notification information notification process is activated, a DB listener acquisition process is executed in step S14201 to acquire the previously registered database change notification destination. Next, in step S14202, it is determined whether acquisition of the database change notification destination has succeeded. If acquisition of the database change notification destination has not succeeded (NO in step S14202), the processing ends as “failure”. On the other hand, if acquisition of the database change notification destination has succeeded (YES in step S14202), step S1
Proceed to 4203.

【0369】ステップS14203で、データベース変
化通知先が提供するDBリスナー更新通知情報通知処理
を実行し、通知情報を対応するデータベースに通知し、
「成功」として処理を終了する。
In step S14203, the DB listener update notification information notification processing provided by the database change notification destination is executed, and the notification information is notified to the corresponding database.
The process ends as “success”.

【0370】以上説明したように、実施形態4によれ
ば、永続的なデータを格納するデータベースに対し、異
なるデバイスからも操作できるようにデバイス間通信手
段を拡張したデータベースリモート操作と、同一デバイ
スのデータベース操作と同一のインターフェースに隠蔽
するためのデータベースリモート操作隠蔽を行うことに
より、同一デバイスのデータベースと異なるデバイスの
データベースを同様に操作できるようにした。
As described above, according to the fourth embodiment, the database remote operation in which the inter-device communication means is extended so that the database for storing permanent data can be operated by different devices, and the database remote operation can be performed by the same device. By concealing the database remote operation for concealing the same interface as the database operation, the database of the same device and the database of a different device can be operated in the same way.

【0371】これにより、同一のデバイス内において
は、デバイス間通信のためのオーバーヘッドを発生させ
ずに、同一デバイスに存在するデータベースと異なるデ
バイスに存在するデータベースを操作する方法を共通化
することで、アプリケーション開発者にとって、データ
ベース特有の知識及びデバイス間通信を実装するための
知識を不要とする効果がある。
As a result, in the same device, a method of operating a database existing in the same device and a database existing in a different device can be standardized without incurring the overhead for communication between the devices. For application developers, there is an effect that knowledge specific to the database and knowledge for implementing communication between devices are unnecessary.

【0372】また、データベースインタフェース提供者
にとっても、デバイス間通信手段を拡張するための知識
を不要とする効果がある。
Further, the database interface provider also has the effect of not requiring knowledge for expanding the inter-device communication means.

【0373】ここで、図109は、実施形態4を用いた
異なるデバイス上に存在する複数のデータベースを組み
込んだアプリケーションプログラムの一例である。
Here, FIG. 109 is an example of an application program incorporating a plurality of databases existing on different devices using the fourth embodiment.

【0374】アプリケーションプログラム103202
と、同一デバイス103201上に存在するデータベー
スaa103205、及び異なるデバイス103212
に存在するデータベース103211にアクセスするた
め、共通データベースインタフェース103203だけ
を組み込んでいる。
Application program 103202
And a database aa103205 existing on the same device 103201 and a different device 103212.
Only the common database interface 103203 is incorporated to access the database 103211 existing in the.

【0375】この時、共通データベースインタフェース
103203の内部では、デバイス103207のレジ
ストリインタフェース103208を用いて、異なるデ
バイスに存在する対象の共通データベースインタフェー
ス103210から、デバイス間通信手段を拡張したサ
ーバデータベースインタフェース103209を取得
し、共通データベースインタフェース103203で隠
蔽したリモートデータベースインタフェース10320
6が実装されている。
At this time, inside the common database interface 103203, the registry interface 103208 of the device 103207 is used to acquire the server database interface 103209, which is an extension of the inter-device communication means, from the target common database interface 103210 existing in a different device. The remote database interface 10320 hidden by the common database interface 103203.
6 has been implemented.

【0376】そのため、アプリケーション開発者は、レ
ジストリインタフェース103208を用いた検索方
法や、それぞれのデータベースの実装方法やデバイスの
違いを意識しない、共通データベースインタフェース1
03203のみを組み込むだけで済む。逆に、データベ
ースインタフェース提供者は、レジストリインタフェー
ス103208への登録方法及び、デバイス間通信手
段を拡張するための実装方法を熟知しなくても、それら
の機能を拡張することができる。
Therefore, the application developer is not aware of the search method using the registry interface 103208, the mounting method of each database, and the difference in device, and the common database interface 1
You only need to install 03203. On the contrary, the database interface provider can expand those functions without being familiar with the registration method in the registry interface 103208 and the mounting method for expanding the inter-device communication means.

【0377】<実施形態5>図94は実施形態5の情報
処理装置による多層化されたキャッシュの構造を示す図
である。本実施形態では、図94に示されているよう
に、トランザクションとデータベースそれぞれの目的で
キャッシュを持つ、多層キャッシュ構造を用いる。図9
4に示される各トランザクション15003、1500
5、15007は上記実施形態1〜4において生成され
たトランザクションに対応する。ただし、実施形態5で
は、各トランザクション内部データとしてトランザクシ
ョンキャッシュが含まれる(図96、図97を参照)。
<Fifth Embodiment> FIG. 94 is a diagram showing the structure of a multi-layered cache by an information processing apparatus according to the fifth embodiment. In this embodiment, as shown in FIG. 94, a multi-layer cache structure having caches for the purpose of transaction and database is used. Figure 9
Transactions 15003, 1500 shown in 4
5, 15007 corresponds to the transactions generated in the first to fourth embodiments. However, in the fifth embodiment, a transaction cache is included as each transaction internal data (see FIGS. 96 and 97).

【0378】データベース15001は、例えばハード
ディスク上に暗号化・圧縮されて格納されている。その
ため、データベースに格納されたオブジェクトをアクセ
スするためには、復号化・解凍しなければならず、オー
バーヘッドを発生させてしまう。そこで、データベース
キャッシュ15002を用いることで、既に復号化・解
凍されたオブジェクトの情報を保持可能とし、同一オブ
ジェクトに対するオーバーヘッドを避けることができ
る。なお、トランザクションなどの外部処理からは、デ
ータベースキャッシュ15002の存在は隠蔽される
為、システムの複雑化を招くことはない。
The database 15001 is encrypted and compressed and stored on, for example, a hard disk. Therefore, in order to access the object stored in the database, it has to be decrypted / decompressed, which causes overhead. Therefore, by using the database cache 15002, it is possible to hold the information of the object that has already been decrypted and decompressed, and avoid the overhead for the same object. Since the existence of the database cache 15002 is hidden from external processing such as a transaction, the system is not complicated.

【0379】一方、各トランザクションは、Commit(確
定)前の変更内容を保持し、あるいは既にアクセスされ
たオブジェクトの情報を保持して高速化するための、ト
ランザクションキャッシュ15004、15006を持
つ。なお、アイソレーションレベルがRead Uncommitted
の場合、他トランザクションのCommit前の変更による影
響を受ける為、すべてのトランザクションに共通のトラ
ンザクション共通キャッシュ15006を共有する。
On the other hand, each transaction has a transaction cache 15004, 15006 for holding the change contents before Commit (confirmation) or holding the information of the already accessed object to speed up. The isolation level is Read Uncommitted.
In the case of 1, the transaction common cache 15006 common to all transactions is shared because it is affected by the change before committing of other transactions.

【0380】それ以外のアイソレーションレベルの場
合、それぞれのトランザクションごとに独立したトラン
ザクション個別キャッシュ15004を持ち、Commit時
にデータベースにその変更内容を反映させるだけではな
く、前述のトランザクション共通キャッシュ15006
にも反映させる。これにより、すべてのトランザクショ
ンによる変更内容が、トランザクション共通キャッシュ
にも反映されることが可能となる。
In the case of other isolation levels, each transaction has an independent transaction individual cache 15004, and not only the changed contents are reflected in the database at the time of Commit, but also the above-mentioned transaction common cache 15006.
Also reflect. This allows the changes made by all the transactions to be reflected in the transaction common cache.

【0381】図95は、データベースキャッシュの構造
を示した図である。データベース15101は、データ
ベースの実体15102とデータベースキャッシュ15
103から構成されている。
FIG. 95 is a diagram showing the structure of the database cache. The database 15101 includes a database entity 15102 and a database cache 15.
It is composed of 103.

【0382】上述したように、データベースに格納され
ているデータは例えばハードディスク上に暗号化・圧縮
されて格納されており、アクセス時に復号化・解凍しな
ければならない。一方、データベースキャッシュ151
03には、既に復号化・解凍されたオブジェクトの情報
15104を保持することで、同一オブジェクトに対す
るオーバーヘッドを避けることを目的としている。
As described above, the data stored in the database is encrypted / compressed and stored on the hard disk, for example, and must be decrypted / decompressed when accessed. On the other hand, the database cache 151
By holding the information 15104 of the object that has already been decrypted and decompressed in 03, it is intended to avoid the overhead for the same object.

【0383】また、トランザクションによってある条件
でデータベースが検索され、検索結果としてオブジェク
ト群が得られた場合に、データベースキャッシュ151
03がこれをキャッシュする。これにより、同一条件で
の検索処理を繰り返すことが不要となる。
If the database is searched under a certain condition by a transaction and an object group is obtained as a search result, the database cache 151
03 caches this. This eliminates the need to repeat the search process under the same condition.

【0384】図96は、2つの実装DBトランザクショ
ンの内部情報と、共通トランザクションキャッシュの関
連を示した図である。実装DBトランザクションの情報
15201及び15206は、トランザクションが実行
中かどうかを示す実行ステータスと、トランザクション
の対象となっているデータベースの情報15202と、
データベースの変化を通知する先の情報を持つDBリス
ナーと、データベースの変化状況を保持する更新ステー
タスと、トランザクションキャッシュ15204を持
つ。
FIG. 96 is a diagram showing the relationship between the internal information of two mounting DB transactions and the common transaction cache. The implementation DB transaction information 15201 and 15206 includes an execution status indicating whether or not the transaction is in progress, information 15202 of the database which is the target of the transaction,
It has a DB listener that has information to notify the change of the database, an update status that holds the change status of the database, and a transaction cache 15204.

【0385】ここで、異なる実装DBトランザクション
15201及び15206は同一の共通トランザクショ
ンキャッシュ15204を参照することで、データベー
ス操作に伴う更新結果をお互いに反映させ合っている。
Here, the different implementation DB transactions 15201 and 15206 refer to the same common transaction cache 15204 to mutually reflect the update results associated with the database operation.

【0386】図97は、2つの実装DBトランザクショ
ンの内部情報と、それぞれの個別トランザクションキャ
ッシュの関連を示した図である。実装DBトランザクシ
ョンの情報15301及び15306は、トランザクシ
ョンが実行中かどうかを示す実行ステータスと、トラン
ザクションの対象となっているデータベースの情報15
302と、データベースの変化を通知する先の情報を持
つDBリスナーと、データベースの変化状況を保持する
更新ステータスと、トランザクションキャッシュ153
04及び15307を持つ。
FIG. 97 is a diagram showing the internal information of two mounting DB transactions and the relationship between the individual transaction caches. The implementation DB transaction information 15301 and 15306 includes an execution status indicating whether the transaction is being executed and the information 15 of the database that is the target of the transaction.
302, a DB listener that has information to notify the change of the database, an update status that holds the change status of the database, and a transaction cache 153.
04 and 15307.

【0387】ここで、異なる実装DBトランザクション
15301及び15306はそれぞれ異なる個別トラン
ザクションキャッシュ15304及び15307を参照
することで、データベース操作に伴う更新結果をお互い
に影響させないようにしている。
Here, the different implementation DB transactions 15301 and 15306 refer to different individual transaction caches 15304 and 15307, respectively, so that the update results associated with the database operation do not affect each other.

【0388】以上の図96、図97に示されるようなト
ランザクションキャッシュは、図23、図59に示した
トランザクション内部データに含まれることになる。
The above transaction caches shown in FIGS. 96 and 97 are included in the transaction internal data shown in FIGS. 23 and 59.

【0389】なお、実施形態1〜4で説明されているデ
ータベースと実施形態5で説明されているキャッシュと
の関連について説明すれば、次のとおりである。
The relationship between the database described in Embodiments 1 to 4 and the cache described in Embodiment 5 will be described below.

【0390】・データベースキャッシュの生成、更新、
書き戻し(反映)について データベースキャッシュは個々のデータベースに1対1
に対応しており、ファイルアクセスをともなうデータベ
ースの実体へのアクセスを最小限に抑える為のものであ
る。
Creating, updating the database cache,
About write-back (reflection) Database cache is one-to-one for each database
This is to minimize access to the database entity that accompanies file access.

【0391】従って、任意のトランザクションによっ
て、特定のデータベースがはじめてアクセスされた場合
に、対応するデータベースキャッシュは生成され、初期
化される。そして、それ以降、他のトランザクションに
よって同一のデータベースがアクセスされた場合には、
対応する既存のデータベースキャッシュが利用されるこ
とになる。これにより、複数の異なるトランザクション
によるアクセスに関わらず、データベースの実体とデー
タベースキャッシュは一意に対応させることができる。
Therefore, when a particular database is accessed for the first time by an arbitrary transaction, the corresponding database cache is created and initialized. After that, when the same database is accessed by another transaction,
The corresponding existing database cache will be used. As a result, the database entity and the database cache can be uniquely associated with each other regardless of access by a plurality of different transactions.

【0392】一方、任意のトランザクションによってデ
ータが取得された場合、再度データベースの実体へのア
クセスを行うことによるレスポンスの低下を避ける為
に、データベースキャッシュは更新される。もちろん、
消費メモリとの兼ね合いから、あえて更新させないこと
もありえる。更に、図26に示したDBトランザクショ
ン確定処理により、それ以前に行われていたトランザク
ションキャッシュに対して行われた変更内容が反映さ
れ、データベースキャッシュは更新される。この場合に
は、消費メモリに関わらず、必ず更新することが必要で
ある。
On the other hand, when data is acquired by an arbitrary transaction, the database cache is updated in order to avoid a decrease in response due to accessing the substance of the database again. of course,
Due to the balance with the memory consumption, it is possible that you may not dare to update. Further, by the DB transaction confirmation process shown in FIG. 26, the contents of the change made to the transaction cache performed before that are reflected and the database cache is updated. In this case, it is necessary to update regardless of the consumed memory.

【0393】また、データベースキャッシュのデータベ
ースの実体への書き戻し(反映)のタイミングは、アプ
リケーションから明示的に指示する他には、システム自
体の終了時、あるいはデータベースキャッシュの消費量
が一定値を越えた場合に自動的に行われる。これによ
り、限定されたサイズの中で、データベースキャッシュ
を実現することが可能となる。
The timing of writing back (reflecting) the database cache to the database entity is explicitly instructed by the application, or when the system itself ends or the database cache consumption exceeds a certain value. If it happens, it will be done automatically. This makes it possible to realize a database cache within a limited size.

【0394】・トランザクションキャッシュの生成、更
新、書き戻しについて トランザクションキャッシュは、各トランザクションで
行われた変更内容を保持する為のものです。ここで、通
常のトランザクションキャッシュは、個々のトランザク
ション毎に独立であり、他のトランザクションの影響を
受けないが、アイソレーションレベル=Read Uncommitt
ed指定の場合には、任意のトランザクションで行われた
確定(Commit)前の変更内容を参照する必要がある為、
共通のトランザクションキャッシュを使用する。
-Transaction cache generation, update, and write-back The transaction cache is for holding the changes made in each transaction. Here, the normal transaction cache is independent for each individual transaction and is not affected by other transactions, but the isolation level = Read Uncommitt.
When ed is specified, it is necessary to refer to the changes made before committing (Commit) in any transaction.
Use a common transaction cache.

【0395】なお、通常のトランザクションキャッシュ
は、図25のトランザクション開始処理により生成され
るが、アイソレーションレベル=Read Uncommitted指定
の場合に使用される共通のトランザクションキャッシュ
は、初めてアイソレーションレベル=Read Uncommitted
指定でトランザクションが生成された時に生成され、そ
れ以降は既存の共通トランザクションキャッシュが参照
される。
The normal transaction cache is generated by the transaction start process of FIG. 25. However, the common transaction cache used when the isolation level = Read Uncommitted is specified is the first time that the isolation level = Read Uncommitted.
It is created when the transaction is created by the specification, and after that, the existing common transaction cache is referenced.

【0396】また、データが取得された場合、再度デー
タベースへのアクセスを行うことによるレスポンスの低
下を避ける為に、トランザクションキャッシュは更新さ
れる。もちろん、消費メモリとの兼ね合いから、あえて
更新させないこともありえる。更に、図36のDBオブ
ジェクト生成追加処理や、図37のDBオブジェクト削
除処理や、図38のDBオブジェクト値セット処理等の
変更に応じて、トランザクションキャッシュは更新され
る。この場合には、消費メモリに関わらず、必ず更新す
ることが必要である。
Also, when data is acquired, the transaction cache is updated in order to avoid a decrease in response due to access to the database again. Of course, it may not be possible to update it due to the balance with the consumed memory. Furthermore, the transaction cache is updated according to changes in the DB object generation / addition processing of FIG. 36, the DB object deletion processing of FIG. 37, the DB object value set processing of FIG. In this case, it is necessary to update regardless of the consumed memory.

【0397】上記トランザクションキャッシュに行われ
た更新内容は、図26のDBトランザクション確定処理
により、一括してデータベースに反映される。
The updated contents of the transaction cache are collectively reflected in the database by the DB transaction confirmation process of FIG.

【0398】・個別キャッシュの内容の共通キャッシュ
への反映について 共通のトランザクションキャッシュは、アイソレーショ
ンレベル=Read Uncommitted指定の場合に使用される。
よって、アイソレーションレベル=Read Uncommitted指
定のトランザクション間では、更新内容は常に共有され
る。一方、他のアイソレーションレベルで行われた更新
内容も反映させる必要がある為、図36のDBオブジェ
クト生成追加処理や、図37のDBオブジェクト削除処
理や、図38のDBオブジェクト値セット処理等の変更
に応じて、各トランザクション個別のトランザクション
キャッシュと共に、共通のトランザクションキャッシュ
が更新される。
Reflecting the contents of the individual cache in the common cache The common transaction cache is used when the isolation level = Read Uncommitted is specified.
Therefore, the updated content is always shared between transactions with the isolation level = Read Uncommitted. On the other hand, since it is necessary to reflect the contents of the update performed at other isolation levels, the DB object generation / addition processing of FIG. 36, the DB object deletion processing of FIG. 37, the DB object value setting processing of FIG. Upon modification, the common transaction cache is updated along with the transaction cache for each transaction individually.

【0399】図108は、実施形態5によるキャッシュ
の動作を説明するフローチャートである。トランザクシ
ョンよりオブジェクトに対する操作が発生した場合、ス
テップS15001からステップS15002に進み、
当該トランザクションのアイソレーションレベルを判定
する。アイソレーションレベルがUncommittedの場合、
処理はステップS15004へ進み、トランザクション
共通キャッシュ15006に対象となるオブジェクトが
保持されているかどうかを判定する。トランザクション
共通キャッシュ15006に対象となるオブジェクトが
保持されている場合、すなわちキャッシュヒットした場
合は、ステップS15007へ進み、共通キャッシュ上
のオブジェクトについて操作を行なう。
FIG. 108 is a flow chart for explaining the cache operation according to the fifth embodiment. When an operation for an object occurs from a transaction, the process advances from step S15001 to step S15002,
Determine the isolation level of the transaction. If the isolation level is Uncommitted,
The process proceeds to step S15004, and it is determined whether the transaction common cache 15006 holds the target object. If the target object is held in the transaction common cache 15006, that is, if a cache hit occurs, the process advances to step S15007 to operate the object on the common cache.

【0400】一方、ステップS15005においてキャ
ッシュヒットしなかった場合は、ステップS15005
へ進み、データベース15001に対して当該対象のオ
ブジェクトを要求する。データベース15001よりオ
ブジェクトが取得されたならば、ステップS15006
にてそれを共通キャッシュに保持する。そして、ステッ
プS15007へ進み、共通キャッシュ上のオブジェク
トについて操作を行なう。
On the other hand, if there is no cache hit in step S 15005, step S 15005
Proceeding to, the database 15001 is requested for the target object. If the object is acquired from the database 15001, step S15006
Holds it in the common cache. Then, the process advances to step S15007 to operate the object on the common cache.

【0401】また、オブジェクトに対する操作が発生
し、アイソレーションレベルがUncommitted以外の場
合、処理はステップS15008へ進み、トランザクシ
ョン個別キャッシュ15004に対象となるオブジェク
トが保持されているかどうかを判定する。トランザクシ
ョン個別キャッシュ15004に対象となるオブジェク
トが保持されている場合、すなわちキャッシュヒットし
た場合は、ステップS15011へ進み、共通キャッシ
ュ上のオブジェクトについて操作を行なう。その後ステ
ップS15007へ進む。
If an operation is performed on the object and the isolation level is other than Uncommitted, the process advances to step S15008 to determine whether the target object is held in the transaction individual cache 15004. If the target object is held in the transaction individual cache 15004, that is, if a cache hit occurs, the process advances to step S15011 to operate the object on the common cache. After that, the process advances to step S15007.

【0402】一方、ステップS15008においてキャ
ッシュヒットしなかった場合は、ステップS15009
へ進み、データベース15001に対して当該対象のオ
ブジェクトを要求する。データベース15001よりオ
ブジェクトが取得されたならば、ステップS15010
にてそれを個別キャッシュに保持する。そして、ステッ
プS15011へ進み、個別キャッシュ上のオブジェク
トについて操作を行なう。その後ステップS15007
へ進む。
On the other hand, if there is no cache hit in step S 15008, step S 15009
Proceeding to, the database 15001 is requested for the target object. If the object is acquired from the database 15001, step S15010.
Holds it in a separate cache at. Then, the process advances to step S15011 to operate the object on the individual cache. After that, step S15007
Go to.

【0403】オブジェクトに対する操作が発生していな
い場合はステップS15012において、キャッシュに
保持された内容を実際のオブジェクトに反映するための
書き戻しタイミングか否かを判定する。書き戻しタイミ
ングであれば、ステップS15013に進み、キャッシ
ュに保持されている内容をデータベースへ書き戻す。そ
して、トランザクション個別キャッシュ15004に保
持されているオブジェクトと同一のオブジェクトがトラ
ンザクション共通キャッシュ15006に保持されてい
る場合は、そのオブジェクトについて、個別キャッシュ
15004の内容で共通キャッシュ15006を更新す
る。
If no operation has been performed on the object, it is determined in step S15012 whether or not it is the write-back timing for reflecting the contents held in the cache on the actual object. If it is the write-back timing, the process advances to step S15013 to write back the contents held in the cache to the database. When the same object as the object held in the transaction individual cache 15004 is held in the transaction common cache 15006, the common cache 15006 is updated with the contents of the individual cache 15004 for that object.

【0404】以上説明したように、実施形態5によれ
ば、トランザクション毎に個別のトランザクションキャ
ッシュ、あるいは共通のトランザクションキャッシュを
設ける他に、全てのトランザクションのCommit(確定)
結果を反映させたデータベースキャッシュを設けること
で、データベースを参照する際のレスポンスを向上させ
ることができるようにした。
As described above, according to the fifth embodiment, in addition to providing an individual transaction cache for each transaction or a common transaction cache, all transactions are committed (committed).
By providing a database cache that reflects the results, the response when referencing the database can be improved.

【0405】また、データベースキャッシュの存在を内
部に隠蔽することで、複雑化を招かずに上記効果を実現
した。
By hiding the existence of the database cache inside, the above effect is realized without inviting complication.

【0406】ここで、図98は、実施形態5を用いて、
異なるトランザクションから同一のオブジェクトを参照
する際の一例である。
Here, in FIG. 98, the fifth embodiment is used.
This is an example of referring to the same object from different transactions.

【0407】20101で示したトランザクション1か
ら、データベース20103に格納されたオブジェクト
を参照するには、(1)データベース中のObject1の格
納イメージをトランザクションにより参照可能な形態の
Object1に変換してデータベースキャッシュに格納し、
(2)データベースキャッシュに格納されているObject
1をトランザクション1のキャッシュに格納した後、
(3)取得される。一方、20102で示したトランザ
クション2から、データベース20103に格納された
同一のオブジェクトを参照するには、(4)既にデータ
ベースキャッシュに格納されているObject1をトランザ
クション2のキャッシュに格納した後、(5)取得され
る。
In order to refer to the object stored in the database 20103 from the transaction 1 shown in 20101, (1) the stored image of Object1 in the database can be referred to by the transaction.
Convert it to Object1 and store it in the database cache,
(2) Object stored in the database cache
After storing 1 in the transaction 1 cache,
(3) Obtained. On the other hand, in order to refer to the same object stored in the database 20103 from the transaction 2 indicated by 20102, (4) after storing Object 1 already stored in the database cache in the cache of transaction 2, (5) To be acquired.

【0408】このように、データベースキャッシュを設
けることで、データベース中の格納イメージからの変換
を、その都度行わなくてもすむようにできる為、レスポ
ンスの向上が図られた。
As described above, by providing the database cache, the conversion from the stored image in the database does not have to be performed each time, so the response is improved.

【0409】ここで、図99は、実施形態5を用いて、
異なるトランザクションから同一のオブジェクト群を参
照する際の一例である。
[0409] Here, Fig. 99 is obtained by using the fifth embodiment.
This is an example of referring to the same object group from different transactions.

【0410】20201で示したトランザクション1か
ら、データベース20203に格納されたオブジェクト
群を参照するには、(1)検索条件に適合したオブジェ
クト群をデータベースから検索してデータベースキャッ
シュに格納し、(2)前記データベースキャッシュに格
納されているオブジェクト群をトランザクション1のキ
ャッシュに格納した後、(3)取得される。一方、20
202で示したトランザクション2から、データベース
20203に格納された同一のオブジェクト群を参照す
るには、(4)既にデータベースキャッシュに格納され
ているオブジェクト群をトランザクション2のキャッシ
ュに格納した後、(5)取得される。このように、デー
タベースキャッシュを設けることで、データベースの検
索を、その都度行わなくてもすむようにできる為、レス
ポンスの向上が図られた。
In order to refer to the object group stored in the database 20203 from the transaction 1 shown in 20201, (1) the object group matching the search condition is searched from the database and stored in the database cache, and (2) After the object group stored in the database cache is stored in the transaction 1 cache, (3) it is acquired. On the other hand, 20
To refer to the same object group stored in the database 20203 from the transaction 2 indicated by 202, (4) after storing the object group already stored in the database cache in the transaction 2 cache, (5) To be acquired. In this way, by providing the database cache, it is possible to avoid searching the database each time, so that the response is improved.

【0411】尚、本発明は、複数の機器(例えばホスト
コンピュータ、インターフェース機器、リーダ、プリン
タなど)から構成されるシステムに適用しても、一つの
機器からなる装置(例えば、複写機、ファクシミリ装置
など)に適用してもよい。
Even when the present invention is applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), a device including one device (for example, a copying machine or a facsimile device). Etc.)

【0412】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることは言う
までもない。
Further, an object of the present invention is to supply a storage medium having a program code of software for realizing the functions of the above-described embodiments to a system or apparatus, and to supply a computer (or CPU) of the system or apparatus.
It is needless to say that it can be achieved by reading and executing the program code stored in the storage medium.

【0413】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention.

【0414】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク、ハードディス
ク、光ディスク、光磁気ディスク、CD−ROM、CD
−R、磁気テープ、不揮発性のメモリカード、ROMな
どを用いることができる。
A storage medium for supplying the program code is, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD.
-R, magnetic tape, non-volatile memory card, ROM, etc. can be used.

【0415】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
Further, not only the functions of the above-described embodiments are realized by executing the program code read by the computer, but also the OS (operating system) running on the computer based on the instructions of the program code. It is needless to say that this also includes a case where the above) performs a part or all of the actual processing and the processing realizes the functions of the above-described embodiments.

【0416】更に、記憶媒体から読出されたプログラム
コードが、コンピュータに挿入された機能拡張ボードや
コンピュータに接続された機能拡張ユニットに備わるメ
モリに書込まれた後、そのプログラムコードの指示に基
づき、その機能拡張ボードや機能拡張ユニットに備わる
CPUなどが実際の処理の一部または全部を行い、その
処理によって前述した実施形態の機能が実現される場合
も含まれることは言うまでもない。
Further, after the program code read from the storage medium is written in the memory provided in the function expansion board inserted into the computer or the function expansion unit connected to the computer, based on the instruction of the program code, It goes without saying that a case where the CPU or the like included in the function expansion board or the function expansion unit performs some or all of the actual processing and the processing realizes the functions of the above-described embodiments is also included.

【0417】[0417]

【発明の効果】以上説明したように、本発明によれば、
データベースを参照する際のレスポンスを向上させるこ
とができる情報処理装置及びその方法、コンピュータ可
読メモリを提供できる。
As described above, according to the present invention,
It is possible to provide an information processing apparatus and method capable of improving response when referring to a database, and a computer-readable memory.

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

【図1】本実施形態の情報処理装置のハードウェア構成
を示すブロック図である。
FIG. 1 is a block diagram showing a hardware configuration of an information processing apparatus of this embodiment.

【図2】本実施形態の情報処理装置で実行される処理を
示すフローチャートである。
FIG. 2 is a flowchart showing processing executed by the information processing apparatus of this embodiment.

【図3】本実施形態のデータベース処理画面の一例を示
す図である。
FIG. 3 is a diagram showing an example of a database processing screen of this embodiment.

【図4】本実施形態のステップS205のデータベース
処理の詳細を示すフローチャートである。
FIG. 4 is a flowchart showing details of database processing in step S205 of the present embodiment.

【図5】本実施形態のトランザクション生成画面の一例
を示す図である。
FIG. 5 is a diagram showing an example of a transaction generation screen of the present embodiment.

【図6】本実施形態のステップS406のトランザクシ
ョン生成処理の詳細を示すフローチャートである。
FIG. 6 is a flowchart showing details of transaction generation processing in step S406 of the present embodiment.

【図7】本実施形態のトランザクション処理画面の一例
を示す図である。
FIG. 7 is a diagram showing an example of a transaction processing screen of the present embodiment.

【図8】本実施形態のステップS408のトランザクシ
ョン処理の詳細を示すフローチャートである。
FIG. 8 is a flowchart showing details of transaction processing in step S408 of this embodiment.

【図9】本実施形態の追加オブジェクト選択画面の一例
を示す図である。
FIG. 9 is a diagram showing an example of an additional object selection screen of the present embodiment.

【図10】本実施形態のイベント対応処理におけるオブ
ジェクトの追加の指示に対応したオブジェクト選択追加
処理の詳細を示すフローチャートである。
FIG. 10 is a flowchart showing details of object selection / addition processing corresponding to an instruction to add an object in the event handling processing according to the present embodiment.

【図11】本実施形態のオブジェクト新規作成時のオブ
ジェクト編集画面の一例を示す図である。
FIG. 11 is a diagram showing an example of an object edit screen when creating a new object according to the present embodiment.

【図12】本実施形態のステップS1006のオブジェ
クト生成処理の詳細を示すフローチャートである。
FIG. 12 is a flowchart showing details of object generation processing in step S1006 of the present embodiment.

【図13】本実施形態のクラス選択画面の一例を示す図
である。
FIG. 13 is a diagram showing an example of a class selection screen of the present embodiment.

【図14】本実施形態の既存オブジェクト編集時のオブ
ジェクト編集画面の一例を示す図である。
FIG. 14 is a diagram showing an example of an object edit screen when editing an existing object according to the present embodiment.

【図15】本実施形態のオブジェクト選択編集処理の詳
細を示すフローチャートである。
FIG. 15 is a flowchart showing details of object selection / editing processing according to the present embodiment.

【図16】本実施形態の既存オブジェクト参照時のオブ
ジェクト参照画面の一例を示す図である。
FIG. 16 is a diagram showing an example of an object reference screen when referring to an existing object of the present embodiment.

【図17】本実施形態のオブジェクト選択削除処理の詳
細を示すフローチャートである。
FIG. 17 is a flowchart showing details of object selection / deletion processing of the present embodiment.

【図18】本実施形態のステップS1503、ステップ
1703の全オブジェクト取得確定処理の詳細を示すフ
ローチャートである。
FIG. 18 is a flowchart showing details of all object acquisition confirmation processing in steps S1503 and S1703 of the present embodiment.

【図19】本実施形態のステップS1007のオブジェ
クト追加確定処理の詳細を示すフローチャートである。
FIG. 19 is a flowchart showing details of object addition confirmation processing in step S1007 of the present embodiment.

【図20】本実施形態のステップS1509のオブジェ
クト更新確定処理の詳細を示すフローチャートである。
FIG. 20 is a flowchart showing details of object update confirmation processing in step S1509 of this embodiment.

【図21】本実施形態のステップS1709のオブジェ
クト削除確定処理の詳細を示すフローチャートである。
FIG. 21 is a flowchart showing details of object deletion confirmation processing in step S1709 of this embodiment.

【図22】本実施形態の情報処理装置の機能構成を示す
図である。
FIG. 22 is a diagram showing a functional configuration of the information processing apparatus of this embodiment.

【図23】本実施形態のDBトランザクションの内部デ
ータを示す図である。
FIG. 23 is a diagram showing internal data of a DB transaction of this embodiment.

【図24】本実施形態のステップS603のDBトラン
ザクション生成処理の詳細を示すフローチャートであ
る。
FIG. 24 is a flowchart showing details of the DB transaction generation processing in step S603 of this embodiment.

【図25】本実施形態のステップS1801、ステップ
S1901、ステップS2001、ステップS2101
のDBトランザクション開始処理の詳細を示すフローチ
ャートである。
FIG. 25 shows steps S1801, S1901, S2001, and S2101 of this embodiment.
5 is a flowchart showing details of the DB transaction start processing of FIG.

【図26】本実施形態のステップS1804、ステップ
S1904、ステップS2004、ステップS2104
のDBトランザクション確定処理の詳細を示すフローチ
ャートである。
FIG. 26 shows steps S1804, S1904, S2004, and step S2104 of this embodiment.
9 is a flowchart showing details of the DB transaction confirmation process of FIG.

【図27】本実施形態のステップS1805、ステップ
S1905、ステップS2005、ステップS2105
のDBトランザクション取消処理の詳細を示すフローチ
ャートである。
FIG. 27 shows steps S1805, S1905, S2005, and S2105 of this embodiment.
6 is a flowchart showing details of the DB transaction cancellation process of FIG.

【図28】本実施形態の情報処理装置で用いられるオブ
ジェクト間の関係を示す図である。
FIG. 28 is a diagram showing a relationship between objects used in the information processing apparatus of the present embodiment.

【図29】本実施形態のアプリケーションオブジェクト
のプログラミングコードを示す図である。
FIG. 29 is a diagram showing a programming code of an application object of the present embodiment.

【図30】本実施形態のデータベースオブジェクトの一
覧を示す図である。
FIG. 30 is a diagram showing a list of database objects of the present embodiment.

【図31】本実施形態のステップS1802の全オブジ
ェクト取得処理の詳細を示すフローチャートである。
FIG. 31 is a flowchart showing details of all object acquisition processing in step S1802 of the present embodiment.

【図32】本実施形態のステップS1902のオブジェ
クト追加処理の詳細を示すフローチャートである。
FIG. 32 is a flowchart showing details of object addition processing in step S1902 of this embodiment.

【図33】本実施形態のステップS2002のオブジェ
クト更新処理の詳細を示すフローチャートである。
FIG. 33 is a flowchart showing details of object update processing in step S2002 of the present embodiment.

【図34】本実施形態のステップS2102のオブジェ
クト削除処理の詳細を示すフローチャートである。
FIG. 34 is a flowchart showing details of object deletion processing in step S2102 of the present embodiment.

【図35】本実施形態のステップS5902の全DBオ
ブジェクト取得処理の詳細を示すフローチャートであ
る。
FIG. 35 is a flow chart showing details of all DB object acquisition processing in step S5902 of the present embodiment.

【図36】本実施形態のステップS6002のDBオブ
ジェクト生成追加処理の詳細を示すフローチャートであ
る。
FIG. 36 is a flowchart showing details of DB object generation / addition processing in step S6002 of the present embodiment.

【図37】本実施形態のステップS6204のDBオブ
ジェクト削除処理の詳細を示すフローチャートである。
FIG. 37 is a flowchart showing details of DB object deletion processing in step S6204 of this embodiment.

【図38】本実施形態のステップS5907、ステップ
S6003のDBオブジェクト値セット処理の詳細を示
すフローチャートである。
FIG. 38 is a flowchart showing details of the DB object value setting process in steps S5907 and S6003 of this embodiment.

【図39】本実施形態のステップS5906のオブジェ
クト生成処理の詳細を示すフローチャートである。
FIG. 39 is a flowchart showing details of object generation processing in step S5906 of this embodiment.

【図40】本実施形態のステップS5907のオブジェ
クト値セット処理の詳細を示すフローチャートである。
FIG. 40 is a flowchart showing details of object value setting processing in step S5907 of the present embodiment.

【図41】本実施形態のステップS7301、ステップ
S7501の全書き込み可能フィールド名取得処理の詳
細を示すフローチャートである。
FIG. 41 is a flowchart showing details of all writable field name acquisition processing in steps S7301 and S7501 of the present embodiment.

【図42】実施形態2の情報処理装置の階層構造化され
たデータベース操作手段を示す図である。
FIG. 42 is a diagram showing hierarchically structured database operating means of the information processing apparatus according to the second embodiment.

【図43】実施形態2の階層DBトランザクション構造
を示す図である。
FIG. 43 is a diagram showing a hierarchical DB transaction structure according to the second embodiment.

【図44】実施形態2の階層DBトランザクションの内
部データを示す図である。
FIG. 44 is a diagram showing internal data of a hierarchical DB transaction according to the second embodiment.

【図45】実施形態2のデータベースの種類を選択する
場合のトランザクション生成画面の一例を示す図であ
る。
FIG. 45 is a diagram showing an example of a transaction generation screen when selecting a database type according to the second embodiment.

【図46】実施形態2のサーバ名を入力する場合のトラ
ンザクション生成画面の一例を示す図である。
FIG. 46 is a diagram showing an example of a transaction generation screen when a server name is input according to the second embodiment.

【図47】実施形態2のDBトランザクション生成処理
の詳細を示すフローチャートである。
FIG. 47 is a flowchart showing details of DB transaction generation processing according to the second embodiment.

【図48】実施形態2の階層DBトランザクション構造
のいくつかの目的のまとまりであるパッケージ間の関係
の一例を示す図である。
FIG. 48 is a diagram showing an example of a relationship between packages, which is a set of some purposes of the hierarchical DB transaction structure of the second embodiment.

【図49】実施形態2の階層DBトランザクション構造
のクラス間の関係の一例を示す図である。
FIG. 49 is a diagram showing an example of a relationship between classes of the hierarchical DB transaction structure according to the second embodiment.

【図50】実施形態2の階層DBトランザクション構造
の基本クラス階層の一例を示す図である。
FIG. 50 is a diagram showing an example of a basic class hierarchy of a hierarchical DB transaction structure according to the second embodiment.

【図51】実施形態2のアプリケーションプログラムと
同一デバイス上にデータベースが存在する場合の階層ト
ランザクション構造の一例を示す図である。
FIG. 51 is a diagram showing an example of a hierarchical transaction structure when a database exists on the same device as the application program of the second embodiment.

【図52】実施形態2のローカルデータベースに拡張し
た場合の基本クラス階層の一例を示す図である。
FIG. 52 is a diagram showing an example of a basic class hierarchy when extended to the local database according to the second embodiment.

【図53】実施形態2のアプリケーションプログラムと
異なるデバイス上にデータベースが存在する場合の階層
DBトランザクション構造の一例を示す図である。
FIG. 53 is a diagram showing an example of a hierarchical DB transaction structure when a database exists on a device different from the application program of the second embodiment.

【図54】実施形態2のリモートデータベースに拡張し
た場合の基本クラス階層の一例を示す図である。
FIG. 54 is a diagram showing an example of a basic class hierarchy when extended to the remote database of the second embodiment.

【図55】実施形態2の異なるデバイス上のアプリケー
ションプログラムにデータベースサービスを提供する場
合の階層DBトランザクション構造の一例を示す図であ
る。
FIG. 55 is a diagram showing an example of a hierarchical DB transaction structure when a database service is provided to application programs on different devices according to the second embodiment.

【図56】実施形態2のデータベースIF層を異なるデ
バイスからも利用可能なようにリモートインタフェース
を拡張した場合の基本クラス階層の一例を示す図であ
る。
FIG. 56 is a diagram showing an example of a basic class hierarchy when the remote interface is extended so that the database IF layer of the second embodiment can be used by different devices.

【図57】実施形態3のデータベースの変化などに伴う
通知情報の流れを示す図である。
[Fig. 57] Fig. 57 is a diagram showing the flow of notification information accompanying a change in the database etc. of the third embodiment.

【図58】実施形態3の情報処理装置の階層DBトラン
ザクション構造を示す図である。
FIG. 58 is a diagram showing a hierarchical DB transaction structure of the information processing apparatus according to the third embodiment.

【図59】実施形態3の階層DBトランザクションの内
部データを示す図である。
FIG. 59 is a diagram showing internal data of a hierarchical DB transaction according to the third embodiment.

【図60】実施形態3のステップS409のトランザク
ション廃棄処理の詳細を示すフローチャートである。
FIG. 60 is a flowchart showing details of the transaction discarding process of step S409 of the third embodiment.

【図61】実施形態3のDBトランザクション生成処理
の詳細を示すフローチャートである。
FIG. 61 is a flowchart showing details of DB transaction generation processing according to the third embodiment.

【図62】実施形態3のステップS10301のDBト
ランザクション廃棄処理の詳細を示すフローチャートで
ある。
FIG. 62 is a flowchart showing details of a DB transaction discarding process in step S10301 according to the third embodiment.

【図63】実施形態3のステップS6002のDBオブ
ジェクト生成追加処理の詳細を示すフローチャートであ
る。
FIG. 63 is a flowchart showing details of DB object generation / addition processing in step S6002 of the third embodiment.

【図64】実施形態3のDBオブジェクト削除処理の詳
細を示すフローチャートである。
FIG. 64 is a flowchart showing details of DB object deletion processing according to the third embodiment.

【図65】実施形態3のステップS5907、ステップ
S6003のDBオブジェクト値セット処理の詳細を示
すフローチャートである。
FIG. 65 is a flowchart showing details of DB object value setting processing in steps S5907 and S6003 of the third embodiment.

【図66】実施形態3のステップS1804、ステップ
S1904、ステップS2004、ステップS2104
のDBトランザクション確定処理の詳細を示すフローチ
ャートである。
FIG. 66 is step S1804, step S1904, step S2004, step S2104 of the third embodiment.
9 is a flowchart showing details of the DB transaction confirmation process of FIG.

【図67】実施形態3のステップS10906の更新情
報生成通知処理の詳細を示すフローチャートである。
FIG. 67 is a flowchart showing details of update information generation notification processing in step S10906 of Embodiment 3.

【図68】実施形態3のステップS11008の更新通
知情報生成処理で生成される通知情報の一例を示す図で
ある。
FIG. 68 is a diagram showing an example of notification information generated in the update notification information generation processing of step S11008 of Embodiment 3;

【図69】実施形態3のステップS11002の追加通
知情報生成処理の詳細を示すフローチャートである。
FIG. 69 is a flowchart showing details of additional notification information generation processing in step S11002 according to the third embodiment.

【図70】実施形態3のステップS11005の削除通
知情報生成処理の詳細を示すフローチャートである。
FIG. 70 is a flowchart showing details of deletion notification information generation processing in step S11005 of the third embodiment.

【図71】実施形態3のステップS11008の更新通
知情報生成処理の詳細を示すフローチャートである。
FIG. 71 is a flowchart showing details of update notification information generation processing in step S11008 of Embodiment 3.

【図72】実施形態3のステップS11003のDBM
追加通知情報通知処理の詳細を示すフローチャートであ
る。
FIG. 72 is a DBM of step S11003 of the third embodiment.
It is a flow chart which shows the details of addition notice information notice processing.

【図73】実施形態3のステップS11006のDBM
削除通知情報通知処理の詳細を示すフローチャートであ
る。
FIG. 73 is a DBM of step S11006 of the third embodiment.
7 is a flowchart showing details of deletion notification information notification processing.

【図74】実施形態3のステップS11009のDBM
更新通知情報通知処理の詳細を示すフローチャートであ
る。
FIG. 74 is a DBM of step S11009 of the third embodiment.
7 is a flowchart showing details of update notification information notification processing.

【図75】実施形態3のステップS11503のトラン
ザクション追加通知情報通知処理の詳細を示すフローチ
ャートである。
FIG. 75 is a flowchart showing details of transaction addition notification information notification processing in step S11503 of Embodiment 3.

【図76】実施形態3のステップS11603のトラン
ザクション削除通知情報通知処理の詳細を示すフローチ
ャートである。
FIG. 76 is a flowchart showing details of transaction deletion notification information notification processing in step S11603 of Embodiment 3.

【図77】実施形態3のステップS11703のトラン
ザクション更新通知情報通知処理の詳細を示すフローチ
ャートである。
77 is a flowchart showing details of the transaction update notification information notification processing in step S11703 of Embodiment 3. FIG.

【図78】実施形態3のステップS11804のDBリ
スナー追加通知情報通知処理の詳細を示すフローチャー
トである。
FIG. 78 is a flowchart showing details of DB listener addition notification information notification processing in step S11804 of Embodiment 3.

【図79】実施形態3のステップS11904のDBリ
スナー削除通知情報通知処理の詳細を示すフローチャー
トである。
FIG. 79 is a flowchart showing details of DB listener deletion notification information notification processing in step S11904 of Embodiment 3.

【図80】実施形態3のステップS12004のDBリ
スナー更新通知情報通知処理の詳細を示すフローチャー
トである。
FIG. 80 is a flowchart showing details of DB listener update notification information notification processing in step S12004 according to the third embodiment.

【図81】実施形態4の情報処理装置の機能構成を示す
図である。
FIG. 81 is a diagram showing a functional configuration of an information processing device according to a fourth embodiment.

【図82】実施形態4の階層DBトランザクション構造
を示す図である。
FIG. 82 is a diagram showing a hierarchical DB transaction structure according to the fourth embodiment.

【図83】実施形態4のデータベースの変化などに伴う
サーバ&リモート構成における通知情報の流れを示す図
である。
FIG. 83 is a diagram showing a flow of notification information in the server & remote configuration according to a change in the database of the fourth embodiment.

【図84】実施形態4の階層DBトランザクションの内
部データを示す図である。
FIG. 84 is a diagram showing internal data of a hierarchical DB transaction according to the fourth embodiment.

【図85】実施形態4のステップS603のDBトラン
ザクション生成処理の詳細を示すフローチャートであ
る。
FIG. 85 is a flowchart showing details of DB transaction generation processing in step S603 of the fourth embodiment.

【図86】実施形態4のステップS13410のリモー
ト実装DBトランザクション生成処理の詳細を示すフロ
ーチャートである。
FIG. 86 is a flowchart showing details of remote-mounting DB transaction generation processing in step S13410 of the fourth embodiment.

【図87】実施形態4のステップS13505のサーバ
実装DBトランザクション生成処理の詳細を示すフロー
チャートである。
FIG. 87 is a flowchart showing details of server-mounted DB transaction generation processing in step S13505 of Embodiment 4.

【図88】実施形態4の通知リモート追加通知情報通知
処理の詳細を示すフローチャートである。
FIG. 88 is a flowchart showing details of notification remote addition notification information notification processing according to the fourth embodiment.

【図89】実施形態4の通知リモート削除通知情報通知
処理の詳細を示すフローチャートである。
FIG. 89 is a flowchart showing details of notification remote deletion notification information notification processing according to the fourth embodiment.

【図90】実施形態4の通知リモート更新通知情報通知
処理の詳細を示すフローチャートである。
FIG. 90 is a flowchart showing details of notification remote update notification information notification processing according to the fourth embodiment.

【図91】実施形態4のステップS13703の通知サ
ーバ追加通知情報通知処理の詳細を示すフローチャート
である。
FIG. 91 is a flowchart showing details of the notification server addition notification information notification processing in step S13703 of Embodiment 4.

【図92】実施形態4のステップS13803の通知サ
ーバ削除通知情報通知処理の詳細を示すフローチャート
である。
FIG. 92 is a flowchart showing details of the notification server deletion notification information notification processing in step S13803 of Embodiment 4.

【図93】実施形態4のステップS13903の通知サ
ーバ更新通知情報通知処理の詳細を示すフローチャート
である。
FIG. 93 is a flowchart showing details of the notification server update notification information notification processing in step S13903 of the fourth embodiment.

【図94】実施形態5の、トランザクションとデータベ
ースそれぞれがキャッシュを持つ、多層キャッシュ構造
を示す図である。
FIG. 94 is a diagram showing a multi-tiered cache structure according to the fifth embodiment, in which a transaction and a database each have a cache.

【図95】実施形態5の、データベースキャッシュ構造
を示す図である。
FIG. 95 is a diagram showing a database cache structure according to the fifth embodiment.

【図96】実施形態5の、2つの実装DBトランザクシ
ョン内部情報と、共通トランザクションキャッシュの関
連を示す図である。
FIG. 96 is a diagram showing a relationship between two internal DB transaction internal information items and a common transaction cache according to the fifth embodiment.

【図97】実施形態5の、2つの実装DBトランザクシ
ョン内部情報と、それぞれの個別トランザクションキャ
ッシュの関連を示す図である。
[Fig. 97] Fig. 97 is a diagram showing a relationship between two internal DB transaction internal information items and individual transaction caches according to the fifth embodiment.

【図98】異なるトランザクションから同一のオブジェ
クトを参照する際の流れの一例を示す図である。
[Fig. 98] Fig. 98 is a diagram illustrating an example of a flow of referring to the same object from different transactions.

【図99】異なるトランザクションから同一のオブジェ
クト群を参照する際の流れの一例を示す図である。
[Fig. 99] Fig. 99 is a diagram illustrating an example of a flow of referring to the same object group from different transactions.

【図100】従来技術のアイソレーションレベルによる
キャッシュの有無を示した表である。
FIG. 100 is a table showing presence / absence of a cache according to an isolation level of a conventional technique.

【図101】従来技術のアイソレーションレベルによる
他トランザクションによる操作許容レベルを示した表で
ある。
FIG. 101 is a table showing operation allowance levels by other transactions according to the isolation level of the related art.

【図102】従来技術を用いて、データベースに格納さ
れた同一オブジェクトを参照する際の流れの一例を示す
図である。
FIG. 102 is a diagram showing an example of a flow of referring to the same object stored in a database using a conventional technique.

【図103】従来技術を用いて、データベースに格納さ
れた同一オブジェクトを参照する際の流れの一例を示す
図である。
[Fig. 103] Fig. 103 is a diagram illustrating an example of a flow when referring to the same object stored in a database using a conventional technique.

【図104】従来技術を用いて、データベースに格納さ
れた同一オブジェクトを参照する際の流れの一例を示す
図である。
FIG. 104 is a diagram showing an example of a flow of referring to the same object stored in a database using a conventional technique.

【図105】従来技術を用いて、データベースに格納さ
れた同一オブジェクト群を参照する際の流れの一例を示
す図である。
FIG. 105 is a diagram showing an example of a flow of referring to the same object group stored in a database using a conventional technique.

【図106】従来技術を用いて、データベースに格納さ
れた同一オブジェクト群を参照する際の流れの一例を示
す図である。
FIG. 106 is a diagram showing an example of a flow of referring to the same object group stored in a database by using the conventional technique.

【図107】従来技術を用いて、データベースに格納さ
れた同一オブジェクト群を参照する際の流れの一例を示
す図である。
[Fig. 107] Fig. 107 is a diagram illustrating an example of a flow of referring to the same object group stored in a database using a conventional technique.

【図108】実施形態5によるキャッシュ制御を説明す
るフローチャートである。
FIG. 108 is a flowchart illustrating cache control according to the fifth embodiment.

【図109】実施形態4を用いた異なるデバイス上に存
在する複数のデータベースを組み込んだアプリケーショ
ンプログラムの一例を示す図である。
FIG. 109 is a diagram showing an example of an application program incorporating a plurality of databases existing on different devices using the fourth embodiment.

Claims (11)

【特許請求の範囲】[Claims] 【請求項1】 データベースを管理する情報処理装置で
あって、 データベースによって管理されたオブジェクトをアクセ
スするためのトランザクションを生成する生成手段と、 前記生成手段で生成されたトランザクションによって取
得、編集されたオブジェクトをキャッシュする第1キャ
ッシュ手段と、 前記データベースに対してキャッシュメモリを提供し、
トランザクションによって該データベースより取得され
たオブジェクトをキャッシュする第2キャッシュ手段と
を備えることを特徴とする情報処理装置。
1. An information processing apparatus for managing a database, comprising: generating means for generating a transaction for accessing an object managed by the database; and an object acquired and edited by the transaction generated by the generating means. Providing a cache memory for the database;
An information processing apparatus comprising: a second cache unit that caches an object acquired from the database by a transaction.
【請求項2】 前記第1キャッシュ手段は、他のトラン
ザクションからの操作の影響を受けるトランザクション
レベルにて取得されたオブジェクトを、他のトランザク
ションからの参照、操作が可能な共通キャッシュに保持
することを特徴とする請求項1に記載の情報処理装置。
2. The first cache means holds an object acquired at a transaction level affected by an operation from another transaction in a common cache that can be referenced and operated by another transaction. The information processing apparatus according to claim 1, which is characterized in that.
【請求項3】 前記第1キャッシュ手段は、他のトラン
ザクションからの操作の影響を受けないトランザクショ
ンレベルにて取得されたオブジェクトを、当該トランザ
クションのみからアクセスが可能な個別キャッシュに保
持することを特徴とする請求項1に記載の情報処理装
置。
3. The first cache unit holds an object acquired at a transaction level that is not affected by an operation from another transaction, in an individual cache accessible only from the transaction. The information processing device according to claim 1.
【請求項4】 前記データベースは符号化されたオブジ
ェクトを管理し、 前記トランザクションによって取得が要求されたオブジ
ェクトを復号して提供する復号手段を更に備え、 前記第2キャッシュ手段は、前記復号手段によって復号
されたオブジェクトをキャッシュすることを特徴とする
請求項1に記載の情報処理装置。
4. The database manages encoded objects, further comprising a decoding unit for decoding and providing an object requested to be acquired by the transaction, and the second cache unit is decoded by the decoding unit. The information processing apparatus according to claim 1, wherein the created object is cached.
【請求項5】 前記トランザクションにより与えられた
検索条件で前記データベースを検索してオブジェクト群
を得て、該トランザクションに提供する検索手段を更に
備え、 前記第2キャッシュ手段は、前記オブジェクト群をキャ
ッシュすることを特徴とする請求項1に記載の情報処理
装置。
5. A search unit for searching the database under the search condition given by the transaction to obtain an object group and providing the object group to the transaction, wherein the second cache unit caches the object group. The information processing apparatus according to claim 1, wherein:
【請求項6】 データベースを管理する情報処理方法で
あって、 データベースによって管理されたオブジェクトをアクセ
スするためのトランザクションを生成する生成工程と、 前記生成工程で生成されたトランザクションによって取
得、編集されたオブジェクトをキャッシュする第1キャ
ッシュ工程と、 前記データベースに対してキャッシュメモリを提供し、
トランザクションによって該データベースより取得され
たオブジェクトをキャッシュする第2キャッシュ工程と
を備えることを特徴とする情報処理方法。
6. An information processing method for managing a database, comprising a generation step of generating a transaction for accessing an object managed by the database, and an object acquired and edited by the transaction generated in the generation step. Providing a cache memory for the database;
A second cache step of caching an object acquired from the database by a transaction.
【請求項7】 前記第1キャッシュ工程は、他のトラン
ザクションからの操作の影響を受けるトランザクション
レベルにて取得されたオブジェクトを、他のトランザク
ションからの参照、操作が可能な共通キャッシュに保持
することを特徴とする請求項6に記載の情報処理方法。
7. The first cache step is to retain an object acquired at a transaction level affected by an operation from another transaction in a common cache that can be referred to and operated by another transaction. The information processing method according to claim 6, which is characterized in that.
【請求項8】 前記第1キャッシュ工程は、他のトラン
ザクションからの操作の影響を受けないトランザクショ
ンレベルにて取得されたオブジェクトを、当該トランザ
クションのみからアクセスが可能な個別キャッシュに保
持することを特徴とする請求項6に記載の情報処理方
法。
8. The first cache step retains an object acquired at a transaction level that is not affected by an operation from another transaction, in an individual cache accessible only by the transaction. The information processing method according to claim 6.
【請求項9】 前記データベースは符号化されたオブジ
ェクトを管理し、 前記トランザクションによって取得が要求されたオブジ
ェクトを復号して提供する復号工程を更に備え、 前記第2キャッシュ工程は、前記復号工程によって復号
されたオブジェクトをキャッシュすることを特徴とする
請求項6に記載の情報処理方法。
9. The database further comprises a decoding step of managing encoded objects, decoding the object requested to be acquired by the transaction and providing the object, and the second cache step decoding by the decoding step. The information processing method according to claim 6, wherein the created object is cached.
【請求項10】 請求項6乃至9のいずれかに記載の情
報処理方法をコンピュータによって実行させるための制
御プログラム。
10. A control program for causing a computer to execute the information processing method according to claim 6.
【請求項11】 請求項6乃至9のいずれかに記載の情
報処理方法をコンピュータによって実行させるための制
御プログラムを格納する記憶媒体。
11. A storage medium storing a control program for causing a computer to execute the information processing method according to claim 6.
JP2001366872A 2001-11-30 2001-11-30 Information processor and processing method Withdrawn JP2003167765A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001366872A JP2003167765A (en) 2001-11-30 2001-11-30 Information processor and processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001366872A JP2003167765A (en) 2001-11-30 2001-11-30 Information processor and processing method

Publications (1)

Publication Number Publication Date
JP2003167765A true JP2003167765A (en) 2003-06-13

Family

ID=19176709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001366872A Withdrawn JP2003167765A (en) 2001-11-30 2001-11-30 Information processor and processing method

Country Status (1)

Country Link
JP (1) JP2003167765A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006039174A1 (en) * 2004-09-30 2006-04-13 Intel Corporation Hybrid hardware and software implementation of transactional memory access

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006039174A1 (en) * 2004-09-30 2006-04-13 Intel Corporation Hybrid hardware and software implementation of transactional memory access
JP2008515055A (en) * 2004-09-30 2008-05-08 インテル・コーポレーション Method and apparatus for implementing hybrid hardware and software for transactional memory access
US7856537B2 (en) 2004-09-30 2010-12-21 Intel Corporation Hybrid hardware and software implementation of transactional memory access
JP4774056B2 (en) * 2004-09-30 2011-09-14 インテル・コーポレーション Method and apparatus for implementing hybrid hardware and software for transactional memory access
US8661206B2 (en) 2004-09-30 2014-02-25 Intel Corporation Hybrid hardware and software implementation of transactional memory access
US9529715B2 (en) 2004-09-30 2016-12-27 Intel Corporation Hybrid hardware and software implementation of transactional memory access
US10102123B2 (en) 2004-09-30 2018-10-16 Intel Corporation Hybrid hardware and software implementation of transactional memory access
US10180903B2 (en) 2004-09-30 2019-01-15 Intel Corporation Hybrid hardware and software implementation of transactional memory access
US10268579B2 (en) 2004-09-30 2019-04-23 Intel Corporation Hybrid hardware and software implementation of transactional memory access

Similar Documents

Publication Publication Date Title
CN107391653B (en) Distributed NewSQL database system and picture data storage method
JP2996197B2 (en) Document sharing management method
JP3272281B2 (en) Data item display method and display device, storage medium storing program for controlling display of data item
US7917538B2 (en) Method and apparatus for data item movement between disparate sources and hierarchical, object-oriented representation
JP3906380B2 (en) Procedures for creating and setting objects and setting pointers
CN1947110B (en) System and method for generating aggregated data views in a computer network
MXPA04006404A (en) User interface automation framework classes and interfaces.
RU50695U1 (en) DATA STORAGE AND PROCESSING SYSTEM
CN109960709B (en) Database driver processing method, device, equipment and storage medium
CN100393042C (en) Method and system of generically managing tables for network processors
US7849442B2 (en) Application requirement design support system and method therefor
JP2003167765A (en) Information processor and processing method
JP2002140221A (en) Information processor, information processing method, and storage medium
JP2010160577A (en) Retrieving device, control method therefor, and computer program
US20080162526A1 (en) Method and system for managing unstructured data in a structured data environment
KR101567886B1 (en) Sever, terminal and method for supporting ship building information sharing
JP2002140223A (en) Information processor and its method, and computer- readable memory
US20060184550A1 (en) Information processing apparatus and method, and computer readable memory
JP2002140327A (en) Information processor, information processing method and computer-readable memory
JP3194691B2 (en) Multimedia compound document management system
JP2002140193A (en) Information processing unit, its method and computer- readable memory
JPH11272526A (en) Data processor and storage medium
JP2013228958A (en) Workflow system, control method for workflow system, program, and recording medium
JP3053288B2 (en) Communication terminal device
US20150355903A1 (en) Visualization of code units across disparate systems

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050201