• 検索結果がありません。

Caché SQL ゲートウェイの使用法

N/A
N/A
Protected

Academic year: 2021

シェア "Caché SQL ゲートウェイの使用法"

Copied!
16
0
0

読み込み中.... (全文を見る)

全文

(1)

Caché SQL ゲートウェイの

使用法

Version 5.1

2006-03-14

(2)

Caché SQL ゲートウェイの使用法 Caché Version 5.1 2006-03-14 Copyright © 2006 InterSystems Corporation. All rights reserved.

このドキュメントは、 Sun Microsystems、RenderX Inc.、 アドビ システムズ および ワールドワイド・ウェブ・コンソーシアム (www.w3c.org)のツールと情報を使用して、 Adobe Portable Document Format (PDF)で作成およびフォーマットされました。 主要ドキュメント開発ツールは、InterSystemsが構築したCaché と Javaを使用した特別目的のXML処理アプリケーションで す。

Caché 製品とロゴは InterSystems Corporation の登録商標です。

Ensemble 製品とロゴは InterSystems Corporation の登録商標です。

InterSystems という名前とロゴは InterSystems Corporation の登録商標です

このドキュメントは、インターシステムズ社(住所:One Memorial Drive, Cambridge, MA 02142)あるいはその子会社が所有す る企業秘密および秘密情報を含んでおり、インターシステムズ社の製品を稼動および維持するためにのみ提供される。こ の発行物のいかなる部分も他の目的のために使用してはならない。また、インターシステムズ社の書面による事前の同意 がない限り、本発行物を、いかなる形式、いかなる手段で、その全てまたは一部を、再発行、複製、開示、送付、検索可能 なシステムへの保存、あるいは人またはコンピュータ言語への翻訳はしてはならない。 かかるプログラムと関連ドキュメントについて書かれているインターシステムズ社の標準ライセンス契約に記載されている 範囲を除き、ここに記載された本ドキュメントとソフトウェアプルグラムの複製、使用、廃棄は禁じられている。インターシス テムズ社は、ソフトウェアライセンス契約に記載されている事項以外にかかるソフトウェアプログラムに関する説明と保証を するものではない。さらに、かかるソフトウェアに関する、あるいはかかるソフトウェアの使用から起こるいかなる損失、損害 に対するインターシステムズ社の責任は、ソフトウェアライセンス契約にある事項に制限される。 前述は、そのコンピュータソフトウェアの使用およびそれによって起こるインターシステムズ社の責任の範囲、制限に関する 一般的な概略である。完全な参照情報は、インターシステムズ社の標準ライセンス契約に記され、そのコピーは要望によっ て入手することができる。 インターシステムズ社は、本ドキュメントにある誤りに対する責任を放棄する。また、インターシステムズ社は、独自の裁量 にて事前通知なしに、本ドキュメントに記載された製品および実行に対する代替と変更を行う権利を有する。

Caché および InterSystems Caché、Caché SQL、 Caché ObjectScript および Caché Object は、インターシステムズ社の 商標です。 ここで使われている他の全てのブランドまたは製品名は、各社および各組織の商標または登録商標です。 インターシステムズ社の製品に関するサポートやご質問は、以下にお問い合わせください: InterSystems ワールドワイド カスタマサポート +1 617 621-0700 Tel: +1 617 374-9391 Fax: support@InterSystems.com Email:

(3)

目次

1 はじめに ... 1 2 アーキテクチャ... 3 2.1 接続マネージャ... 3 2.2 SQL ゲートウェイ API... 3 2.3 外部テーブル・クエリ・プロセッサ... 4 2.4 SQL ストレージ・クラス... 4 3 構成 ... 5 3.1 SQLゲートウェイ接続の作成... 5 4 SQL ゲートウェイの使用法... 7 4.1 リンク・テーブル・ウィザードの使用法... 7 4.2 ゲートウェイに関する問題のデバック... 8 5 制限条件... 11

(4)

図一覧

(5)

1

はじめに

Caché オブジェクトと連結している Caché SQL ゲートウェイは、Caché の外 (または “外部” ) にある リレーショナル・データベース管理システム (RDBMS) に保存されているデータへのアクセスを提供 します。 SQL ゲートウェイを使用して、アプリケーションは以下のことができます。 • 外部のリレーショナル・データベースに保存されたデータへ、Caché アプリケーション内でオブ ジェクトや SQL クエリを使用してアクセスします。 • Caché の永続オブジェクトを外部リレーショナル・データベースに格納します。 例えば、 “Employee” テーブルが、外部リレーショナル・データベースに保存されているとします。 その外部データベースに (ODBC 経由で SQL クエリを実行することで) 接続するEmployee クラス を作成する (もしくは Caché リンク・テーブル・ウィザードを使用する) ことによって、このテーブルを オブジェクトとして Caché 内で使用できます。この例を以下に示します。 SQL ゲートウェイを使用して外部データを表示する

