JP4855538B2 - データベースのデータ項目の平行編集方式 - Google Patents
データベースのデータ項目の平行編集方式 Download PDFInfo
- Publication number
- JP4855538B2 JP4855538B2 JP2010515778A JP2010515778A JP4855538B2 JP 4855538 B2 JP4855538 B2 JP 4855538B2 JP 2010515778 A JP2010515778 A JP 2010515778A JP 2010515778 A JP2010515778 A JP 2010515778A JP 4855538 B2 JP4855538 B2 JP 4855538B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- record
- edit record
- edit
- item
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 34
- 230000008569 process Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 description 22
- 230000010076 replication Effects 0.000 description 17
- 230000008859 change Effects 0.000 description 15
- 238000006243 chemical reaction Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000011156 evaluation Methods 0.000 description 8
- 238000012217 deletion Methods 0.000 description 7
- 230000037430 deletion Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 230000033772 system development Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Description
【0001】
データベース(以下「DB」)のデータ項目を複数の計算機(以下「PC」)で並行して編集する方法に関する。
【背景技術】
【0002】
<データ入力前に項目を設定する一般的な運用>
一般にDBの運用では非特許文献1に示すように項目を指定してテーブルを定義しその後データを投入している。DBシステム開発に関する専門的な解説書である、非特許文献2、非特許文献3、非特許文献4においても、最初にテーブルの項目を定義しその後テーブルにデータを入力する手順が説明されている。
【0003】
特許文献1では、あらかじめ定義してあるテンプレートの項目を追加・削除(128段)し、または項目名を変更(150段)して、新しいテーブル(を用いたプログラム)を作成(48段)する。特許文献2も同じコンセプトである。特許文献3は、新規テーブルの作成方法に関する。これらのテーブルの項目作成に関する検討はデータを投入する前に項目を作成する事を前提としている。
【0004】
<並行編集禁止のSQL言語>
一方、SQL言語仕様ではデータ投入後の項目の変更が可能である。非特許文献5ではSQL文として「テーブルに新しい列を加える」(P384)、「テーブルの列の型を変更する」(P389)、「テーブルの列を削除する」(P395)などが示されている。非特許文献6ではP46-47において、ALTER TABLE 文で、列の追加などが行える事が記載されている。
【0005】
しかし、SQL言語では、一度に一つの操作に制限して並行編集を防いでいる。この事は、非特許文献5の第5章「データの更新・追加・削除」(p300-p319)にも説明されている。さらに、第6章「トランザクション」(p300-p319)では、関連する複数の操作がひとつのトランザクションとして管理され、他の処理の割り込みなどによるエラーが発生するとトランザクション全体の処理を無効にするロールバックや、トランザクション処理中に他の処理が割り込む事を禁止するロック(p322)など並行編集を禁止する高度な仕掛けがある。
【0006】
<キャシュ技術に基づく並行編集>
ロックを用いず、作業用の複製を作成して処理を行うキャシュの技術で、処理や通信の効率化を図る試みも行われている。マイクロソフトのADO.NETは、計算機に当面の作業に必要なデータをサーバーからコピーし、サーバーとの接続を切断してから編集作業を行う。編集後に改めてサーバーと接続し編集内容をサーバーに送る。もし編集対象の情報が既に他のPCから変更されていれば、後からの(この)編集を無効にする。これは「オプティミスティック同時実行制御」(非特許文献7および非特許文献8)と呼ばれている。「ロックが結果として失敗した場合にはその編集を無効とする」と考えれば、編集ロックの一種とも言える。
【0007】
<従来技術の限界>
以上の要点は、「一般的にはデータ入力後に項目の変更は行わない」「SQLではデータの入力後の項目編集が可能だが並行編集を禁止している」「キャシュを元に一時的な並行編集を行う方法があるがデータ入力後の項目の変更は検討していない」である。
【0008】
つまり「データの入力後でも、複数のPCでの項目の並行編集、を可能とする」研究は行われていない。これは、キャシュの様な一時的な並行編集ではなく、長時間オフラインでDBを編集する「DBに対する本格的な並行編集」の技術が確立していなかったためと思われる。DBのデータ構造を決定する項目を複数のPCで並行して編集する事が、可能とは想像されなかった可能性もある。
【0009】
<変更編集に関する一般的な技術調査>
キャシュや並行編集に関係すると見当をつけて、特許文献4、特許文献5、特許文献6、特許文献7、特許文献8、特許文献9、特許文献10、非特許文献9を調査したが、編集が衝突した場合の対処方法に留まっていた。特許文献11、特許文献12、特許文献13、特許文献14、特許文献15、特許文献16も、一般的技術水準を示すものであり、本願とは異なる。
【特許文献1】
特開2006−309697
【特許文献2】
WO/2008/043136
【特許文献3】
特開2004−341770
【特許文献4】
特開平11−272533
【特許文献5】
特開昭61−134853号公報
【特許文献6】
特開2005−216167号公報
【特許文献7】
特開平9−91184号広報
【特許文献8】
特開2004−13867号広報
【特許文献9】
特開2004−86800号広報
【特許文献10】
特開2006−284998号広報
【特許文献11】
特開2000−194592
【特許文献12】
特開平11−161535号公報
【特許文献13】
特表2005−503606号公報
【特許文献14】
特表2005−508050号公報
【特許文献15】
特開平8−16447号公報
【特許文献16】
特表2000−501532号公報
【特許文献17】
PCT/JP2009/002491
【非特許文献1】
敷居隆、C++Builder データベースプログラミング第2回、InsideWindows(登録商標)、1997.12.01、第3巻、第12号、p71-77
【非特許文献2】
イー・キャシュ著、SQL Server 2005ではじめよう データベースシステム開発入門、2005年11月28日、株エクスメディア発行
【非特許文献3】
Wallace B. McClure, el at, Professional ADO.NET 2: Programming withSQL Server 2005, Oracle, and MySQL, Wiley Publishing, Inc. 2006
【非特許文献4】
William R. Vaughn, 株トップスタジオ訳、伊藤由紀子監修、Windows(登録商標)データベースプログラミング ADO.NET専修講座 VB.NET 編、2003年8月4日初版発行、翔泳社
【非特許文献5】
超図解SQLハンドブック、C&R研究所、2005年8月12日初版発行
【非特許文献6】
Kevin Kline, Daniel Kline, 石井他監訳、イデアコラボレーション訳、SQL クイックレファレンス、2001年11月2日初版発行、オライリー・ジャパン
【非特許文献7】
「ADO.NET におけるデータ同時実行制御の概要」、2007年1月、MSDNサブスクリプションライブラリー(msdn subscriptions Library)、ディスクファイル(URL:ms-help://MS.MSDNQTR.v80.ja/MS.MSDN.v80/MS.VisualStudio.v80.ja/dv_raddata/html/d5293098-4a88-4110-abd2-34d9e6661664.htm)
【非特許文献8】
「チュートリアル : 同時実行例外の処理」、2007年1月、MSDNサブスクリプションライブラリー(msdn subscriptions Library)、ディスクファイル(URL: ms-help://MS.MSDNQTR.v80.ja/MS.MSDN.v80/MS.VisualStudio.v80.ja/dv_raddata/html/73ee9759-0a90-48a9-bf7b-9d6fc17bff93.htm)
【非特許文献9】
「世界規模分散ファイルシステムSKINNY 」、情報処理学会研究報告, 95-OS-70, (学術刊行物 情処研報 Vol. 95, No.79 ISSN 0919-6072
【非特許文献10】
「主な機能とメリット」、[online]、2007年4月22日検索、インターネット(URL:http://www.sonicsoftware.co.jp/products/object_store/function.html)
【非特許文献11】
「MVCC(多版型同時実行制御)9.1. はじめに」、[online]、2007年4月22日検索、インターネット(URL:http://www.postgresql.jp/document/pg721doc/user/ mvcc.html #MVC C-INTRO)
【非特許文献10】
「9.5. アプリケーションレベルでのデータの一貫性チェック」、[online]、2007年4月22日検索、インターネット(http://www.postgresql.jp/document/pg721doc/user/applevel-consistency.html)
非特許文献12:「Cache Technology Guide」、[online]、2007年4月22日検索、インターネット(URL:http://www.intersystems.co:jp/cache/technology guide/technologyguide.html)
非特許文献13:「主な機能とメリット」、[online]、2007年4月22日検索、インターネット(URL:http://www.sonicsoftware.co.jp/products/object_store/function.html)
発明の開示
発明が解決しようとする課題
[0010]
本願では、データの入力後でも「複数のPCで項目を並行編集する事を可能とする」仕組みを明らかにする。
課題を解決するための手段
[0011]
<並行編集>
本明細書での並行編集とは、原本DBのデータの全部または一部の複製をPCの内部に保持し、この複製に対して編集を行う事である。この原本DBは実在しても良いし、実在せず各PCが保持する複製DBの内容が互いに同期する事により、いわば仮想の原本DBに各PCの複製DBが同期する方式(特許文献17)でも良い。サーバーが原本DBを更新し、この全部または一部のデータと各PCの複製DBが同期する方式で良い。各PCの複製DBは一時的であっても、永続的にこのPCに存在してもどちらでも良い。
[0012]
<項目定義の分離と並行編集>
本発明の基本は、DBが収容するデータの項目の定義、以下「項目定義」、もDBのデータとして扱い並行編集の対象とする事にある。リレーショナルDB(RDB)の場合なら、従来は運用に先立ってテーブル(以下「データテーブル」)の項目を定義し、その後はこのデータテーブルへのデータの投入や編集などを行う。これに対して、本願ではデータテーブルの項目を定義したテーブル(以下「項目テーブル」)を作成し、この項目テーブルも並行編集の対象とする。項目テーブルを編集した結果、必要ならば項目テーブルに従ってデータテーブルも変更する。
【0013】
RDBに対しては「項目テーブル」の表現は素直であるが、請求項の記述では一般的なDBを想定した「項目定義」の表現を、データテーブルも一般的な概念である「データ」の表現を用いる。つまり、本明細書で「項目テーブル」および「データテーブル」で説明する方法は、より一般的なDBに適用出来る。なお、RDB以外のオブジェクト指向DBなどの例は非特許文献10、非特許文献11、非特許文献12、非特許文献13などで見ることが出来る。
【0014】
項目テーブルの編集とデータテーブルの編集の関係は、項目テーブルの編集内容に応じて、「(A)無条件に並行編集可」と「(B)論理矛盾無しの条件付きで並行編集可」「(C)並行編集不可」とに分ける事が出来る。この分類を用いて項目テーブルとデータテーブルの並行編集を説明する。項目テーブルの編集とデータテーブルの編集が並行して行え、さらに項目テーブル自体の並行編集とデータテーブル自体の変更編集が可能ならば、完璧な並行編集と言える。
【0015】
項目の編集といっても、項目名や表示方法(数字の表示フォーマットや列の表示幅)の変更は、他のPCがデータの編集を行っていても、何ら問題は無い。これが「(A)無条件に並行編集可」である。
【0016】
従来は、項目定義をデータベースの基本的な情報として記録していたため、この項目定義に基づいたデータの入力やデータの修正と並行して、項目定義自体を変更する事は不可能であった。本願では、項目テーブルとデータテーブルとを分離し、両方を並行編集の対象とする事により、並行編集を可能とした。並行編集の技術が有れば、この技術を項目テーブルとデータテーブルの両方に適用すれば良い。
【0017】
項目テーブルの変更で、データテーブルの構造やデータを変更する可能性がある場合は、その変更が論理矛盾を起こさないとの条件付きで変更編集可能である。つまり「(B)論理矛盾無しの条件付きで並行編集可」である。
【0018】
例えば、名簿に新たに「性別」の項目を設ける場合、選択肢が「男・女」のみでデフォルトが設定されてないと、既に入力済のデータに「性別」の項目を追加する時点で論理矛盾が発生する。「男・女」のどちらかをデフォルトとするか、選択肢を「男・女・不明」として「不明」をデフォルトとするなどの対策があれば矛盾は起きない。
【0019】
この例は単純であるが、実際には十分検討したつもりでも、予想外のデータに対して論理矛盾を引き起こす可能性は否定出来ない。たとえ入力済の既存データで、論理矛盾が起きない事を事前検証したとしても、この事前検証と並行して追加や修正されたデータは検証もれとなり、項目追加の本番でエラーとなる可能性が残っている。
【0020】
これを考慮すると、論理矛盾が無いことを確実に検証する手順が必要である。そして、この確認結果は関係する全PCで共通である必要がある。また、項目テーブルに関する変更を元にデータテーブルを変更した場合に、その変更した結果も各PCで同じである必要がある。これらの対策を後で示す。
【0021】
「(B)論理矛盾無しの条件付きで並行編集可」の可能性があっても「(C)並行編集不可」として扱う事も可能である。並行編集の禁止により編集作業は不便になるが、編集競合が防止でき、簡単に各PCの複製DBを同期させる事が出来る。並行編集の禁止の手順を後で示す。
【0022】
<項目変更の確認とデータテーブル構造の更新手順>
「項目テーブルの変更に論理矛盾が無い」ことの確認結果は、関係する全PCで同じとなる必要がある。もし、あるPCでは論理矛盾が発生し、別のPCでは論理矛盾は発生しないとすると、それぞれが保持する複製DBが同期しなくなる。また、データテーブル構造も更新の結果が同じとなる必要が有る。これらを実現する手順は、並行編集の具体的方法により異なる。
【0023】
サーバーが原本DBを更新し、この全部または一部のデータと各PCの複製DBが同期するケースでは、項目変更の確認とデータテーブル構造の更新はサーバーで行うので、各PCの複製DBが異なる可能性はない。
【0024】
各PCが、仮想のまたは実在する原本DBの(全部または一部の)と同期した複製DBを持ち、各PCが複製DBに対する編集を行い、これらの編集の記録(以下「編集記録」)をPC相互に交換し、それぞれの複製DBを更新する方法(特許文献17)の場合には、項目テーブルとデータテーブルの編集記録の順番が重要である。編集記録を用いて各PCの複製DBを更新する順番が異なると、項目テーブル変更による論理矛盾の検出の結果や、データテーブル構造の更新結果が異なることになる。
【0025】
これを防ぐには、データテーブルに対して行われた並行編集の編集記録と、この項目を定義した項目テーブルに対して行われた並行編集の編集記録に順番を付け、複製DBの更新を行う全てのPCは、この順番で編集記録を取り出して複製DBを更新する必要がある。たとえ、項目テーブルに対するある編集がエラーになりこの編集を無効としても、全てのPCでエラーとなり無効となるので、各PCの複製DBは同期する。
【0026】
これらに順序を付けるにはいくつかの方法がある。ひとつはデータテーブルに対して行われた並行編集の編集記録と、この項目を定義した項目テーブルに対して行われた並行編集の編集記録をサーバーにアップする。サーバーは到着順に並べる(シングルキューを構成する)。各PCがこの順番で編集記録を受信し複製DBの更新を行えば、複製DBは同期する。
【0027】
各PCからアップされた編集記録をサーバー(又は特別なPC)が変更したり、その順番を変更したとしても、各PCが変更された順番(同じ順番)で変更後の編集記録(同じ内容)を受信し複製DBの更新を行えば同期する。
【0028】
別の方法もある。編集記録を作成したPCから、順番を管理するサーバー(又はPC)に編集記録の順番を問い合わせ、このPCから指定された順番を編集記録に書き込む。編集記録自体はPCの間で直接送信しても、ここに書かれている順番はユニークである。順番の替わりに時間を編集記録に記入して、順番として用いても良い。なお、PC毎の時間のずれが生じる事を考え、特定のPCが時間を管理するなどの工夫が必要である。
【0029】
<並行編集の禁止手順>
以下では説明のため、ある項目テーブルの編集(X)について、この編集との並行編集を禁止する状況を想定する。つまりXの編集開始からXの編集が完了して、(サーバーなどへのアップにより)Xの順番が確定するまで期間を、他のPCの「編集禁止期間」とする。この編集記録(X)までを取り込んで更新した後の複製DBに対する編集から禁止が解除される。
[0030]
ひとつの方法は、この禁止区間に行われた編集をサーバーが検出して無効とする。例えば、編集記録をサーバーにアップするケースでは、まず、編集Xを行うPCからサーバー並行編集禁止を伝える。サーバーはこの情報に基づき、該当する編集記録を無効として処理する。処理としては単純であるが、この無効とされた編集を作成した側の労力は無駄になる。
[0031]
PCに禁止を伝えるのが、もうひとつの方法である。編集Xを行うPCから他のPCに直接伝えても良いし、編集Xを行うPCから、サーバーに伝えて、サーバーから各PCに伝えても良い。サーバーから編集禁止が通知されたら、このPCは複製DBの更新を行っても、これに対する編集は行わない。編集禁止解除が通知されてから編集を開始する。
[0032]
なお、編集の禁止は、他のPCによる同じ項目テーブルに対する編集の禁止、他のPCによる(この項目テーブルが項目を規定する)データテーブル対する編集の禁止がある。両方またはどちらか片方を状況に応じて指定すれば良い。
[0033]
<出願時の請求項との対応>
本明細書での並行編集とは、(実在の又は仮想の)原本DBの情報の全部または一部の複製をPCの内部に保持し、この複製に対して編集を行う事である。これに、DBが収容するデータの項目の定義、以下「項目定義」、もDBのデータとして扱い並行編集の対象とし、更新された項目定義の複製に従って、データの該複製を再構成する事、を加えたのが本願の基本であり、これが請求項1である。請求項1をベースとし、データの複製と項目定義の複製に対する編集記録をシングルキューで管理するのが請求項2である。これにさらに、ひとつの編集記録にデータと項目の両方の変更の記録が記録される場合(図3について説明した本願の47段で説明)も含むのが請求項3である。さらに「該編集の有効性を判定」を加えたのが請求項4である。
[0034]
データの複製と項目定義の複製を保持し、項目定義を編集し、これらに対する編集記録をシングルキューで管理するのが請求項5である。これに「該編集の有効性を判定」を加えたのが請求項6である。請求項6をベースに「項目定義」に対する編集を行う間の他のPCの編集を禁止する工程を加えたのが請求項7である。
発明の効果
[0035]
従来は「データの入力後でも、複数のPCでの項目の並行編集を可能とする」研究は行われてこなかった。本発明により、いわゆるDBの本格的な並行編集、つまり原本DBのデータの全部または一部の複製をPCの内部に保持しこの複製に対して複製を行う編集、において複数のPCでの項目の並行編集を可能となった。
【図面の簡単な説明】
[0036]
[図1]一般的な実施の概観
[図2]本願を実現する装置構成
[図3]初期の複製TBLを作成し複製TBLを同期する処理
[図4]複製TBLを編集し編集記録をサーバーにアップする処理
[図5]複製項目TBLの内容に基づき、複製データTBLを再構成する処理
[図6]複製項目TBLの内容に基づき複製データTBLのレコードを表示する処理
[図7]TBLの内容の例
[図8]処理例の説明図
[図9]並行編集の禁止手順
符号の説明
[0037]
0101 PC−A
0102 PC−B
0103 サーバー
0104 通信網(インターネットなど)
0105 (サーバーの)記憶装置
0106 期項目TBL
0107 初期データTBL
0108 編集記録(1)
0108 編集記録(2)
0201 PC(計算機)
0202 通信網(インターネットなど)
0203 通信手段
0204 初期の複製TBLを作成する手段
0205 複製TBLを同期する手段
0206 複製TBLに対する編集記録を作成する手段
0207 編集結果をサーバーにアップする手段
0208 複製項目TBLに基づき、複製データTBLを再構成する手段
0209 複製項目TBLに基づき複製データTBLのレコードを表示する、または印刷する手段
0210 サーバー
0211 複製項目TBL
0212 複製データTBL
0213 編集記録
0214 編集記録
0215 編集記録
0216 編集記録
0217 記憶装置
0301 複製TBLが計算機に作成されているかを調査
0302 複製TBLを作成する処理
0303 未取り込みの編集記録がサーバーにあるかを確認
0304 編集記録をサーバーから取り込む処理
0305 取り込んだ編集記録を順番に取り出す
0306 編集の有効性の判定
0307 複製項目TBLの更新
0308 複製データTBLの更新
0401 編集記録を特定
0402 編集記録に、編集対象の複製TBL(または複製DB)のバージョンを指定
0403 サーバーに編集記録をアップ
0501 項目TBLのレコードの、追加、変更、(本当の)削除の有無を確認
0502 新たな項目構成の空のデータTBLを作成
0503 古い複製データTBLのレコードを取り出す
0504 新しい複製データTBLに移す
0505 変換処理の指定を確認
0506 変換処理を実行
0601 複製項目TBLのレコードをその表示順に指定された順番に検査
0602 項目の表示非表示を確認
0603 複製データTBLの表示様の表の項目を作成
0604 複製データTBLのレコードを順番に取り出す
0605 レコードの対応する項目の値を表示
0701 複製項目TBL
0702 複製データTBL
0703 最初の表示
0704 削除=Trueと変更
0705 次の表示
0801 サーバー
0802 PC−A(計算機A)
0803 PC−B(計算機B)
0804 初期DB(初期項目TBL0106と初期データTBL0107)
0805 (PC−Aの)複製DB(複製項目TBL0211と複製データTBL0212)
0806 (PC−Bの)複製DB(複製項目TBL0211と複製データTBL0212)
0807 (PC−Aによる)初期DBの取得
0808 (PC−Bによる)初期DBの取得
0809 確認と同期
0810 複製項目TBLに対する編集
0811 編集記録のアップ
0812 確認と同期
0813 (操作者への)表示
0814 複製データTBLの構成変更結果(編集記録)
0815 確認と同期
0816 (操作者への)表示
0817 確認と同期
0901 他のPCに編集の一時停止を通知
0902 複製項目TBLに対する編集記録を作成
0903 編集記録を他のPCに送信
0904 他のPCに編集の一次停止の解除を通知
【発明を実施するための最良の形態】
【0038】
以下では、図も含め「テーブル」を「TBL」と表示する。さて、一般的な実施の概観を図1に示す。これは、PC2台(PC−A0101、PC−B0102)と、サーバー0103で構成され、これらはインターネットなどの通信網0104を介して接続される。サーバーの記憶装置0105の中には、初期項目TBL0106と初期データTBL0107が有り、PC(PC−A0101とPC−B0102)はこれをコピーして、複製項目TBL0211の初期値と複製データTBL0212の初期値とする。各PCが空のTBLを作成して初期値とする事も出来る。単に「複製TBL」といった場合、複製項目TBLと複製データTBLの両方を示す。
【0039】
PCが複製TBLに対する編集を行った場合は、その編集記録をサーバーに送る。サーバーはこれらを記憶装置0105に記録する。図1では、項目TBLに対する編集記録とデータTBLに対する編集記録0108、0109を到着順にひとつの列(シングルキュー)で管理している。
[0040]
PCには一般的に、演算装置、主記憶装置、二次記憶装置、入出力装置、通信装置、表示装置
などがバスで接続され構成されている。図1のPC−A0101とPC−B0102は、本発明の方法に基づくプログラムを読み込み、それぞれのPCが図2に示す手段と記憶装置0217の集合体として機能する。PC0201は通信手段0203を通じてインターネットなどの通信網0202に接続し、その先のサーバー0210と通信する。
[0041]
「初期の複製TBLを作成する手段」0204、「複製TBLを同期する手段」0205、「複製TBLに対する編集記録を作成する手段」0206、「編集結果をサーバーにアップする手段」0207、「複製項目TBLの内容に基づき、複製データTBLを再構成する手段」0208、「複製項目TBLの内容に基づき複製データTBLのレコードを表示する、または印刷する手段」0209、を実現する。
[0042]
記憶装置0217には、複製項目TBL0211と複製データTBL0212があり、それぞれに対する編集に対応して編集記録0213、0214が作成される。また、他のPCの編集記録をサーバーから受信し、このPCが作成した編集記録も含めた編集記録の順番をサーバーから受信し、これらにより複製項目TBLと複製データTBLを更新する。サーバーで項目TBLに対する編集記録とデータTBLに対する編集記録を到着順にひとつの列を構成している場合は、PCでも同じひとつの列(編集記録0215、0216)を作成し、この順番でPCの複製項目TBL0211と複製データTBL0212を更新する。
[0043]
「初期の複製TBLを作成する手段」0204では、サーバーにある初期TBL(初期項目TBL0106と初期データTBL0107)をコピーしてPCの初期の複製TBL(初期複製項目TBL0211と初期データTBL0212)とする。PCに初期複製TBLが存在しない場合には、まずこの作業を行う。初期TBLがサーバーに無くても「初期複製TBLは空」との認識が各PCにあれば、各PCが空の複製TBLを作成する事で、初期複製TBLが作成出来る。空の複製項目TBLにPCの操作者が項目を定義すれば、この項目定義に従って、空のデータテーブルが作成出来る
【0044】
「複製TBLを同期する手段」0205は、サーバーにアップされた編集0106,0107を取り込み、「編集の有効性の判定」を行い、有効と判定された編集で複製TBL(複製項目TBL0211と複製データTBL0212)の内容を更新する。
【0045】
「初期の複製TBLを作成する手段」0204、「複製TBLを同期する手段」0205、を連続して実行する手順を図3に示す。
【0046】
まず「複製TBLが計算機に作成されているかを調査」0301する。なければ、サーバーある初期TBL(初期項目TBL0211と初期データTBL0212)コピーしてPCの初期の複製TBLとする。又は、空の複製TBLを作成し初期値とする0302。この部分が「初期の複製TBLを作成する手段」0204の処理である。
【0047】
次に、まだ取り込んでいない編集記録がサーバー0103, 0210にあるかを確認0303し、有れば「編集記録をサーバーから取り込む」0304。そして「取り込んだ編集記録を順番に取り出」し0305、「編集の有効性の判定」0306を行い、有効ならは編集記録の対象に応じて「複製項目TBLの更新」0307又は「複製データTBLの更新」0308を行う。なお、図3は、ひとつの編集記録は複製項目TBLまたは複製データTBLのどちらか一方に対する記録を保持している場合の処理の流れであるが、ひとつの編集記録が両方の編集記録を含んでいても良い。この場合は「複製項目TBLの更新」0307と「複製データTBLの更新」0308が編集記録に従って順に行われる。この部分が「複製TBLを同期する手段」0205の処理である。
【0048】
「複製TBLを編集する手段」0206では、複製項目TBL0211と複製データTBL0212の編集を行う。これらの編集記録は「編集記録をサーバーにアップする手段」0207により、サーバーにアップされる。この手順を図4に示す。まず「編集記録を特定」0401し、「編集記録に、編集対象の複製TBL(または複製DB)のバージョンを指定」0402し、「サーバーに編集記録をアップ」0403する。
【0049】
アップされた編集記録0108, 0109は、他のPCの「複製TBLを同期する手段」0205により、他のPCに取り込まれ、「編集の有効性の判定」0306が行われ、そのPCの複製TBLが更新される。「複製TBLを同期する手段」0205は、この編集をアップした計算機でも実行される。
【0050】
以上の手段により、項目TBLとそのデータTBLを対象とした「平行DBアクセス」が実現される。残りの手段で項目テーブルとその元テーブルの関係を扱う。
【0051】
「複製項目TBLの内容に基づき、複製データTBLを再構成する手段」0208 では、項目テーブルに追加、変更、(本当の)削除されたレコードが有れば、まず新たな項目構成の空の元テーブルを作成し、そして古い元テーブルのレコードをコピーして移す。削除でも、操作者に表示しないだけの削除ならば、複製データTBLを再構成する必要は無い。
【0052】
この処理の流れを図5に示す。まず、項目TBLのレコードの、追加、変更、(本当の)削除」の有無を確認0501する。あれば、新たな項目構成の空のデータTBLを作成0502する。そして、古い複製データTBLのレコードを取り出し0503、その内容を新しい複製データTBLに移す0504。項目が(本当に)削除されていれば、その値は新しい元テーブルには移さない(移せない)。
【0053】
利用するDBソフトに項目編集の機能が備わっており、項目編集に伴いテーブルの構成も変更されるならば、これを利用しても良い。この場合「複製項目TBLの内容に基づき、複製データTBLを再構成する手段」0208は、複製項目TBLの内容に基づきDBソフトの項目編集の機能を呼び出す事により実現される。
【0054】
「変換処理」つまり「既存の項目の値を基に、新しい項目の値を設定する処理」が指定されていれば、図5の「古い複製データTBLのレコードを取り出し」0503「その内容を新しい複製データTBL」0504処理の後に、「変換処理の指定を確認」0505し「変換処理を実行」0506する。なお、変換処理の実例を後で示す。
【0055】
「複製項目TBLの内容に基づき、複製データTBLのレコードを表示する、または印刷する手段」0209は、複製項目TBL0211のレコードに指定された表示順に、表示指定のある項目を表示する。さらに複製データTBL0212のレコードを表示(または印刷)する。「表示=False」の項目レコードについては、複製データTBL0212 のこの項目の値は表示(または印刷)しない。
【0056】
この手順を図6に示す。「複製項目TBL0211のレコードをその表示順に指定された順番に検査」0601し、「項目の表示非表示を確認」0602し「表示=True」ならば、順番に「複製データTBL0211の表示用の項目を作成」0603する。次に、複製データTBL0211のレコードを順番に取り出し0604、表の行として、対応する項目の値を表示する0605。
【0057】
<変換処理の実例>
図7の複製項目TBL0701と複製データTBL0702を用いて説明する。複製項目TBL0701には、複製データTBL0702の項目を定義するレコードとして、生徒名、評価、入学日のレコードが記録されている。複製データTBL0702には2件のレコードが記録されている。
【0058】
「最初の表示」0703は、複製項目TBL0701の「追加(1)」のID=4の項目レコードが追加される前の表示である。この時点では、複製データTBLの「追加(2)」の項目ID=4の項目も無いし、複製データTBL0702の(レコードの)その値も設定されていない。
【0059】
[変換処理]: ここで「評価」を0から100の数値でなく「合格/不合格」の表記に切り換えることにする。この変更は、項目の削除と追加を組み合わせる事により行う。
【0060】
まず、従来の「評価」の項目レコード(ID=2)で、削除の値をFalseから Trueに変更0704し、項目を削除状態にする。次に、新しい「評価」の項目レコード(ID=4)を作成する。これが「追加(1)」である。
【0061】
次に、従来の「評価」の値から新しい「評価」への「変換処理」を定義する。例えば、0から59を「不合格」、60から100を「合格」、それ以外の数字、数字に変換出来ない文字、および未記入を「未定」とする。
【0062】
この変換処理を実行した結果が複製データTBL0702の各レコードの項目ID=4の値、つまり「追加(2)」の部分である。これを表示すると、複製データTBLの「最初の表示」0703が「次の表示」0705に変わる。元レコードの「項目ID=2」が表示されず、新しい「項目ID=4」が表示されるので、操作者からは「評価」項目が変更された様に見える。
【0063】
[削除の復活]: 削除マークが付いただけの項目は、その削除マークをクリアする事により項目が復活し、元レコードのその項目の値が表示される。上記の例で、ID=4の項目レコードを「削除=Trueと変更」0704とし、ID=2の項目レコードを「削除=False」として復活させれば、再び「最初の表示」が示される。
【0064】
[表示順]: 図7の「最初の表示」0703および「次の表示」0705で、項目名が「生徒名」「評価」「入学日」と、項目テーブルの表示順の値に従って表示されている。項目テーブルの表示順の値を変更することにより、元テーブルの項目の表示順は変更される。
【0065】
[処理の流れ]: 複製項目TBLと複製データTBLが同じDBに記録され、両者に対する修正がこのDBのバージョンで管理されている場合の処理を図8で説明する。
【0066】
PC−A0802とPC−B0803はそれぞれ、初期項目TBL0106と初期データTBL0107が存在する初期DB0804を取得0807, 0808し、それぞれの複製DB0805, 0806としている。このなかに初期値の複製項目TBL0211と複製データTBL0212が存在する。サーバー0801のバージョン0の初期DB0804をコピーしているので、どちらもバージョンは0である。その後、サーバー0801には編集記録1から編集記録6がアップされているが、これはPC−A0802、PC−B0803以外の計算機がアップした編集である
【0067】
さて、PC−A0802は、複製項目TBLに対する編集を行うにあたり、最初の処理として同期0809を行う。この時、サーバー0801から編集記録1から編集記録6を取得し、複製DB0805のバージョンを6とする。そして、複製DB0805内の複製項目TBL0211に対する編集0810を行う。この編集記録がサーバーにアップされ0811、編集7として記録される。
【0068】
この直後の確認と同期0812により、先のアップ0811の編集記録が有効と判定され、編集7となった事を確認する。この結果は計算機A0802の操作者に表示0813される。
【0069】
この複製項目TBL0211に対する編集0810により、対応する複製データTBLの再構成が必要な場合は、PC−A0802(のプログラム)は、複製データTBLの再構成を行い、その結果を編集記録としてサーバーに送る0814。この編集はサーバーで編集8となる。PC−A0802は同期を行い0815、編集が確定した結果をPC−A0802の操作者に表示0816する。PC−B0203も複製項目TBL0211と複製データTBL0212の同期を行う0817。
【0070】
<並行編集の禁止>
あるPCでの複製項目TBL0211の編集中に、他のPCでの編集を一次停止させる場合、図9の手順で行う。まず「他のPCに編集の一時停止を通知」0901した後、「複製項目TBLに対する編集記録を作成」0902し、この「編集記録を他のPCに送信」0903する。そして「他のPCに編集の一次停止の解除を通知」0904する。
【産業上の利用可能性】
【0071】
従来のデータベースの運用の多くは、最初にテーブルの項目を設計し、その後はこのテーブルにデータを投入し編集するだけであった。またSQL言語仕様ではデータ入力後の項目の編集が可能であるが、同時編集を禁止していた。本願により、複数のPCで項目を並行編集する事を可能となり、データベースの運用に大きな自由度を与えられる。
Claims (7)
- データベースの全体または一部の複製を保持し、該複製の更新を実行する装置(以下「自装置」)であって、
(a)自装置が保持する該複製のデータ(以下「自データ」)に対する編集記録(以下「自データ編集記録」)を作成する手段、
(b)「他の装置が保持する、該データベースの全体または一部の複製のデータ(以下「他データ」)に対する編集記録(以下「他データ編集記録」)」と、
「該他データの項目定義に対する編集記録(以下「他項目編集記録」)」を、自装置の外部から受信する手段、
(c)該自データ編集記録、該他データ編集記録および該他項目編集記録の、「前後関係を特定する情報」を自装置の外部から受信する手段、
(d)該「前後関係を特定する情報」で指定された、該自データ編集記録、該他データ編集記録および該他項目編集記録のそれぞれを、以下では「編集記録」と呼ぶことにし、該「前後関係を特定する情報」に指定された順番で、該編集記録の有効性の判定を行い、有効と判定された該編集記録を用いて、自装置が保持する該複製のデータとその項目定義を更新する手段、
を特徴とする自装置。 - 記録媒体に記録された、データベースの全体または一部の複製の更新を、コンピュータ(以下「自装置」)に実行させるためのプログラムであって、
(a)自装置が保持する該複製のデータ(以下「自データ」)に対する編集記録(以下「自データ編集記録」)を作成する工程、
(b)「他の装置が保持する、該データベースの全体または一部の複製のデータ(以下「他データ」)に対する編集記録(以下「他データ編集記録」)」と、
「該他データの項目定義に対する編集記録(以下「他項目編集記録」)」を、自装置の外部から受信する工程、
(c)該自データ編集記録、該他データ編集記録および該他項目編集記録の、「前後関係を特定する情報」を自装置の外部から受信する工程、
(d)該「前後関係を特定する情報」で指定された該自データ編集記録、該他データ編集記録および該他項目編集記録のそれぞれを、以下では「編集記録」と呼ぶことにし、該「前後関係を特定する情報」に指定された順番で、該編集記録の有効性の判定を行い、有効と判定された該編集記録を用いて、自装置が保持する該複製のデータとその項目定義を更新する工程、
を特徴とするプログラム。 - 請求項1に記載の自装置であって、
該自データ編集記録、該他データ編集記録、および該他項目編集記録を総称して「編集記録群」とし、該「編集記録群」が集められる装置を「サーバー」としたとき、
該「編集記録群」の個々の該編集記録が該サーバーに到着した順番、又は
該サーバーにおいて、該サーバーに集められた該「編集記録群」の個々の該編集記録に対して設定された順番を
該「前後関係を特定する情報」とし、該「前後関係を特定する情報」を該サーバーから受信すること、
を特長とする自装置。 - データベースの全体または一部の複製を保持し、該複製の更新を実行する装置(以下「自装置」)であって、
(a)自装置が保持する該複製のデータ(以下「自データ」)に対する編集記録(以下「自データ編集記録」)を作成する手段、
(b)「他の装置が保持する、該データベースの全体または一部の複製のデータ(以下「他データ」)に対する編集記録(以下「他データ編集記録」)」と、
「該他データの項目定義に対する編集記録(以下「他項目編集記録」)」を、自装置の外部から受信する手段、
(cd)該自データ編集記録、該他データ編集記録、および該他項目編集記録を総称して「編集記録群」とし、該「編集記録群」が集められ、該「編集記録群」を自装置および該他装置に渡す機能を提供する、装置を「サーバー」としたとき、
該「編集記録群」の個々の該編集記録が、該サーバーから自装置に到着した順番を「前後関係を特定する情報」とし、
該「前後関係を特定する情報」に指定された順番で、該編集記録の有効性の判定を行い、有効と判定された該編集記録を用いて、自装置が保持する該複製のデータとその項目定義を更新する手段、
を特徴とする自装置。 - 請求項1に記載の自装置であって、
該自データ編集記録、該他データ編集記録、および該他項目編集記録を総称して「編集記録群」としたとき、順序数を発行する装置が該「編集記録群」の個々の該編集記録に対し発行した順序数を、該「前後関係を特定する情報」とすること、
を特長とする自装置。 - 請求項1に記載の自装置であって、
該自データ編集記録、該他データ編集記録、および該他項目編集記録を総称して「編集記録群」としたとき、時刻を通知する装置により指定された、該「編集記録群」の個々の該編集記録に対応する時刻を、該「前後関係を特定する情報」とすること、
を特長とする自装置。 - 請求項1に記載の自装置であって、
自装置が保持する該複製のデータの項目定義が更新された時に、更新された該項目定義に従って該データの構成を変更することを特徴とする手段(d)、
を有する事を特徴とする自装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010515778A JP4855538B2 (ja) | 2008-06-04 | 2009-06-03 | データベースのデータ項目の平行編集方式 |
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2008/001424 WO2008149552A1 (ja) | 2007-06-06 | 2008-06-04 | データベース矛盾解消方式 |
JPPCT/JP2008/001424 | 2008-06-04 | ||
JPPCT/JP2008/001506 | 2008-06-12 | ||
PCT/JP2008/001506 WO2009147701A1 (ja) | 2008-01-08 | 2008-06-12 | データベースへの平行アクセスプログラム |
JPPCT/JP2008/001719 | 2008-07-01 | ||
PCT/JP2008/001719 WO2009147704A1 (ja) | 2008-06-04 | 2008-07-01 | テーブルとテーブル項目の平行編集プログラム |
JP2010515778A JP4855538B2 (ja) | 2008-06-04 | 2009-06-03 | データベースのデータ項目の平行編集方式 |
PCT/JP2009/002501 WO2009147851A1 (ja) | 2008-06-04 | 2009-06-03 | データベースのデータ項目の平行編集方式 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010254885A Division JP5543899B2 (ja) | 2008-06-04 | 2010-11-15 | データベースのデータ項目の平行編集方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009147851A1 JPWO2009147851A1 (ja) | 2011-10-27 |
JP4855538B2 true JP4855538B2 (ja) | 2012-01-18 |
Family
ID=45604589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010515778A Active JP4855538B2 (ja) | 2008-06-04 | 2009-06-03 | データベースのデータ項目の平行編集方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4855538B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9678996B2 (en) | 2007-06-06 | 2017-06-13 | Kunio Kamimura | Conflict resolution system for database parallel editing |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002244907A (ja) * | 2001-02-19 | 2002-08-30 | Ricoh Co Ltd | 複製管理方法及び装置 |
JP2003122509A (ja) * | 2001-08-08 | 2003-04-25 | Hitachi Ltd | リモートコピー制御方法、これを用いた記憶サブシステム、及び、これらを用いた広域データストレージシステム |
JP2004013367A (ja) * | 2002-06-05 | 2004-01-15 | Hitachi Ltd | データ記憶サブシステム |
JP2005063374A (ja) * | 2003-08-20 | 2005-03-10 | Nippon Telegr & Teleph Corp <Ntt> | データ管理方法、データ管理装置、およびそのためのプログラムならびに記録媒体。 |
JP2006501585A (ja) * | 2002-08-01 | 2006-01-12 | オラクル・インターナショナル・コーポレイション | 非同期情報共有システム |
-
2009
- 2009-06-03 JP JP2010515778A patent/JP4855538B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002244907A (ja) * | 2001-02-19 | 2002-08-30 | Ricoh Co Ltd | 複製管理方法及び装置 |
JP2003122509A (ja) * | 2001-08-08 | 2003-04-25 | Hitachi Ltd | リモートコピー制御方法、これを用いた記憶サブシステム、及び、これらを用いた広域データストレージシステム |
JP2004013367A (ja) * | 2002-06-05 | 2004-01-15 | Hitachi Ltd | データ記憶サブシステム |
JP2006501585A (ja) * | 2002-08-01 | 2006-01-12 | オラクル・インターナショナル・コーポレイション | 非同期情報共有システム |
JP2005063374A (ja) * | 2003-08-20 | 2005-03-10 | Nippon Telegr & Teleph Corp <Ntt> | データ管理方法、データ管理装置、およびそのためのプログラムならびに記録媒体。 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9678996B2 (en) | 2007-06-06 | 2017-06-13 | Kunio Kamimura | Conflict resolution system for database parallel editing |
Also Published As
Publication number | Publication date |
---|---|
JPWO2009147851A1 (ja) | 2011-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4573277B2 (ja) | データベース矛盾解消方式 | |
CN107122360B (zh) | 数据迁移系统和方法 | |
WO2009147851A1 (ja) | データベースのデータ項目の平行編集方式 | |
US10754854B2 (en) | Consistent query of local indexes | |
US9576038B1 (en) | Consistent query of local indexes | |
CN105144162B (zh) | 集成数据库框架 | |
JP2010527087A (ja) | データベースマネジメントシステム(dbms)におけるデータ複製方法およびシステム | |
Liu et al. | CloudETL: scalable dimensional ETL for hive | |
EP2610762A1 (en) | Database version management system | |
US8688703B1 (en) | Metadata cache supporting multiple heterogeneous systems | |
Schönig | Mastering PostgreSQL 13: Build, administer, and maintain database applications efficiently with PostgreSQL 13 | |
JP5543899B2 (ja) | データベースのデータ項目の平行編集方式 | |
CN114741453A (zh) | 数据同步的方法、系统及计算机可读存储介质 | |
US9009098B1 (en) | Methods and apparatus for creating a centralized data store | |
US9015116B2 (en) | Consistent replication of transactional updates | |
JP4855538B2 (ja) | データベースのデータ項目の平行編集方式 | |
JP4855537B2 (ja) | データベース並行編集方式 | |
JP5543918B2 (ja) | データベース並行編集の競合解消方式 | |
US20170177647A1 (en) | Parallel database editing | |
JP2009301352A (ja) | テスト装置およびテスト方法 | |
JP4923140B2 (ja) | データベース並行編集方式 | |
JP5543901B2 (ja) | データベース並行編集方式 | |
BE1029521B1 (nl) | Een collaboratief gegevensbeheersysteem en werkwijze voor meerdere gebruikers | |
US20210256022A1 (en) | System for Creating a Dataset Network | |
Staudinger | Reproducible query processing in relational databases with evolving database schemas |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100518 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100518 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20100526 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20100615 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100618 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100714 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100809 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100823 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101115 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20101203 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20110204 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110812 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110927 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111026 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141104 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4855538 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141104 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |