(57)【要約】【課題】データベース操作専用のアプリケーションプログラムを使用することなく、クライアント機器からデータベースサーバシステムに対しデータベース操作を簡便に行なうことができるデータベース操作方法とデータベース操作システムを提供する。【解決手段】クライアント機器のボードコンピュータ２側でデータベース１１に挿入するデータなどが発生した場合、ボードコンピュータ２の通信プログラムが、データベース操作要求をデータベースサーバシステム１に送信し、データベースサーバシステム１のデータベースサーバ１０に対して要求のあったデータの検索、格納、または更新などの操作が、データベースサーバシステム１側のプロトコル実行プログラム１３によって実行される。その操作結果はプロトコル実行プログラム１３からボードコンピュータ２の通信プログラムに送信される。【選択図】図１
2008112282.tif 000002
【特許請求の範囲】
【請求項１】
データベースに対しデータの格納、更新などのデータベース操作を行なうデータベースサーバを有したデータベースサーバシステムと通信プログラムを有したクライアント機器がネットワークを介して通信可能に接続され、該クライアント機器からのデータベース操作要求に応じて、該データベースサーバが該データベースから検索して読み出したデータを、該クライアント機器上の通信プログラムに送信し、或いは該クライアント機器上の通信プログラムから送信したデータを該データベースサーバがデータベースに格納し、或いは該クライアント機器上の通信プログラムから送信した条件に基づき、該データベースのデータを更新するデータベース操作方法であって、
該クライアント機器上の通信プログラムがデータベース操作要求を該データベースサーバシステムに送信する第一の過程と、
該データベースサーバが該データベースに対して要求のあったデータ検索またはデータ格納若しくはデータ更新の操作を行なう第二の過程と、
該データベースの操作結果を該クライアント機器上の通信プログラムに送信する第三の過程と、
を含み、該クライアント機器上の通信プログラムがデータベース操作要求とその結果を該データベースサーバシステムと交換する際、データベース操作専用のアプリケーションプログラムを使用することなく、情報交換プロトコルのみを規定し、少なくともネットワーク接続に必要な最小限の通信プログラムのみを使用して、該クライアント機器上の通信プログラムがデータベース操作要求とその結果の交換を行なうことを特徴とするデータベース操作方法。
【請求項２】
前記クライアント機器上の通信プログラムは、ネットワーク接続に必要な通信プロトコルを規定したプロトコル利用プログラムを備えて構成され、該プロトコル利用プログラムは、前記データベースサーバシステムに接続要求信号を送信し、該データベースサーバシステムからの接続承認信号を受信し、データベース名、テーブル名、データベース接続方法、データベース操作コマンドなど含むデータセットを送信し、さらにデータベースサーバシステムからの要求信号に応じて、ユーザ名、パスワードを送信することを特徴とする請求項１記載のデータベース操作方法。
【請求項３】
前記データベースサーバシステムには、プロトコル実行プログラムとデータベースに接続しデータ操作を行なう接続・操作用プログラムが置かれ、接続・操作用プログラムが前記クライアント機器のプロトコル利用プログラムから送られたユーザ名、パスワードに基づき接続の可否を判定し、該プロトコル実行プログラムが該接続可否のステータスをクライアント機器のプロトコル利用プログラムに送出し、接続可のステータスを該プロトコル利用プログラムが受け付けたとき、該プロトコル利用プログラムは、データの操作指令をプロトコル実行プログラムに送出し、データの操作指令を受け付けたプロトコル実行プログラムは該操作指令を接続・操作用プログラムに送出し、接続・操作用プログラムが当該データをデータベースに格納、更新するなどの操作を行なうことを特徴とする請求項２記載のデータベース操作方法。
【請求項４】
前記接続・操作用プログラムは、データをデータベースに格納、更新などの操作を行なった後、操作に成功したか失敗したかの実行結果を前記プロトコル実行プログラムに送出し、該プロトコル実行プログラムは実行結果を受け付けると、実行結果のステータスを前記プロトコル利用プログラムに送出し、該プロトコル利用プログラムは実行結果のステータスを受け付け、このステータスが成功の実行結果であった場合、次の継続処理に移行することを特徴とする請求項３記載のデータベース操作方法。
【請求項５】
データベースに対しデータの格納、更新などのデータベース操作を行なうデータベースサーバを有したデータベースサーバシステムと通信プログラムを有したクライアント機器がネットワークを介して通信可能に接続され、該クライアント機器からのデータベース操作要求に応じて、該データベースサーバが該データベースから検索して読み出したデータを、該クライアント機器上の通信プログラムに送信し、或いは該クライアント機器上の通信プログラムから送信したデータを該データベースサーバがデータベースに格納し、或いは該クライアント機器上の通信プログラムから送信した条件に基づき、該データベースのデータを更新するデータベース操作システムであって、
該クライアント機器上の通信プログラムからデータベース操作要求を該データベースサーバシステムに送信する操作要求送信手段と、
該クライアント機器上の通信プログラムから該データベースサーバシステムの該データベースに対して要求のあったデータ検索またはデータ格納若しくはデータ更新の操作を実行するデータベース操作手段と、
該データベースサーバシステムから該データベースの操作結果を該クライアント機器上の通信プログラムに送信する操作結果送信手段と、を含み、
該クライアント機器上の通信プログラムがデータベース操作要求とその操作結果を該データベースサーバシステムと交換する際、データベース操作専用のアプリケーションプログラムを使用することなく、情報交換プロトコルのみを規定し、少なくともネットワーク接続に必要な最小限の通信プログラムのみを使用して、該クライアント機器と該データベースサーバシステムとの間でデータベース操作要求とその操作結果の交換を行なうことを特徴とするデータベース操作システム。
【請求項６】
前記クライアント機器上の通信プログラムは、ネットワーク接続に必要な通信プロトコルを規定したプロトコル利用プログラムを備えて構成され、該プロトコル利用プログラムは、前記データベースサーバシステムに接続要求信号を送信し、該データベースサーバシステムからの接続承認信号を受信し、データベース名、テーブル名、データベース接続方法、データベース操作コマンドなどを含むデータセットを送信し、さらに該データベースサーバシステムからの要求信号に応じて、ユーザ名、パスワードを送信することを特徴とする請求項５記載のデータベース操作システム。
【請求項７】
前記データベースサーバシステムには、プロトコル実行プログラムと接続・操作用プログラムが置かれ、接続・操作用プログラムが前記クライアント機器のプロトコル利用プログラムから送られたユーザ名、パスワードに基づき接続の可否を判定し、該プロトコル実行プログラムが該接続可否のステータスをクライアント機器のプロトコル利用プログラムに送出し、接続可のステータスを該プロトコル利用プログラムが受け付けたとき、該プロトコル利用プログラムは、データの操作指令をプロトコル実行プログラムに送出し、データの操作指令を受け付けたプロトコル実行プログラムは該操作指令を接続・操作用プログラムに送出し、接続・操作用プログラムが当該データをデータベースに格納、更新するなどの操作を行なうことを特徴とする請求項６記載のデータベース操作システム。
【請求項８】
前記接続・操作用プログラムは、データをデータベースに格納、更新などの操作を行なった後、操作に成功したか失敗したかの実行結果を前記プロトコル実行プログラムに送出し、該プロトコル実行プログラムは実行結果を受け付けると、実行結果のステータスを前記プロトコル利用プログラムに送出し、該プロトコル利用プログラムは実行結果のステータスを受け付け、このステータスが成功の実行結果であった場合、次の継続処理に移行することを特徴とする請求項７記載のデータベース操作システム。                                                                       
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して通信可能なクライアント機器からデータベースサーバシステムに対し、データの検索、読み出し、書き込み、または更新などのデータベース操作を行なうデータベース操作方法及びそのシステムに関する。
【背景技術】
【０００２】
ネットワークを介して通信可能なクライアント機器からデータベースサーバシステムに対し、データの検索、読み出し、書き込み、または更新などのデータベース操作を行なう場合、クライアント機器には、通常、データベース操作専用のアプリケーションプログラム（例えば、マイクロソフト社のAccess、Oracle社のOracleなど）をインストールし、そのアプリケーションプログラムを起動してデータベース操作を行なう。
【０００３】
一方、近年、家電製品や各種の産業機器に、所謂ボードコンピュータ（プロセッサ、メモリ、Ｉ／Ｏ等を含むデバイスをシングルチップで形成されたマイクロコンピュータ）が搭載され、ボードコンピュータに組み込まれるソフトウエアにより各機器の動作が制御される傾向になりつつあり、また、そのボードコンピュータからネットワークを介して接続されたデータベースサーバシステムに対し、データの書き込み、更新などのデータベース操作する必要性が生じている。
【特許文献１】特開２００３−２６３３５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
例えば、工場の生産ライン上などにおいて、各部分の温度を計測するために複数の温度センサを設置し、それらの温度センサから送られる温度データを、生産機器に搭載されたボードコンピュータから、データベースサーバシステムに書き込み或いはデータの更新を行なうことが検討されているが、ボードコンピュータのメモリ容量の制限、ＣＰＵの能力限界などから、データベースサーバシステムのデータベース操作を完全に実施可能なデータベース操作専用のアプリケーションプログラムを、ボードコンピュータに組み込むことは困難である。
【０００５】
つまり、Access、Oracleなどのデータベース用アプリケーションソフトは、データベースの作成、データの更新、データの検索など、データベースに関する略全ての機能を有したソフトウエアであるため、そのデータ量は非常に多く、制限されたメモリ容量、能力の比較的低いＣＰＵを有したボードコンピュータに、このようなデータベース用アプリケーションソフトを組み込むことはできない。また、仮に、メモリ容量の制限、ＣＰＵの能力限界が解消されたボードコンピュータを製作した場合であっても、各ボードコンピュータ或いは各種のクライアント機器にデータベース操作専用のアプリケーションプログラムを移植する作業は多くの時間と工数を必要とする。
【０００６】
このため、実際には、多数の温度センサの計測温度データなどをホストコンピュータが収集して管理する場合、各温度センサなどが接続された各スレーブコンピュータに対し、ホストコンピュータがポーリングを行なって温度データを順に収集し、記録していくように使用される。
【０００７】
しかしながら、このようなホストコンピュータが各スレーブコンピュータに対し、ポーリングを行なって温度データを順に収集し、記録するシステムでは、各温度センサに接続されたスレーブコンピュータに計測温度データが一時記憶されるため、例えば温度センサを設置したデータ発生部位において、そのデータの発生時点で、リアルタイムに（即時に）データベースへのデータの書き込み、更新などのデータ処理を実施することができない、つまり、スレーブコンピュータ（クライアント機器）が主体となって、即時にデータベースサーバシステムに対しデータの書き込みや更新を行なうことができない、という課題がある。
【０００８】
一方、従来、上記特許文献１などにおいて、データベースサーバシステムに対し、クライアント機器に設けられたアプリケーションプログラムから、ＴＣＰ／ＩＰ通信によりデータを送受信して、データベース操作を行なうデータベース操作用通信システムが、提案されている。
【０００９】
しかしながら、この従来のデータベース操作用通信システムは、比較的少量のデータを頻繁に、クライアント機器からデータベースサーバシステムに送信することができるものの、各クライアント機器には、オペレーティングシステム上に、ＴＣＰ／ＩＰドライバ及びソケットインターフェースに加えて、データベース操作命令と通信制御命令を処理するクライアントモジュールを設け、さらに使用者の操作に基づきデータベース操作命令を発生させるアプリケーションプログラムを置く必要がある。このため、メモリ容量が制限され、ＣＰＵの能力に限界のあるボードコンピュータに、このような多数のソフトウエアを置くことは、全く不可能であり、特許文献１のようなデータベース操作用通信システムは上記のようなボードコンピュータを使用するクライアント機器には使用することができない。
【００１０】
本発明は、上述の課題を解決するものであり、データベース操作専用のアプリケーションプログラムを使用することなく、クライアント機器からデータベースサーバシステムに対しデータベース操作を簡便に行なうことができるデータベース操作方法とデータベース操作システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係るデータベース操作方法は、データベースに対しデータの格納、変更などのデータベース操作を行なうデータベースサーバを有したデータベースサーバシステムと通信プログラムを有したクライアント機器がネットワークを介して通信可能に接続され、該クライアント機器からのデータベース操作要求に応じて、該データベースサーバが該データベースから検索して読み出したデータを、該クライアント機器上の通信プログラムに送信し、或いは該クライアント機器上の通信プログラムから送信したデータを該データベースサーバがデータベースに格納し、或いは該クライアント機器上の通信プログラムから送信した条件に基づき、該データベースのデータを更新するデータベース操作方法であって、該クライアント機器上の通信プログラムがデータベース操作要求を該データベースサーバシステムに送信する第一の過程と、該データベースサーバが該データベースに対して要求のあったデータ検索またはデータ格納若しくはデータ更新の操作を行なう第二の過程と、該データベースの操作結果を該クライアント機器上の通信プログラムに送信する第三の過程と、を含み、該クライアント機器上の通信プログラムがデータベース操作要求とその結果を該データベースサーバシステムと交換する際、データベース操作専用のアプリケーションプログラムを使用することなく、情報交換プロトコルのみを規定し、少なくともネットワーク接続に必要な最小限の通信プログラムのみを使用して、該クライアント機器上の通信プログラムがデータベース操作要求とその結果の交換を行なうことを特徴とする。
【００１２】
ここで、上記クライアント機器上の通信プログラムは、ネットワーク接続に必要な通信プロトコルを規定したプロトコル利用プログラムを備え、プロトコル利用プログラムは、上記データベースサーバシステムに接続要求信号を送信し、該データベースサーバシステムからの接続承認信号を受信し、データベース名、テーブル名、データベース接続方法、データベース操作コマンドなどを含むデータセットを送信し、さらにデータベースサーバシステムからの要求信号に応じて、ユーザ名、パスワードを送信するように構成することができる。
【００１３】
また、データベースサーバシステムには、プロトコル実行プログラムとデータベースに接続しデータ操作を行なう接続・操作用プログラムが置かれ、接続・操作用プログラムが上記クライアント機器のプロトコル利用プログラムから送られたユーザ名、パスワードに基づき接続の可否を判定し、該プロトコル実行プログラムが該接続可否のステータスをクライアント機器のプロトコル利用プログラムに送出し、接続可のステータスを該プロトコル利用プログラムが受け付けたとき、該プロトコル利用プログラムは、データの操作指令をプロトコル実行プログラムに送出し、データの操作指令を受け付けたプロトコル実行プログラムは該操作指令を接続・操作用プログラムに送出し、接続・操作用プログラムが当該データをデータベースに格納、更新するなどの操作を行なうように構成することができる。
【００１４】
また、接続・操作用プログラムは、データをデータベースに格納、更新などの操作を行なった後、操作に成功したか失敗したかの実行結果をプロトコル実行プログラムに送出し、プロトコル実行プログラムは実行結果を受け付けると、実行結果のステータスをプロトコル利用プログラムに送出し、プロトコル利用プログラムは実行結果のステータスを受け付け、これが成功の実行結果であった場合、次の継続処理に移行するように構成することができる。
【００１５】
また、本発明のデータベース操作システムは、データベースに対しデータの格納、更新などのデータベース操作を行なうデータベースサーバを有したデータベースサーバシステムと通信プログラムを有したクライアント機器がネットワークを介して通信可能に接続され、該クライアント機器からのデータベース操作要求に応じて、該データベースサーバが該データベースから検索して読み出したデータを、該クライアント機器上の通信プログラムに送信し、或いは該クライアント機器上の通信プログラムから送信したデータを該データベースサーバがデータベースに格納し、或いは該クライアント機器上の通信プログラムから送信した条件に基づき、該データベースのデータを更新するデータベース操作システムであって、該クライアント機器上の通信プログラムからデータベース操作要求を該データベースサーバシステムに送信する操作要求送信手段と、該クライアント機器上の通信プログラムから該データベースサーバシステムの該データベースに対して要求のあったデータ検索またはデータ格納若しくはデータ更新の操作を実行するデータベース操作手段と、該データベースサーバシステムから該データベースの操作結果を該クライアント機器上の通信プログラムに送信する操作結果送信手段と、を含み、該クライアント機器上の通信プログラムがデータベース操作要求とその操作結果を該データベースサーバシステムと交換する際、データベース操作専用のアプリケーションプログラムを使用することなく、情報交換プロトコルのみを規定し、少なくともネットワーク接続に必要な最小限の通信プログラムのみを使用して、該クライアント機器と該データベースサーバシステムとの間でデータベース操作要求とその操作結果の交換を行なうことを特徴とする。
【００１６】
ここで、上記操作要求手段は、クライアント機器のプロトコル利用プログラムから構成することができる。また、上記データベース操作手段は接続・操作用プログラムから構成することができ、操作結果送信手段はプロトコル実行プログラムから構成することができる。また、上記データベースは、データベースサーバ内に置くことができるが、データベースサーバの外にデータベースを設置し、ネットワークを介してデータベースサーバとデータベースを接続するように構成することもできる。
【発明の効果】
【００１７】
上記構成のデータベース操作方法によれば、クライアント側でデータベースに挿入するデータなどが発生した場合、クライアント機器上の通信プログラムが、データベース操作要求をデータベースサーバシステムに送信し、データベースサーバシステムのデータベースサーバに対して要求のあったデータの検索、格納、または更新などの操作が、データベースサーバシステム側のプロトコル実行プログラムによって実行される。そして、データベースの操作結果がプロトコル実行プログラムからクライアント機器上の通信プログラムに送信される。
【００１８】
このようなクライアント機器上の通信プログラムがデータベース操作要求とその結果をデータベースサーバシステムと交換する際、データベース操作専用のアプリケーションプログラムを使用することなく、情報交換プロトコルのみを規定し、少なくともネットワーク接続に必要な最小限の通信プログラムのみを使用して、クライアント機器上の通信プログラムがデータベース操作要求とその結果の交換を行ない、クライアント機器が主体となって、データベースサーバに対しデータの格納、更新、またはデータ検索の操作などを実施することができる。
【００１９】
したがって、データを送信し或いはデータベース操作命令を行う各クライアント機器に、Access，Oracle，Excelなどのデータベース操作専用のアプリケーションプログラム、或いはデータベース操作命令と通信制御命令を処理するクライアントモジュールなどのソフトウエアは不要となり、クライアント機器に、メモリ容量の少ない、ＣＰＵ能力の比較的小さいボードコンピュータを使用することが可能となる。
【００２０】
このため、家電製品や各種の産業機器に搭載されるボードコンピュータから、ネットワークを介して接続されたデータベースサーバシステムに対し、ボードコンピュータが主体となって、検出データ等の各種データを、リアルタイムでデータベースに挿入し、更新し、検索するなどのデータベース操作を、簡便に行うことができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の一実施形態を図面に基づいて説明する。図１はデータベース操作システムの構成ブロック図を示している。このデータベース操作システムは、図１に示すように、データベースサーバ１０及びデータベース１１を有するデータベースサーバシステム１と、そのデータベースサーバシステム１に対しイーサネット（登録商標）等のネットワーク４を介して接続された複数のクライアント機器としてのボードコンピュータ２とから構成され、基本的には、ＳＱＬコマンドを用いる独自のコマンド・レスポンス方式のプロトコルを設定し、ボードコンピュータ２からデータベースサーバ１０にデータベース操作用のコマンドを送信し、データベースサーバ１０からボードコンピュータ２にそのレスポンスを送信してデータベース操作を実施する。
【００２２】
ボードコンピュータ２は、ネットワーク４を介してデータ通信を行なうためのＴＣＰ／ＩＰの通信プロトコルをサポートする、例えばITRON,Linux,Windows（登録商標）等のオペレーションシステムを有するコンピュータであって、産業用の制御機器、家電製品などに組み込まれ、或いは外付けされる形態で制御機器、家電製品などの電気機器に接続される。図１のように、各ボードコンピュータ２の入出力回路には温度などの物理量を測定する各種センサからなる測定センサ３を接続する場合、ボードコンピュータ２は、入出力回路に設けたＡ／Ｄコンバータにより測定センサ３から送られる温度等の測定値をデジタル値に変換し、所定のタイミングで、或いは別の現象の発生等を契機としたタイミングで、測定データを取り込むように構成される。
【００２３】
なお、温度センサ等の測定センサは、各種家電製品、産業用の制御機器などの電気機器に内蔵され、その電気機器内でデジタル値に変換した測定センサの測定データ値を、電気機器に接続されたボードコンピュータ２に送るように構成することもできる。
【００２４】
ボードコンピュータ２は、このような測定センサ３から送られた温度測定値等のデータ値を、ネットワーク４を通してデータベースサーバシステム１に送出し、そのデータベース１１にデータ値を挿入し、更新し、或いはデータ検索を行なうように動作する。
【００２５】
このために、本データベース操作システムでは、ＴＣＰコネクション上において、簡単なテキストメッセージを含むコマンドとレスポンスの通信プロトコルを使用して、データベースサーバシステム１に対し、データベースの操作指令をボードコンピュータ２のプロトコル利用プログラム２１から送出して実施する。このために、ボードコンピュータ２には、通信プログラムとしてのプロトコル利用プログラム２１が置かれる。
【００２６】
データベース１１は、各ボードコンピュータ２から送られたデータ値（例えば温度検出データなどの測定データ）を、送信元のボードコンピュータ２のデバイス番号、タイムスタンプと共に記憶するテーブルなどの記憶領域を有した、例えばリレーショナル型のデータベースである。
【００２７】
データベースサーバ１０は、データベース１１に対しデータを挿入し、データを更新（削除を含む）し、或いはデータの検索などデータ操作を行うために、上記接続・操作用プログラムとして、ＯＤＢＣ（0pen Database Connectivity；マイクロソフト社により提唱された、データベースにアクセスするための標準仕様のソフトウエア）ドライバ１２と、通信プログラムを含むプロトコル実行プログラム１３を備えて構成される。
【００２８】
データベースサーバ１０のプロトコル実行プログラム１３とボードコンピュータ２のプロトコル利用プログラム２１間のコマンドとレスポンスは、ボードコンピュータ２からデータベースサーバ１０へのアクセス、及びデータベース１１に対するデータの挿入、更新、検索などのデータベース操作を簡便に行なうために、ＳＱＬ（Structured Query Languageで、リレーショナルデータベースの操作に使用する言語）を使用して作成される。
【００２９】
プロトコル利用プログラム２１は、ボードコンピュータ２に配設されたITRON,Linux,Windows（登録商標）などのオペレーションシステム上で動作する通信プログラムであるが、オペレーションシステムを置かないコンピュータにおいて動作させることもできる。また、プロトコル実行プログラム１３とプロトコル利用プログラム２１は、上記のように、ＴＣＰコネクション上で簡単なテキストメッセージによって、コマンド・レスポンス方式の独自のプロトコルを作成し、データベースの操作をボードコンピュータ２から可能としている。
【００３０】
データベース操作を行なう際の通信手順は、基本的には、ボードコンピュータ２のプロトコル利用プログラム２１からデータベースサーバ１０のプロトコル実行プログラム１３への接続要求信号の送出時、接続要求待ちの状態となる初期状態、プロトコル利用プログラム２１から認証情報をプロトコル実行プログラム１３が受け付け、データベースサーバ１０のＯＤＢＣドライバ１２がクライアントの認証を行なって接続するまでの認証段階、及びＯＤＢＣドライバ１２に接続され、ＳＱＬコマンドによりデータベース操作が実行可能な実行段階へと遷移し、プロトコル利用プログラム２１からプロトコル実行プログラム１３へ終了コマンドを送って終了する。
【００３１】
データベースの操作を開始する際のプロトコルでは、例えば、クライアント機器としてのボードコンピュータ２から、コネクション接続要求信号が送信されたとき、接続承認信号を送出すると共に、ボードコンピュータ２から送信されたデータセット名（ＤＳＮ）及びパスワードを受け付け、ＯＤＢＣドライバ１２に対し接続要求信号を送出する。
【００３２】
このとき、ＯＤＢＣドライバ１２は接続の可否を判定して、そのＳＱＬ接続ステータスをプロトコル実行プログラム１３に送出し、プロトコル実行プログラム１３は、接続の可否を示すＳＱＬ接続ステータスをボードコンピュータ２のプロトコル利用プログラム２１に送出する。そして、接続可のＳＱＬ接続ステータスが送られたプロトコル利用プログラム２１からデータベースの操作指令（例えば挿入操作指令）が送出されたとき、その挿入操作指令を受け付け、それをＯＤＢＣドライバ１２に送出する。そして、ＯＤＢＣドライバ１２がデータベース１１に対しデータの挿入、変更などのデータベース操作を行ない、その操作の成功または失敗を示す実行結果ステータスがプロトコル実行プログラム１３に送出され、プロトコル実行プログラム１３は、その操作の成功または失敗を示す実行結果ステータスをボードコンピュータ２のプロトコル利用プログラム２１に送出するように構成されている。
【００３３】
一方、クライアント機器としてのボードコンピュータ２はネットワーク４に接続され、ボードコンピュータ２には、上記のように、ITRONなどのオペレーションシステム２０と共に、プロトコル利用プログラム２１が設置される。データベース操作を行なう際、プロトコル利用プログラム２１は、データベースサーバ１０のプロトコル実行プログラム１３に対しコマンドメッセージを送信することによりその操作が行なわれ、コマンドを処理した結果については、データベースサーバ１０のプロトコル実行プログラム１３からボードコンピュータ２のプロトコル利用プログラム２１に対しレスポンスが送信される。つまり、ボードコンピュータ２からデータベースサーバ１０に対しての要求は、全てコマンドメッセージを送信することによって行なわれ、そのコマンドに対しデータベースサーバ１０からボードコンピュータ２にレスポンスが送信され、その際のコマンドとレスポンスは、例えば図６，７のように作成される。
【００３４】
認証段階におけるコマンドとして、図６に示すように、例えば「ＤＳＮ」「ＵＳＥＲ」「ＰＡＳＳ」「ＡＵＴＨ」「ＳＨＯＷ」「ＳＥＴ」「ＥＸＥＣ」「ＲＥＴＲ」「ＯＰＥＮ」「ＦＥＴＣＨ」「ＣＬＯＳＥ」「ＤＥＳＣ」「ＴＲＡＮ」「ＳＴＡＴ」「ＱＵＩＴ」が定義される。図６に示すように、「ＤＳＮ」は認証状態におけるデータベース名、テーブル名などを示すデータセット名を送信するためのコマンド、「ＵＳＥＲ」はクライアントであるボードコンピュータのユーザ名を送信するためのコマンド、「ＰＡＳＳ」はパスワードを送信するためのコマンド、「ＡＵＴＨ」はＤＳＮ，ＵＳＥＲ，ＰＡＳＳを一括して送信するためのコマンドである。また、「ＳＨＯＷ」は認証状態におけるセッションパラメータの参照のためのコマンド、「ＳＥＴ」はセッションパラメータの設定のためのコマンドである。
【００３５】
さらに、「ＥＸＥＣ」はＯＤＢＣ接続段階における更新系ＳＱＬを実行するためコマンド、「ＲＥＴＲ」はＯＤＢＣ接続段階における検索系ＳＱＬを実行するためコマンド、「ＯＰＥＮ」は検索カーソルを開くためのコマンド、「ＦＥＴＣＨ」はレコード取得のためのコマンド、「ＣＬＯＳＥ」は検索カーソルを閉じるためのコマンド、「ＴＲＡＮ」はトランザクション機能の実行コマンド、「ＳＴＡＴ」は接続クライアントの情報取得のためのコマンド、「ＱＵＩＴ」は接続終了のためのコマンドである。
【００３６】
このように、各コマンドは、ＡＳＣＩＩの３文字乃至５文字から構成され、それらコマンドの次に、例えばＳＱＬ構文からなる引数が指定される。例えば、データベース１１のテーブルt2の値を、(1,'aaa')に更新する場合、ＥＸＥＣコマンドは、「EXEC insert into t2 values(1,'aaa'timestamp)」のように、作成される。ここで、「EXEC」がコマンド、「insert into t2 values(1,'aaa'timestamp)」がＳＱＬ構文、「(1,'aaa'timestamp)」は、デバイス番号、データ値、発生日時である。
【００３７】
また、ＥＸＥＣコマンドでUpdate文を実行する場合、「EXEC update t1 set a=1,b=2 where c=3」のように、作成される。また、ＳＥＬＥＣＴ文を実行し、結果のレコードを返す場合、そのＲＥＴＲコマンドは、「RETR select name from t1」のように、作成される。また、検索カーソルを開き、ＳＥＬＥＣＴ文を実行する場合、そのＯＰＥＮコマンドは、「OPEN a1 select name from t1」のように作成される。また、ＯＰＥＮコマンドによって作成されたカーソル名を指定し、検索項目の情報を取得する場合、そのＤＥＳＣコマンドは、「DESC a1」のように作成される。さらに、ＯＰＥＮコマンドによって作成されたカーソル名を指定し、検索カーソルから１レコードを取得する場合、そのＦＥＴＣＨコマンドは、「FETCH zzz」のように作成される。また、ＯＰＥＮコマンドによって作成されたカーソル名を指定し、そのカーソルを閉じる場合、そのＣＬＯＳＥコマンドは、「CLOSE zzz」のように作成される。
【００３８】
一方、コマンドに対するレスポンスは、図７に示すように、各コマンドに対応した応答メッセージとして、ステータス、コード、その意味が作成される。例えば、図７に示すように、全てのコマンドに対する成功（肯定）の応答として、コード「０００」、ステータス「"+OK"」が設定される。また、例えば、ＥＸＥＣコマンドに対しＳＱＬ構文からなる引数が指定されてない場合、コード「６００」、ステータス「"-NG"」が設定され、ＣＬＯＳＥコマンドに対しカーソル名が指定されてない場合、コード「６３０」、ステータス「"-NG"」が設定される。
【００３９】
このように、クライアント機器のボードコンピュータ２のプロトコル利用プログラム２１から、例えばＯＤＢＣ接続段階で、「EXEC insert into t2 values(1,'aaa')」のＥＸＥＣコマンドがプロトコル実行プログラム１３に送られ、コマンドの操作が成功した場合、プロトコル実行プログラム１３は、「+OK 000 EXEC command successful.」のようなレスポンスをプロトコル利用プログラム２１に送信する。
【００４０】
次に、上記構成のデータベース操作システムの動作を、図２乃至図５に示すフローチャートを参照して説明する。
【００４１】
図２に示すように、先ず、ステップ１００で、ボードコンピュータ２が測定センサ３から温度測定値などのデータ値を取り込むと、プロトコル利用プログラム２１は、その測定データをデータベース１１に挿入或いは更新するために、コネクション接続要求信号を、ネットワーク４を通してデータベースサーバ１０に送出する（ステップ１１０）。
【００４２】
次に、データベースサーバ１０のプロトコル実行プログラム１３は、ステップ１２０で、コネクション接続要求信号を受け付け、ボードコンピュータ２のプロトコル利用プログラム２１にコネクション接続承認信号を送出する（ステップ１３０）。
【００４３】
このとき、ボードコンピュータ２のプロトコル利用プログラム２１は、ステップ１４０で、コネクション接続承認信号を受け付け、データベースサーバ１０のプロトコル実行プログラム１３に対し、データベース名、テーブル名、データベース接続方法からなるデータセット名（ＤＳＮ）を送出する（ステップ１５０）。さらに、データベースサーバ１０のプロトコル実行プログラム１３は、ステップ１６０で、このデータセット名（ＤＳＮ）を受け付けると、そのデータセットの情報を用いてデータベース操作を開始し、先ず、ユーザ名の要求信号をボードコンピュータ２のプロトコル利用プログラム２１に送出する（ステップ１７０）。
【００４４】
次に、ボードコンピュータ２のプロトコル利用プログラム２１は、ステップ１８０で、ユーザ名の要求信号を受け付けると、該当するユーザ名（送信元のデバイス番号等）をプロトコル実行プログラム１３に送出する（ステップ１９０）。そして、データベースサーバ１０のプロトコル実行プログラム１３は、ステップ２００で、このユーザ名を受け付けると、次に、パスワード要求信号をボードコンピュータ２のプロトコル利用プログラム２１に送出する（ステップ２１０）。
【００４５】
次に、ボードコンピュータ２のプロトコル利用プログラム２１は、ステップ２２０で、パスワード要求信号を受け付け、該当するパスワードをプロトコル実行プログラム１３に送出する（ステップ２３０）。データベースサーバ１０のプロトコル実行プログラム１３は、ステップ２４０で、このパスワードを受け付け、次に、データベースサーバ１０内のＯＤＢＣドライバ１２に、ユーザ名、パスワード、ＤＳＮを含む接続要求信号を送出する（ステップ２５０）。
【００４６】
図３に示すように、このとき、ＯＤＢＣドライバ１２は、ステップ２６０で、接続要求信号を受け付け、次に、ステップ２７０で、受け付けたユーザ名、パスワード、ＤＳＮに基づき、接続の可否を判定する。ここで、ＯＤＢＣドライバ１２は、受け付けたユーザ名、パスワード、ＤＳＮが予め登録されたものと一致し、接続可の判定をした場合、次にステップ２８０に進み、接続可のＳＱＬ接続ステータスをプロトコル実行プログラム１３に送出する。
【００４７】
一方、ＯＤＢＣドライバ１２の受け付けたユーザ名、パスワード、ＤＳＮが予め登録されたものと不一致であって、接続不可の判定をされた場合、次に、接続不可のＳＱＬ接続ステータスをプロトコル実行プログラム１３に送出する（ステップ２９０）。
【００４８】
プロトコル実行プログラム１３は、ステップ３００で、この接続可または接続不可のＳＱＬ接続ステータスを受け付けると、ボードコンピュータ２のプロトコル利用プログラム２１に、この接続可または接続不可のＳＱＬ接続ステータスを送出する（ステップ３１０）。
【００４９】
このとき、プロトコル利用プログラム２１は、ステップ３２０で、接続可または接続不可のＳＱＬ接続ステータスを受け付け、次に、接続可または接続不可か、つまり接続成功か、接続失敗かを判定する（ステップ３３０）。ここで、接続に成功した場合、次に、データの操作指示を行なうためのデータを含むＳＱＬコマンドを、データベースサーバ１０のプロトコル実行プログラム１３に送出する（ステップ３５０）。例えば、データベース１１のテーブルt2の値を、(1,'aaa')に更新（挿入）する場合、このときのＳＱＬコマンドは、「EXEC insert into t2 values(1,'aaa'timestamp)」のように作成され、送出される。
【００５０】
プロトコル実行プログラム１３は、ステップ３６０で、このデータ操作指示のためのデータを含むＳＱＬコマンドを受け付けると、次に、ステップ３７０で、このＳＱＬコマンドをＯＤＢＣドライバ１２に送出する。図４に示すように、このとき、ＯＤＢＣドライバ１２は、ステップ３８０で、このＳＱＬコマンドを受け付けると、次のステップ３９０で、データベース１１に対し、指示されたデータの挿入、更新などの操作を行なう。例えば、ＳＱＬコマンドが「EXEC insert into t2 values(1,'aaa'timestamp)」の場合、データベース１１のテーブルt2のデータ値を(1,'aaa' timestamp)に更新（挿入）する操作を行なう。
【００５１】
次に、ＯＤＢＣドライバ１２は、ステップ４００で、データベース１１に対する上記データの更新（挿入）操作が成功かまたは失敗かを判定する。そして、ＯＤＢＣドライバ１２は、データの更新（挿入）操作が成功の場合、ステップ４１０で、成功の実行結果ステータスをプロトコル実行プログラム１３に送出し、一方、データの更新（挿入）操作が失敗の場合、ステップ４２０で、失敗の実行結果ステータスをプロトコル実行プログラム１３に送出する。
【００５２】
このとき、プロトコル実行プログラム１３は、ステップ４３０で、データの更新（挿入）操作の成功または失敗を示す実行結果ステータスを受け付け、次に、プロトコル実行プログラム１３は、ステップ４４０で、データの更新（挿入）操作の成功または失敗の実行結果ステータスを、ボードコンピュータ２のプロトコル利用プログラム２１に送出する。
【００５３】
ボードコンピュータ２のプロトコル利用プログラム２１は、ステップ４５０で、この実行結果ステータスを受け付けると、次に、ステップ４６０で、データの更新（挿入）操作が成功したかまたは失敗したかを判定し、ここで、データの更新（挿入）操作が失敗した場合、次に、ステップ４７０に進み、異常終了の処理を行なって、この回のデータの更新操作処理を終える。
【００５４】
一方、プロトコル利用プログラム２１は、ステップ４６０で、データの更新（挿入）操作が成功したと判定した場合、次に、ステップ４８０で、データベース操作を継続するか否かを判定し、データベース操作を継続する場合、再び上記ステップ３５０に戻り、データの操作指示を行なうためのデータを含むＳＱＬコマンドを作成し、データベースサーバ１０のプロトコル実行プログラム１３にそれを送出する。
【００５５】
一方、ステップ４８０で、データベース１１に対する操作が終了と判定した場合、プロトコル利用プログラム２１は、次に、ステップ４９０で、終了コマンド「QUIT」をデータベースサーバ１０のプロトコル実行プログラム１３に送出する。プロトコル実行プログラム１３は、この終了コマンド「QUIT」を受け付けると、接続の切断処理を行ない、次に、ステップ５２０で、切断が成功したか否かを示す切断結果をプロトコル利用プログラム２１に送出する。
【００５６】
プロトコル利用プログラム２１は、ステップ５３０で、この切断結果を受け付けると、次に、ステップ５４０で、その切断結果に基づき、切断は成功か否かを判定し、切断成功の場合は、ステップ５５０で正常終了の処理を行い、切断失敗の場合は、ステップ５６０で、異常終了の処理を行い、この回のデータベース操作を終了する。
【００５７】
このように、本発明のデータベース操作システムによれば、クライアント機器側のプロトコル利用プログラム２１とデータベースサーバ１０側のプロトコル実行プログラム１３との間において、簡易なテキストメッセージによるコマンド・レスポンス方式のプロトコルにより、データベース操作用のコマンド及びデータを送り、データベース操作を行なうから、Access  Oracle等のデータベース操作専用のアプリケーションプログラムを使用する必要がない。
【００５８】
このため、メモリ容量の少ない、ＣＰＵ能力の比較的小さいボードコンピュータを使用することが可能となり、ネットワークを介して接続されたデータベースサーバシステムに対し、ボードコンピュータが主体となって、検出データ等の各種データを、リアルタイムでデータベースに挿入し、更新し、検索するなどのデータベース操作を、簡便に行うことができる。
【００５９】
なお、上記実施形態では、データベース操作として、データの更新（挿入）について説明したが、データベース１１におけるデータの検索、データの集計処理、データの分析処理などを、ボードコンピュータ２のプロトコル利用プログラム２１からのコマンドにより実行させることもできる。
【００６０】
また、上記実施形態では、ボードコンピュータ２にオペレーションシステム２０を置き、オペレーションシステム２０上でプロトコル利用プログラム２１を動作させたが、オペレーションシステムなしの環境下でプロトコル利用プログラムを使用することも可能である。
【００６１】
また、上記実施形態では、接続・操作用プログラムとしてＯＤＢＣドライバ１２を使用したが、例えばデータベースソフトがOracle社製の場合、Oracle用の接続・操作用プログラムを使用することになる。
【図面の簡単な説明】
【００６２】
【図１】本発明の一実施形態を示すデータベース操作システムの構成ブロック図である。
【図２】ボードコンピュータのプロトコル利用プログラムとデータベースサーバのプロトコル実行プログラム間のコマンド、データの流れを示す流れ図である。
【図３】ボードコンピュータのプロトコル利用プログラムとデータベースサーバのプロトコル実行プログラム間のコマンド、データの流れを示す流れ図である。
【図４】ボードコンピュータのプロトコル利用プログラムとデータベースサーバのプロトコル実行プログラム間のコマンド、データの流れを示す流れ図である。
【図５】ボードコンピュータのプロトコル利用プログラムとデータベースサーバのプロトコル実行プログラム間のコマンド、データの流れを示す流れ図である。
【図６】コマンドの一覧表を示す説明図である。
【図７】レスポンスコードの一覧表を示す説明図である。
【符号の説明】
【００６３】
１      データベースサーバシステム
２      ボードコンピュータ
３      測定センサ
４      ネットワーク
１０    データベースサーバ
１１    データベース
１２    ＯＤＢＣドライバ
１３    プロトコル実行プログラム
２０    オペレーションシステム
２１    プロトコル利用プログラム
【図１】
2008112282.tif 000003
【図２】
2008112282.tif 000004
【図３】
2008112282.tif 000005
【図４】
2008112282.tif 000006
【図５】
2008112282.tif 000007
【図６】
2008112282.tif 000008
【図７】
2008112282.tif 000009