(6)

Caché アプリケーションから見ると、Employee クラスは他の永続クラスと同じように振る舞います。イ ンスタンスをオープンし、変更して、それを保存できます。SQL クエリをEmployee クラスに対して発 行する場合、このクラスは自動的に外部データベースに送信されます。 SQL ゲートウェイは、アプリケーション論理とは独立した関係になります。アプリケーションは、最小 限の処理で外部データベースと Caché データベースの使い分けを変更できます。また、この場合 アプリケーション論理の変更は必要ありません。 SQL ゲートウェイを使用して、オブジェクトに永続性を提供するクラスは、ネイティブな永続性を使用 するクラスの利用と同等で、Java、ActiveX、SQL および Web アクセスを含めた、Caché のすべての 機能を利用できます。

(7)

2

アーキテクチャ

SQL ゲートウェイは、以下のコンポーネントを含みます。 • 接続マネージャ • SQL ゲートウェイ API • 外部テーブル・クエリ・プロセッサ • SQL ストレージ・クラス これらは以下のセクションで説明しています。

2.1 接続マネージャ

接続マネージャは、Caché によって保守される論理接続定義リストです。各接続定義は、外部デー タベースと Caché で使用されている論理名と関連しています。SQL ゲートウェイでは、これらの論理 名を使用して、特定の外部データベースとの接続をどのように設定するかを決定します。 詳細は、"SQL ゲートウェイ接続" を参照してください。

2.2 SQL ゲートウェイ API

SQL ゲートウェイ API は、外部の RDBMS との通信のために Caché で使用される一連の関数で す。これらの関数は共有ライブラリによって実装され、DLL (Dynamically Linked Library) としても知 られています。この共有ライブラリは、外部データベースとの ODBC 接続の設定、外部 ODBC イン タフェースへの適切なコードの作成や、必要なデータ変換を行います。SQL ゲートウェイ API を使

(8)

用して外部データベースに接続するとき、Caché プログラムは ODBC API の一部へアクセスします。 ODBC API によって、ゲートウェイがサポートしているクエリを実行できます。

2.3 外部テーブル・クエリ・プロセッサ

外部テーブル・クエリ・プロセッサは、外部テーブルに対して目的とするクエリを実行するための、 Caché SQL クエリ・プロセッサの拡張機能です。 Caché は、いわゆる SQL ディクショナリの中で定義されたすべてのテーブルを管理します。任意の テーブルは、そのデータが外部の RDBMS に保存されたときに “外部” のものとしてマークされま す。Caché SQL クエリ・プロセッサが、SQL クエリ内で参照されたテーブルを外部のテーブルである と判断すると、Caché 内のテーブルへアクセスする代わりに、SQL ゲートウェイ API を呼び出すこと によってクエリ実行計画を生成する外部テーブル・クエリ・プロセッサを起動します。 Caché SQL エンジンの内部的な動作によって統合されているので、SQL ゲートウェイは透過的なも のとなっています。つまり、オブジェクトや SQL による要求は、すべて自動的に正しい格納場所に アクセスするので、使用するデータが実際にどこに格納されているかということに無関係にアプリケー ションを記述できます。

2.4 SQL ストレージ・クラス

Caché のすべてのオブジェクトの永続性は、“ストレージ・クラス” によって提供されます。ストレージ・ クラスは、永続オブジェクトをデータ格納場所に保存し、その検索を行うのに必要とされるコードを生 成します。SQL ストレージ・クラス (%Cache.SQLStorage) は、特別に生成したクエリを使用してオブ ジェクトの永続性を提供するという特別な目的を持ったストレージ・クラスです。一般的には、アプリ ケーションが既定の Caché Storage ストレージ・クラスで提供されている格納構造で、より良い管理 機能を必要とする場合に備え、この SQL は Caché データベース内での格納場所を提供します。 永続的なデータの保持に SQL ストレージ・クラスを使用しているクラスに、CONNECTION と EXTERNALTABLENAME クラス・パラメータに値をセットすることによって “外部の” クラスであるこ とを指示します。そのようなクラスがコンパイルされると、クラス・コンパイラは以下のことを行います。 • クラスに対する SQL テーブル定義を作成します。このテーブルは “外部の” ものとマークされ、 クラスの CONNECTION クラス・パラメータで指定された SQL ゲートウェイ接続に結合されま す。外部データベースにあるテーブル名は、EXTERNALTABLENAME クラス・パラメータによっ て指定されます。 • そのクラスに永続オブジェクトとしてアクセスするコードを、SQL クエリを使用して生成します。こ れらのクエリは、外部テーブル・クエリ・プロセッサによって自動的に正しい外部データベースを 呼び出します。 アーキテクチャ

