<< Click to Display Table of Contents >> マニュアル > 監視システム構築ガイド > サーバロジックの構築 > サーバ側でSQLを実行する(SQL実行(ODBC)) |
概要
ここでは、「SQL実行(ODBC)アクション」を使用して、SQLを実行してDBの値を更新するサンプルについて解説します。
本サンプルでは、insertコマンドによるデータ追加及び、deleteコマンドによるテーブルデータの削除を行います。
使用アクション:SQL実行(ODBC)アクション
SQL実行(ODBC)アクションに登録するSQL文は、オンライン後に動的に編集することはできません。例えば、何らかのロジックにより発行するSQL文の内容を切り替えたい場合など、より複雑なSQLコマンドの発行が必要になる場合は、スクリプトVer2アクションのスクリプトを使用する方法があります。詳細については「スクリプトVer2からDBにアクセスする」を参照して下さい。 |
サンプルのダウンロード
このページで紹介されている作成例には、サンプルが用意されています。
サンプルは以下からダウンロードすることができます。
上記のサンプルには、テーブルを生成するSQLファイル(DDL)が含まれています。テーブルを作成する際の参考としてください。
動作確認
本サンプルはデータベース上の「DATA_TABLE」テーブルに対してODBC経由で接続し、SQLを発行します。サンプルを動作させるには、接続先となるデータベースを用意し、ODBC接続設定を行ってください。データベースの準備が整ったら、Panel Serverからサンプルのサーバ設定ファイルを読み込み、アプリケーションをオンラインにしてください(黄色矢印)。
このサンプルでは、以下のようなテーブルが作成されているものとします。
(SQLServer2017の例)
オンライン後、U01.F01.T01にTRUEを書き込むと、DATA_TABLEに新規レコードが追加されることを確認してください。
その後、U01.F01.T02にTRUEを書き込むと、DATA_TABLEのレコードが削除されることを確認してください。
設定手順
データベースの準備
1.データベースを準備します。
接続先のデータベースに、「DATA_TABLE」というテーブルを作成し、以下のようなレイアウトを設定してください。
(SQLServer2017の例)
タグ設定
1.タグを設定します。
仮想デバイスとして「U01」というユニットを追加し、F01フォルダの下に以下の2点のタグを作成してください。これらのタグは、タグイベントのトリガとして使用します。
タグ名 |
アドレス |
目的 |
---|---|---|
U01.F01.T01 |
X0000 |
insertコマンドを実行するためのトリガとなるタグ |
U01.F01.T02 |
X0001 |
deleteコマンドを実行するためのトリガとなるタグ |
アクションの設定
1.SQL実行(ODBC)アクションを2つ追加します。
この例では、「A01」及び「A02」アクションを追加しています。
2.各アクションのプロパティを設定します。
ODBC設定タブからODBCデータソースの設定及び、SQL文の記述を行います。
ODBCの設定手順は、各DBMSとも共通的な操作により行うことができます。ODBC設定については、アクションの共通設定の「ODBC設定」の記述を参照してください。
SQL文は以下の内容を設定します。
(A01)
INSERT INTO DATA_TABLE ( FIELD1, FIELD2 ) VALUES (1, 'abc'); |
(A02)
DELETE FROM DATA_TABLE; |
イベントの設定
1.アクションを実行するためのタグイベントを作成します。
「E01」及び「E02」の2つのタグイベントを登録します。
2.E01を設定します。
E01は、U01.F01.T01がTRUEになったらアクションを実行するように設定します。実行アクションには「A01」を指定してください。
3.E02を設定します
E02はU01.F01.T02がTRUEになったらアクションを実行するように設定します。実行アクションには「A02」を指定してください。