|
SQL アクセスを利用するには次の作業を行います。
Pervasive PSQL v11 SP2 にはサンプルの XML テンプレートが含まれており、これを利用すると、COBOL アプリケーションで必要とされるとおりにデータのレイアウトを定義できます。表 195 を参照してください。開発者向けに専門的に言えば、XML ファイルにメタデータを記述します。
XML テンプレートを変更するには
Schema Executor を起動する前に、XML ファイルで指定したデータ ファイルをデータベースのデータ ファイルの場所へコピーします。データベースは、テーブルを追加する必要のあるデータベースです。
たとえば、XML で mytable.mkd と指定したテーブルをデータベース "test" に追加するとします。このとき、データベースのデータ ファイルは c:¥data¥test にあるとします。Schema Executor を起動する前に、データ ファイル mytable.mkd を c:¥data¥test へコピーします。
Pervasive PSQL v11 SP2 には Schema Executor というコマンド ライン ユーティリティが付属しています。このユーティリティは SchemaExec ともいいます。
Schema Executor は以下の操作を実行します。
Schema Executor で XML ファイルを処理するには
サンプル XML ファイルの実行例も参照してください。
cobolschemaexec XMLfilename databasename [-s servername] [-u login_id] [-p password] [-i svr_loginid] [-c svr_password] [-l log_file] [ -h | -? ]
オプション
|
説明
|
---|---|
XMLfilename
|
データのレイアウトを定義する XML スキーマのファイル名。必須オプションです。手順 1:サンプル XML テンプレートの変更を参照してください。
|
databasename
|
アプリケーションがアクセスする Pervasive PSQL データベースの名前。必須オプションです。指定したデータベースが存在しない場合は、ユーティリティからパスとファイル名の入力を求められます。
Schema Executor による新規データベースの作成も参照してください。
|
-s servername
|
Pervasive PSQL データベース エンジンが実行されているサーバーの名前、または IP アドレス。データベース エンジンと同じマシン上で SchemaExec を実行している場合は、名前として "localhost" を使用できます。servername が指定されていない場合は、ローカル マシンがサーバーであると見なします。
|
-u login_id
|
セキュリティで保護されたデータベースへのアクセスに必要なユーザー名。Pervasive PSQL セキュリティ モデルの解説については、『Advanced Operations Guide』の Pervasive PSQL セキュリティを参照してください。
|
-p password
|
セキュリティで保護されたデータベースへのアクセスに必要なパスワード。Pervasive PSQL セキュリティ モデルの解説については、『Advanced Operations Guide』の Pervasive PSQL セキュリティを参照してください。
|
-i svr_loginid
|
リモート マシンのオペレーティング システムへのアクセスに必要なログイン名。SchemaExec がリモート サーバー上にある XML ファイルを処理している場合には、このオプションは必須です。
|
-c svr_password
|
リモート マシンのオペレーティング システムへのアクセスに必要なパスワード。SchemaExec がリモート サーバー上にある XML ファイルを処理している場合には、このオプションは必須です。
|
-l log_file
|
XML ファイルの処理中に生成されるメッセージの記録に使用するログ ファイル。
Pervasive PSQL データベース エンジンが実行されているマシンで SchemaExec を実行する場合は、自動的にデフォルト ログが作成されます。-l log_file オプションを使用する必要はありません。デフォルト ログの名前は cobolschemaexec.log です。
クライアント マシン(Pervasive PSQL データベース エンジンが実行されていないマシン)で SchemaExec を実行する場合は、クライアント マシン用のログ ファイルを指定できます。
ログ メッセージを参照してください。
|
-h または -?
|
コマンドの使い方を表示します。その他すべてのオプションは無視されます。
|
メモ
必須オプションの XMLfilename と databasename は位置決めされており、この順序で指定する必要があります。
次の例は、Schema Executor の使い方を示しています。
Pervasive PSQL ファイルのデフォルトの保存場所については、『Getting Started with Pervasive PSQL』の Pervasive PSQL ファイルがインストールされる場所を参照してください。
ユーティリティは次のようなプロンプトを表示します。
"y" を押すと、ユーティリティはデータベース パスを入力するプロンプトを表示します。
既存のパスを入力します。そうしないと、エラーが返されます。必ず、XML ファイルで使用されているデータベース ファイル(たとえば .MKD ファイル)がそのパスで使用可能であるようにしてください。
この例では、管理者権限を持つユーザー "testuser"(パスワード "testuser")がリモート マシン(TestMachine)に存在し、XML ファイルで使用されるデータベース ファイルは、リモート マシン上のデータベースのデータ ファイル ディレクトリにあるものとします。
この例では、ユーザー "testuser"(パスワード "testuser")はリモート マシン(TestMachine)に存在し、管理者権限を持っているものとします。
ユーティリティは次のようなプロンプトを表示します。
"y" を押すと、ユーティリティはデータベース パスを入力するプロンプトを表示します。
既存のパスを入力します。そうしないと、エラーが返されます。必ず、XML ファイルで使用されているデータベース ファイル(たとえば .MKD ファイル)がそのパスで使用可能であるようにしてください。
ユーティリティ オプション databasename に存在しないデータベースを指定すると、Schema Executor は新しいデータベースを作成するかどうかを尋ねます。"yes" と答えると、新しいデータベースの場所を入力するプロンプトが表示されます。Schema Executor がデータベースを作成する場所(パスとフォルダー名)は既存でなければなりません。
また、Schema Executor は、デフォルト フォルダーに databasename のデータ ファイルがあることを期待するので注意してください。データ ファイルが見つからない場合は、その旨が通知されます。データ ファイルを自分でデフォルト フォルダーへコピーしてから、Schema Executor を再実行して XML を処理します。
このセクションは、Schema Executor による XML ファイルの処理後、ログ ファイルに記載されている可能性のあるコードの一覧を示します。
成功を表すコードは、「CB100:Schemaexec は正常に完了しました」です。
次の表は、エラー コードの一覧を示します。
COBOL アプリケーションの開発者である場合は、作成したアプリケーションと共にすべてのシステム アプリケーションを配布するようにしてください。配布自体に違いはありませんが、追加するシステム テーブルが生じる可能性があるので、ここで述べています。たとえば、Pervasive PSQL v11 SP2 より前のバージョンの Pervasive PSQL で作成されたデータベースに対して Schema Executor を実行した場合は、追加のシステム テーブルが作成され配置されます。その結果、配布するシステム テーブル(DDF ファイル)がいくつか追加されることになります。
|