(9)

3

構成

SQL ゲートウェイは、Caché の一部として自動的にインストールされます。SQL ゲートウェイは、定義 された接続を通して特定の外部データベースに接続します。接続を定義する手順は、以下の通りで す。 1. 外部データベースに対する ODBC データ・ソースを定義します(その方法についてはその外部 データベースに関する参考資料を参照してください)。 2. このデータ・ソースに対する論理接続を定義します。

3.1 SQLゲートウェイ接続の作成

Caché は SQL ゲートウェイ接続定義のリストを管理します。各接続定義には、論理名 (この接続を 参照するためアプリケーション内で使用されます)、ODBC データ・ソース (DSN) 名、接続を確立す るときに使用するユーザ名やパスワードが含まれます。 Caché 内では、各外部テーブルは各論理接続名で関連付けされます。Caché は、1 つのプロセス が初めて論理接続を参照するときに、その外部データベースとの接続を自動的に確立します。 新しい SQL ゲートウェイ接続を定義する (または内容の変更や確認) には、以下の手順を実行しま す。 1. システム管理ポータルで、[SQL ゲートウェイ接続]ページ ([[ホーム]→[構成]→[SQL ゲートウェ イ接続]]) に移動します (具体的には、ポータルの[ホーム]ページで、[システム管理]列から [構成]を選択し、表示された[構成]ページの[接続]列から[SQL ゲートウェイ接続]を選択し ます)。 2. [SQL ゲートウェイ接続]ページで、[新規接続作成]をクリックします。これによって、[SQL ゲー トウェイ接続]ページ ([[ホーム]→[構成]→[SQL ゲートウェイ接続]→[SQL ゲートウェイ接続]]) が表示されます。

(10)

3. [SQL ゲートウェイ接続]ページで、以下のフィールドの値を入力または選択します。 • 接続名— 構成する接続の識別子。

• DSN を選択してください— 接続を受け入れるデータ・ソース名

• ユーザ— 接続の確立に使用する既定のアカウント名

• パスワード— 既定のアカウントに関連付けられたパスワード

• レガシー outer join (Sybase) を有効に— 接続がこの構文をサポートするかどうか

4. 指定した値で接続が確立されるかどうかをテストするには、[テスト接続]ボタンをクリックします。 5. 名前付き接続を作成するには、[保存]をクリックします。

(11)

4

SQL ゲートウェイの使用法

アプリケーション内での SQL ゲートウェイの使用は簡単です。一番簡単な使用方法は、他社製 RDBMS ですでに定義されているテーブルから始めることです。この場合、外部の RDBMS への接 続情報 (DSN) を定義し、次にシステム管理ポータル ([[ホーム]→[SQL]]) の[SQL]ページで利用 できる Caché リンク・テーブル・ウィザードを使用して、データ ストレージ用の外部テーブルを利用 する Caché 永続クラスを自動的に生成できます。

4.1 リンク・テーブル・ウィザードの使用法

リンク・テーブル・ウィザードは、外部データベースからテーブル定義を読込み、新しい永続的な Caché クラスを生成します。その新しいクラスは、SQL ゲートウェイを使用して外部テーブルにその データを格納したり、検索したりします。 外部データベース接続 (DSN) を定義した後 ("構成" 参照)、以下の設定を行うと、リンク・テーブル・ ウィザードを使用できます。 1. システム管理ポータルの[SQL]ページ ([[ホーム]→[SQL]]) で、[リンク・テーブル・ウィザード] をクリックします。リンク・テーブル・ウィザードが表示されます。 2. ウィザードの最初のページでは、ゲートウェイ接続に使用できるテーブルを選択できます。この ページの以下のフィールドで、使用可能なテーブルを指定します。 • SQL ゲートウェイ接続を選択してください — データのソースとして機能する SQL ゲートウェ イ接続。SQL ゲートウェイ接続を作成するには、 “SQL ゲートウェイ接続の作成” のセク ションを参照してください。 • テーブルタイプ — 使用可能なテーブルのタイプ。 • スキーマ — テーブルを使用可能にするスキーマ (パッケージ)。 • テーブル — 使用可能にするテーブル。

(12)

