Hitachi

DBPARTNER2 Client 操作ガイド


2.6.3 DABrokerドライバのデータソースと通信ドライバの設定

DABrokerドライバ(DBPARTNER/Serverドライバ)は,DABrokerを経由してデータベースにアクセスするときに必要です。

DABrokerドライバをインストールして環境を設定する方法について説明します。

  1. データソースのセットアップ

    接続先サーバのセンタ名称を「データソース名」としてODBCドライバに登録します。また,接続先サーバのホスト名称,使う通信ドライバ,応答監視時間を設定します。使える通信ドライバは「Windows Sockets」だけです。

  2. 通信ドライバの環境設定

    DABrokerドライバ(DBPARTNER/Serverドライバ)は,TCP/IPを使用してサーバプログラムと通信しています。そのため,TCP/IPに関する通信ドライバの環境を,次の手順に従って設定してください。

    • ホスト名称とインターネットアドレスの登録

      hostsファイルに,接続するサーバのホスト名称とインターネットアドレスを登録します。ホスト名称には,[DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスで指定するホスト名称を指定します。ホスト名称の登録方法については,通信ドライバのマニュアルを参照してください。

    • ポート番号の登録

      servicesファイルに,接続するサーバのサービス名,ポート番号および通信プロトコル種別を登録します。

      ポート番号に登録する内容を次に示します。

        サービス名:DBPARTNER_SV

        ポート番号:XXXXX

        通信プロトコル種別:tcp

        (登録例)DBPARTNER_SV 40179/tcp

      XXXXX:サーバ側のservicesファイルに定義されているDABROKER_SVの値と一致させます。DABROKER_SVの値が40179の場合,DBPARTNER_SVの登録を省略できます。

DABrokerドライバ(DBPARTNER/Serverドライバ)のセットアップ手順を図2-4に示します。

図2‒4 DABrokerドライバ(DBPARTNER/Serverドライバ)のセットアップ手順

[図データ]

〈この項の構成〉

(1) データソースのセットアップ(新規追加)

DABrokerドライバ(DBPARTNER/Serverドライバ)を使うときに,データソースを新規で追加する手順を説明します。

データソースをセットアップするときは,ODBC接続を定義する画面([ODBCデータソースアドミニストレータ]ダイアログボックス)を開いてください。

(a) [DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスに項目を設定

サーバにアクセスするために,接続先のサーバのセンタ名称を「データソース名」としてODBCドライバに追加します。同時に接続先の環境を設定します。

  1. [ODBCデータソースアドミニストレータ]ダイアログボックスの[追加(D)...]ボタンをクリックします。[データソースの新規作成]ダイアログボックスが表示されます。

  2. 使う通信ドライバに応じてODBCドライバの中から選んでから[OK]ボタンをクリックします。ボタンをクリックすると,[DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスが表示されます。

    [図データ]

[DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスに設定する項目を次に示します。

  • [データソース名]テキストボックス  〜〈1〜32けたの文字列〉

    データソースを識別するために任意の名称を指定します。データソース名は省略できません。

    (例)東京センタ

    このデータソース名は,接続するサーバをユーザが認識できるようにするための名称です。ユーザが認識できればどんな名称を指定してもかまいません。すべて全角文字(シフトJISコード)で入力するときは16文字まで,すべて半角文字(JIS8コード)で入力するときは32文字まで入力できます。全角文字と半角文字が混在してもかまいません。

  • [ホスト名称]テキストボックス  〜〈1〜32けたの文字列〉

    使う通信ドライバに登録されている接続先システムのインターネットアドレスに対応するホスト名称を指定します。ホスト名称は省略できません。

  • [接続データベース]テキストボックス  〜〈1〜32けたの文字列〉《HiRDB》

    接続するデータベースの種別を指定します。次に示す項目から選んで指定してください。

    HiRDB:HiRDBを示します。

    Oracle:ORACLEを示します。

    SQL Server:Microsoft SQL Serverを示します。

    SQL Anywhere:Sybase Adaptive Server Anywhereを示します。

    XDM/RD:XDM/RD E2を示します。

    RDB1 E2:RDB1 E2を示します。

    SQL/K:RDB編成ファイルを示します。

    XDM/SD E2:XDM/SD E2を示します。

    PDM2:PDMII E2を示します。

    SQL/K SPOOL:VOSKスプールファイルを示します。

  • [データベース識別子]テキストボックス  〜〈文字列〉

    • データベースがHiRDB又はORACLEの場合

      サーバに複数のデータベースが存在するときに,接続するデータベース識別子を指定します。

      HiRDBの場合

      接続するHiRDBシステムのポート番号を指定します。データベースが一つでPCサーバにHiRDBのポート番号が設定してあるときは,指定しなくても接続できます。省略すると,PDNAMEPORTの値が仮定されます。

      ORACLEの場合

      ネットサービス名を指定します。データベースが一つしかないときは,指定は不要です。省略すると,ORACLE_SIDの値が仮定されます。

    • データベースがMicrosoft SQL Server,Sybase Adaptive Server Anywhereの場合

      DABrokerがインストールされているマシンのシステムDSNに設定したデータソース名を指定します。

    • サーバプログラムがDABroker経由-RDA Link for Gatewayで,データベースがXDM/RD E2,RDB1 E2,SQL/Kの場合

      RDA Link for Gatewayで定義されている,RDノード名称を指定します。

    • サーバプログラムがDABroker経由-Database Connection Serverで,データベースがXDM/RD E2,RDB1 E2,SQL/K,XDM/SD E2,PDMII E2の場合

      指定しません。指定しても,指定した内容は無視されます。

    • サーバプログラムがDatabase Connection Serverで,データベースがXDM/RD E2,RDB1 E2,SQL/K,XDM/SD E2,PDMII E2の場合

      Database Connection Serverで定義されている,データベース識別子を指定します。

    • データベースがVOSKスプールファイルの場合

      指定しません。指定した場合,指定した内容は無視されます。

  • [データベースホスト名]テキストボックス  〜〈文字列〉

    接続するデータベースがHiRDBのときに,HiRDBのホスト名(PDHOST)を指定します。HiRDB以外のときは不活性となります。

  • [送受信領域サイズ]テキストボックス  〜〈符号なし整数〉((1〜16000))(単位:キロバイト)

    データ送受信時にDABrokerドライバが使うデータ受信用領域サイズを,1〜16000kBの範囲で指定します。省略すると,64kBが仮定されます。

    指定した値が1〜16000の範囲外のときは,次に示す領域サイズを仮定して処理します。

    • 指定値 < 1のとき:64

    • 指定値 > 16000のとき:16000

    送受信領域サイズは,注意:に示す理由で,取り扱うデータがBLOBなどの長大なデータのとき以外は指定しないことをお勧めします。

    注意:

    1. DABrokerドライバでは,指定したサイズの送受信領域を使うSQLステートメントごとに送信用,受信用それぞれ1個ずつ確保します(1ステートメントごとの指定サイズ×2のメモリを使います)。使うマシンの性能を考慮して,適正な値を指定してください。

    2. DABrokerドライバでは,指定したサイズの受信領域に格納できる行数分の結果データを.DABrokerから一度に受け取って処理します。そのため,受信領域サイズが大きいと,一度に取得できるデータ数は多くなって,通信の発生頻度は減ります。その反面,受信領域サイズの指定が大き過ぎるときは,メモリエラーになって処理が続けられない,又はメモリの圧迫による性能劣化,さらに1回のデータ通信量の増大によってバッファ境界でのFetch性能が劣化するおそれがあります(ただし,結果的には通信オーバーヘッドは変わりません)。この項目を指定するときは,上限1000 kB(1MB)程度に抑えて,マシンの性能を考慮した適正な値に設定してください。受信領域サイズ指定の目安を次に示します。

      受信領域長 = (((行データに含まれる列データ長の合計 +( 4 × 行データの列数 ))+ 4 )× 1回の通信で取得する行数 )+ 42

  • [DABroker経由-Database Connection Server接続]欄

    DABroker経由-Database Connection Server接続を使用するかどうかを指定します。

    DABroker経由-Database Connection Server接続を使用する場合,[使用する]チェックボックスをオンにします。

    [データベース種別名]テキストボックス  〜〈文字列〉

    DABrokerの接続先データベース定義で定義されたデータベース種別名を指定します。

    [データベース名]テキストボックス  〜〈文字列〉

    DABrokerの接続先データベース定義で定義されたデータベース名を指定します。

  • [ユーザ外字]欄

    自PCで作成した外字とサーバのデータベースで作成した外字を対応付けるかどうかを指定します。

    サーバのシフトJISコード又はEUCコードにユーザ外字を使ってODBCドライバで外字コードを変換するときは,[使用する]チェックボックスをオンにして,[選択(S)...]ボタンをクリックしてからユーザ外字変換ファイルを選びます。ユーザ外字変換ファイルの作成方法については,「2.6.3(5) ユーザ外字変換ファイルの作成方法」を参照してください。

    ユーザ外字を使う指定をすると,ODBCドライバはユーザ外字変換ファイルの内容に従って,外字コードを変換します。

  • [EUC-SJIS変換を行わない]チェックボックス

    EUC-SJIS変換をするかどうかを指定します。

    サーバ側の文字コードがEUCコードの場合でODBCアプリケーションがEUCコード処理をする場合,この項目をオンにします。

    この項目をオンにすると,EUC-SJIS変換は実行されません。また,ユーザ外字の使用の指定も無視されます。

  • [Oracle接続でSQLDescribeParamを使用]チェックボックス

    接続するデータベースがOracleの場合,通常SQLDescribeParamは使用できませんが,このチェックボックスを指定すると,すべてのパラメタのSQLデータ型がSQL_VARCHAR型で出力されます。

    デフォルトはチェックなしで,接続するデータベースがOracle以外の場合はグレー表示になります。

  • [検索データの余分な空白文字を削除]チェックボックス

    検索するデータの後ろに含まれる空白文字を削除するかどうかを指定します。削除するときは,[検索データの余分な空白文字を削除]チェックボックスをオンにしてください。

    デフォルトはチェックなしです。

(b) [DBPARTNER ODBC Driver for DABroker−環境定義−]ダイアログボックスに項目を設定

[DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスの項目を設定した後,[環境定義(E)...]ボタンをクリックします。ボタンをクリックすると,[DBPARTNER ODBC Driver for DABroker −環境定義−]ダイアログボックスが表示されます。

[図データ]

[DBPARTNER ODBC Driver for DABroker−環境定義−]ダイアログボックスに指定する項目を次に示します。

  • [通信ドライバ]テキストボックス  〜〈文字列〉

    WINSOCK」で固定です。変更できません。

  • [応答監視時間]テキストボックス  〜〈符号なし整数〉((0〜3600))《60》(単位:秒)

    サーバプログラムからの応答監視時間を秒単位で指定します。ここで指定した時間を過ぎてもサーバプログラムから応答が返らないと,処理が打ち切られます。

    指定を省略すると,60(秒)が仮定されます。0を指定すると,時間監視しません。

  • [非同期キャンセル機能を使用する]チェックボックス

    このチェックボックスは無効です。このチェックボックスのチェックの有無にかかわらず,非同期キャンセルは実行されます。

(c) 設定の完了

[DBPARTNER ODBC Driver for DABroker−環境定義−]ダイアログボックスの項目を指定した後,[OK]ボタンをクリックします。

[DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスに戻ったら,[OK]ボタンをクリックします。

これでデータソースのセットアップは終了しました。

(2) セットアップの中止

データソースのセットアップを中止するときは,[DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスの[キャンセル]ボタンをクリックします。ボタンをクリックすると,設定した内容は登録されません。

(3) データソース名の変更

既に設定した内容を変更する場合は,次の手順に従ってください。

  1. [ODBCデータソースアドミニストレータ]ダイアログボックスで変更するデータソース名を選択し,[構成(C)...]ボタンをクリックします。

    [DBPARTNER ODBC Driver for DABroker−セットアップ−]ダイアログボックスが表示されます。

  2. データソース名を変更します。

    これ以降の操作は,新規追加の2.からの操作に従ってください。

(4) データソース名の削除

データソース名を削除するときは,[ODBCデータソースアドミニストレータ]ダイアログボックスから削除するデータソース名を選んでから[削除(R)]ボタンをクリックします。

ボタンをクリックすると,データソース名が削除されます。

(5) ユーザ外字変換ファイルの作成方法

ユーザ外字変換ファイルの作成方法について説明します。外字コードを変換するときは,次に示すテキスト形式のファイル(〜.txt)を作成します。

(a) 形式

クライアントPC側外字コード1=サーバ側外字コード1,
クライアントPC側外字コード2=サーバ側外字コード2

(b) 規則

  • 行の先頭に空白文字を入れないでください。

  • クライアントPC側外字コード,サーバ側外字コードとも,16進数表記で指定してください。16進数を示す先頭の「0x」は付けないでください。

    (例)「0xF040」は「F040」と記述してください。

  • コードに小文字は使えません。

    (例)「0xf040」は「F040」と記述してください。

  • 使える文字は,半角英数字と半角スペースです。使える文字数を次に示します。

    サーバがEUCコードの場合:4文字又は6文字(例:F040,8FA1A1)

    サーバがシフトJISコードの場合:4文字(例:F040)

  • 指定できる外字コードの範囲を次に示します。範囲については,サーバのOSがサポートする外字コードの範囲を確認してください。

    クライアントPCの文字コード:F040〜F9FC(ただし,外字エディタで使える範囲に限ります)

    サーバの文字コード:任意(指定が妥当かどうかは,チェックされません)

  • 「=」の前後に空白文字を記述できます。

  • 1行に複数のコードを記述できます。複数のコードを記述するときは,「,」で区切ってください。

  • 改行は,区切りを示す「,」の直後だけでできます。

  • 同じ変換前外字コードを複数回定義したときは,最後に定義したコードが有効になります。

  • 「#」から改行するまでは,コメント行とみなされます。コメント行も,行の先頭に空白文字を入れないでください。

(c) ユーザ外字変換ファイルの記述例

# ユーザ定義文字マッピング(SJIS<->EUC)
F040=8FA1A1
F041=F5A1
# END

(d) 注意

  • ユーザ外字変換ファイルに指定したコード範囲が妥当かどうかは,チェックしません。また,変換する外字として使える文字コードの範囲は,サーバ側のシステムに依存します。ユーザ外字変換ファイルに文字コードを指定するときは,サーバ側のシステムのOSやDBMSのマニュアルを参照して,サポートする文字コードの範囲を事前に確認してください。

  • ユーザ外字変換ファイルは,サーバ側のシステムとの接続を開始するときに読み込まれます。このため,ユーザ外字変換ファイルの内容を変更したときは,サーバ側のシステムとの接続をいったん解除してから,再び接続してください。