ページの先頭行へ戻る
Symfoware Server V10.0.0 コマンドリファレンス

2.79 sqlpc

名前

sqlpc - SQL埋込みCプログラムのプレコンパイル

形式

sqlpc [ -l ソースリストを出力するディレクトリ ]
      [ -t Cプログラムソースを出力するディレクトリ ]
      [ { -I インクルードファイルの配置ディレクトリ} ... ]
      [ -d データベース名 ]
      [ -ul ]
      [ { -W { 88 | 92 | 95 | 96 | 2000 | 2007 } | -R } ]
      [ -C ]
      [ -v9 ]
      [ -T ]
      [ -K ]
      SQL埋込みCプログラムのファイル名

機能説明

SQL埋込みCプログラムを、プレコンパイルします。

オプション

本コマンドのオプションはすべて環境変数“SQLPC”で指定することができます。
環境変数“SQLPC”にパラメタを設定しておくと、コマンド実行時にオプションを指定する必要がなくなります。
パラメタが重複した場合の優先順位は、本コマンドのオプション、環境変数“SQLPC”の順番となります。
以下にCシェルの例を示します。

setenv SQLPC '-t /sqlspp/csrc -I /sqlapp/include'
-l ソースリストを出力するディレクトリ

プレコンパイルが出力するソースリストの出力先ディレクトリを指定します。
ソースリストとは、SQL埋込みCプログラムの内容と行番号を、プレコンパイル後のソースファイルの行番号と対応付けたリストです。
ディレクトリに指定できる長さは、1024バイトまでです。
ソースリストのファイル名は、SQL埋込みCプログラムのファイル名の拡張子を“.lst”に変換したものになります。
本オプションを省略した場合、カレントディレクトリに出力されます。

-t Cプログラムソースを出力するディレクトリ

プレコンパイル後のCプログラムのソースファイルを出力するディレクトリを指定します。
ディレクトリに指定できる長さは、1024バイトまでです。
ソースファイル名は、SQL埋込みCプログラムのファイル名の拡張子を“.c”に変換したものとなります。
本オプションを省略した場合、カレントディレクトリに出力されます。

-I インクルードファイルの配置ディレクトリ

SQL埋込みCプログラム中にINCLUDE文を記述している場合、取り込むファイルの配置先ディレクトリを指定します。
ディレクトリに指定できる長さは、1024バイトまでです。
このオプションは、複数回指定できますが、有効となるディレクトリの数は、環境変数での指定も含めて10個までです。
sqlpcによるディレクトリのサーチ手順は、以下のようになります。

  1. カレントディレクトリ

  2. sqlpcコマンドの-Iオプション

  3. 環境変数“SQLPC”の-Iオプション

  4. 環境変数“INCDIR”

-d データベース名

SQL埋込みCプログラムで利用するデータベース名を指定します。

-ul

ソースリストファイルを出力しない場合に指定します。

-W { 88 | 92 | 95 | 96 | 2000 | 2007 } | -R

SQL文の予約語とSQL機能のレベルをSQL88、SQL92、SQL95、SQL96、SQL2000またはSQL2007でコンパイルする場合に指定します。
-Wオプションを指定した場合は、予約語とSQL機能のレベルを1つ選んで指定します。
また、-Rオプションを指定した場合は、SQL88でコンパイルします。
本オプションを省略した場合は、SQL2007でコンパイルします。

-C

文字型のホスト変数に対してSQL埋込みCプログラムの実行時に、NULLを意識した処理をする場合に指定します。
(NULLまでの文字をデータとして扱うなど)

-v9

64ビットのSQL埋込みCプログラムを作成する場合に指定します。
本コマンドでプレコンパイルを行ったあと、独自にコンパイルする場合には、Cコンパイラのオプション指定を行う必要があります。
また、独自にリンクする場合には、64ビット用の動的ライブラリをリンクしてください。
Solarisの場合、本オプションは-Tオプションと同時に指定することはできません。

-T

マルチスレッド上で動作するまたはセションを操作する関数を利用するSQL埋込みCプログラムを作成する場合に指定します。
本コマンドでプレコンパイルを行ったあと、独自にコンパイルする場合には、Cコンパイラのマルチスレッド化の指定を行う必要があります。
また、独自にリンクする場合には、マルチスレッド用の動的ライブラリをリンクしてください。
Solarisの場合、本オプションは-v9オプションと同時に指定することはできません。

-K

選択リストに“*”を指定したカーソル宣言および単一行SELECT文や、挿入列リストを省略したINSERT文が、アプリケーションに記述されていないかチェックする場合に指定します。
アプリケーションに記述されていた場合は、エラーメッセージを出力します。

オペランド

SQL埋込みCプログラムのファイル名

プレコンパイルの対象となる、SQL埋込みCプログラムのソースファイル名を指定します。

使用例

ソースリストを出力するディレクトリを“/sqlapp/list”、インクルードファイルの配置ディレクトリを“/sqlapp/include”として、SQL埋込みCプログラム“demo01.ec”をプレコンパイルします。

sqlpc -l /sqlapp/list  -I /sqlapp/include  demo01.ec

終了ステータス

以下の終了ステータスが返されます。

0 : 正常終了
0以外 : 異常終了

注意