Hitachi

ノンストップデータベース HiRDB Version 10 UAP開発ガイド


8.2.1 プリプロセスの概要

〈この項の構成〉

(1) プリプロセスとは

SQLを埋め込んだUAPのソースファイルは,そのままではコンパイルできないため,SQLプリプロセサを実行する必要があります。SQLプリプロセサを実行すると,埋め込まれたSQL文は,高級言語用の記述に変換されます。このSQLプリプロセサを実行して,UAPソースを言語コンパイラで変換できるポストソースに変換することをプリプロセスといいます。

SQLプリプロセサは,SQL文に対応した高級言語の関数を生成し,ソース中に埋め込みます。このとき,変数のデータ型の妥当性,値の妥当性,及び各種名称のシンタクスについてチェックします。チェックした結果,入力ソースプログラム中にエラーを検出すると,メッセージを標準エラー出力に出力します。

(2) SQLプリプロセサでチェックされない項目

SQLプリプロセサを実行しても,次に示す内容についてはチェックされません。

(3) プリプロセスをする場合の注意事項

  1. SQLプリプロセサは,ソースプログラムに使用している高級言語,及び環境によって,環境変数の設定,及びコマンドの指定方法が異なるため,使用している言語や環境に合わせる必要があります。

  2. Windows環境でのSQLプリプロセサでは,/Xpを指定しないと厳密なSQLの構文チェックができないため,SQL文に文法上のエラーがあっても発見できないことがあります。また,AIX版のクライアントで文字コードがSJIS以外の場合,厳密なSQLの構文チェックはできません。

  3. Windows環境ではEUCコードを認識できないため,使用できる文字コードはsjis又はlang-cだけです。HiRDBサーバの文字コード種別にsjis又はlang-c以外を指定している場合,HiRDBクライアントでUAPを実行するとエラーになります。