3. ウィザードの 2 番目のページには、[使用可能] フィールドと [選択済み] フィールド (プロパティ) が一覧表示されます。1 つ以上のフィールドをハイライト表示して一重矢印をクリックすると、そ のフィールドが 1 つのリストから別のリストに移動します。二重矢印をクリックすると、すべての フィールドが (選択されているかどうかにかかわらず) 1 つのリストから別のリストに移動します。 選択済みのリストで上向き矢印や下向き矢印を使用すると、リスト内の順序を変更できます。 4. ウィザードの 3 番目のページでは、表示されている情報の動作と外観を指定できます。使用可 能なオプションは、以下の通りです。 • 読み込り専用 — 表示されているフィールドを書き込み不可にします (select_all チェック・ ボックスを使用すると、すべてのフィールドが書き込み不可になります)。 • 新規キャプション • 新規カラム名 5. ウィザードの最後のページでは、新しいクラスに対して使用される主キー・フィールドと、SQL テーブルおよびクラス名が正しいことを確認します。 6. ウィザードの最後のページで [完了] をクリックすると、ゲートウェイ用のデータ・ソースへのテス ト接続を確立するためのページが表示されます。 この時点で、リンク・テーブル・ウィザードは Caché データベース内に新しいクラス定義を保存し、コ ンパイルします。データが存在する場合、外部データベースで即時に表示されます(新規に作成さ れた Caché クラス、もしくはテーブルに対して SQL クエリを発行することでチェックできます)。これ で Caché 内の他の永続クラスと同様に、新規のクラスを使用できます。

4.2 ゲートウェイに関する問題のデバック

問題が発生した場合、以下のようにゲートウェイを監視できます。 1. Caché ターミナルで、以下のように 3 と入力して、^%SYSLOG グローバルの値を 3 に設定しま す。 Set ^%SYSLOG = 3 ^%SYSLOG グローバルは、Caché でのイベントを記録してデバッグに備えます。 2. DSN がこれをサポートしている場合、使用している DSN の記録を使用可能にします。ログ機能 を持つ DSN には、画面上にチェック・ボックスまたは他のスイッチがあります。例えば、Caché DSN には [ODBC ログ] チェック・ボックスがあります。 DSN の構成画面を表示するには、Windows のコントロール・パネルの [管理ツール] 画面から [データ・ソース (ODBC)] を選択して、[ODBC データ・ソース・アドミニストレータ] のリスト (ユー ザ、システム、またはファイル) から DSN を選択します。 SQL ゲートウェイの使用法

(13)

3. [ODBC データ・ソース・アドミニストレータ] 画面の [トレース] タブから、[トレースの開始] ボタン を選択して、ODBC ドライバ・マネージャのログを使用可能にします。再度この画面を表示する には、Windows コントロールパネルの [管理ツール] 画面から [データ・ソース (ODBC)] を選択 します。 4. アプリケーションを実行し、エラー条件をトリガしたことを確認します。 5. エラー・メッセージや、異常な活動のすべてのログをチェックします。エラーの原因は通常、メッ セージ内に表れています。 ゲートウェイに関する問題のデバック

(14)
(15)

5

制限条件

Caché SQL ゲートウェイの現在のバージョンには、以下の制約と制限があります。 • SQL クエリの FROM 節にあるすべてのテーブルは、同じデータ・ソースから派生したものであ る必要があります。複数のデータ・ソースから、データを結合するクエリは許可されません。 • 外部データベースで指定された SQL クエリは、Caché SQL 拡張文法を使用できません。つま り、 “->” 演算子や、Count(*) クエリ内に他のカラムを含むこと、% で始まる名前の Caché 特有 の演算子は利用できません。 • 外部 RDBMS は、ODBC インタフェースを持つ必要があります。このインタフェースは、SQL ゲートウェイで必要とされる機能性を正しくサポートする必要があります。

(16)

参照

関連したドキュメント

731 部隊とはということで,簡単にお話しします。そこに載せてありますのは,

HORS

主として、自己の居住の用に供する住宅の建築の用に供する目的で行う開発行為以外の開

断面が変化する個所には伸縮継目を設けるとともに、斜面部においては、継目部受け台とすべり止め

・会場の音響映像システムにはⒸの Zoom 配信用 PC で接続します。Ⓓの代表 者/Zoom オペレーター用持ち込み PC で

注:一般品についての機種型名は、その部品が最初に使用された機種型名を示します。

3 当社は、当社に登録された会員 ID 及びパスワードとの同一性を確認した場合、会員に

本装置は OS のブート方法として、Secure Boot をサポートしています。 Secure Boot とは、UEFI Boot