Natural には、Adabas データベース、リレーショナルデータベース管理システム(RDBMS)、非 RDBMS などに保存されているデータにアクセスするための DBMS(データベース管理システム)インターフェイスが用意されています。
Natural アプリケーションは、複数の DBMS に保存されているユーザーデータに同時にアクセスできます。 出力ファイルやワークファイル(該当セクションを参照)に保存されているデータは順番にアクセスされますが、DBMS に保存されているデータにはランダムにアクセスできます。
サポートされる DBMS には、DB2、DL/I、VSAM データセットなどがあります。
このセクションでは、Natural でサポートされる DBMS についてと、Natural アプリケーションからデータベースのデータにアクセスする原理について説明します。
Natural には、次のデータベース管理システム(DBMS)用のインターフェイスが用意されています。
Natural for Adabas インターフェイスは、Adabas データベースに保存されているデータへのアクセスを可能にします。
Adabas は、Software AG のデータベース管理システムです。 Adabas では、リレーショナルデータ構造およびネストされたリレーショナルデータ構造をサポートします。
Natural for Adabas インターフェイスは Natural に統合されており、ローカルコンピュータから Adabas データベースにアクセスできます。 リモートアクセスの場合は、追加のルーティングおよび通信ソフトウェア(Software AG の Entire Net-Work など)が必要です。 いずれにしても、Adabas データベースを実行しているホストマシンのタイプは Natural にとっては常に透過的です。
Adabas データベースのデータへのアクセス(『プログラミングガイド』)
『Adabas』ドキュメント
Natural for DL/I インターフェイスは、IMS/DB データベースに保存されているデータへのアクセスを可能にします。
DL/I は、IBM の IMS/DB のデータ操作言語です。 IMS は、階層データベースおよびトランザクション管理システムです。
『Natural for DL/I』ドキュメント
Natural for DB2 インターフェイスは、IBM の DB2 UDB for z/OS オペレーティングシステムに保存されているデータへのアクセスを可能にします。
『Natural for DB2』ドキュメント
Natural for VSAM インターフェイスは、VSAM データベースに保存されているデータへのアクセスを可能にします。
VSAM は、キー順データセット、エントリ順データセット、相対レコードデータセットなどの各種データセット編成のレコードを管理するための、IBM のアクセス方式です。
『Natural for VSAM』ドキュメント
Natural データ操作言語(DML)は、Natural がサポートするすべての DBMS に共通のデータアクセス構文を提供します。 Natural DML を使用することで、Natural オブジェクトはさまざまな DBMS へのアクセスに、FIND
、READ
、STORE
、DELETE
など、同じ言語ステートメント(DML ステートメント)を使用できます。
Natural は、DBMS の種類をコンフィグレーションファイルから判断し、DML ステートメントをデータベース固有のコマンドに変換します。つまり、Natural が、Adabas データベース用のダイレクトコマンドや、SQL を使用する RDBMS 用の SQL ステートメント文列字とホスト変数構造を生成します。
データベース固有の節を含まない DML ステートメントを使用する Natural オブジェクトは、さまざまな DBMS で実行できます。 データベース固有の節を含む DML は、別の DBMS で実行する前に変更が必要です。 データベース固有の考慮事項については、『ステートメント』ドキュメントを参照してください。
『ステートメント』ドキュメント
DML ステートメントの他に、Natural には RDBMS との連携専用の特殊な SQL ステートメントセットが用意されています。 SQL ステートメントには、SELECT
、INSERT
、UPDATE
、DELETE
、COMMIT
、ROLLBACK
などがあります。 SQL 固有のステートメントについては、『ステートメント』ドキュメントを参照してください。
特殊な SQL ステートメントのセットは、フレキシブル SQL と、ストアドプロシージャを使用するための機能で構成されます。 フレキシブル SQL を使用すると、任意の SQL 構文を使用できます。
SQL ステートメント(『ステートメント』ドキュメント)
フレキシブル SQL(『ステートメント』ドキュメント)
Natural にはデータ定義モジュール(DDM)と呼ばれるオブジェクトが用意されており、これを使用すると各種 DBMS のデータベースファイルに透過的にアクセスできて便利です。
DDM は、物理データベースファイルの論理ビューを構成します。 DDM には、ファイルの各フィールドの情報(Natural オブジェクトでのこれらのフィールドの使用に関連する情報)が保存されます。
DDM は、Natural データ構造と、使用する DBMS のデータ構造との接続を確立します。 このようなデータベース構造としては、RDBMS 内のテーブル、Adabas データベース内のファイル、VSAM データセットなどがあります。 このため、DDM はアクセス対象のデータベースの実際の構造を Natural アプリケーションから隠します。
次の図は、Natural が、特定の DBMS の特定のデータ構造を表す DDM への参照を使用することで、単一のアプリケーションから複数のデータベースにアクセスできる仕組みを示しています。