# empesql

    EMPESQL(1)                                                          EMPESQL(1)

    名前
           empesql  - C/FORTRAN プログラムの中に埋め込まれたＳＱＬ文をプリコンパイ
           ルする。

    形式
           empesql [-psmdb database[,database...]] [-pthread] infile.c [outfile.c]

           empesql  [-psmdb  database[,database...]]  [-pthread]  infile.pc  [out-
           file.c]

           empesql infile.f [outfile.f [supportfile.c]]

           empesql infile.pf [outfile.f [supportfile.c]]

           empesql infile.c [outfile.c]

    機能説明
           Empesql はＣプログラム中でＳＱＬコマンドを発行することができる。これ は
           EMPRESS  の mx ルーチンを呼び出すことで実行される。プリコンパイルにおい
           て、プログラムに埋め込まれたＳＱＬコマンドは実行する為の関数群で置き 換
           えられる。Ｃプログラムの場合で "outfile.c" ファイルが指定されない場合は
           デフォルトで
            mpout.c が指定されたことになる。また、 FORTRAN プログラムの場合は、
            mpout.f が指定されたことになる。
            supportfile.c のデフォルトは mpsup.c である。

           プログラムをプリコンパイルした場合、相当するデータベースより PSM ルーチ
           ン名を適切に検索する。-psmdb オプションは指定しなくてはならず、リストさ
           れたデータベースより PSM ルーチンを検索しなくてはならない。さもないとエ
           ラ ーメッセージが出力される。データベース名はリスト中でカンマで区切られ
           て、スペースは入らないので注意する事。

           -pthread オプションは、マルチスレッドなプログラムを作 成 す る 場 合 に
           thread-safe なコードを生成する場合に指定する。これは Empress のルーチン
           がマルチスレッドに対応している事を意味する。マルチスレッドはパラレル に
           処 理される。しかしながら実行時にはシリアルに処理されてしまう。ネット上
           でも同様に単一スレッド環境での結果となる。

           組込み SQL の結果は、全スレッドがグローバルとなります。マルチスレッドな
           ア プリケーションは、thread-safe マナーに準じた ESQL ステートメントを使
           用しなくてはなりません。違いは ESQL ステートメントが thread-safe である
           か 、ないかです。例えば、マルチスレッドなアプリケーションが、他のアプリ
           ケーションのスレッドがアクセスしているテーブルを CLOSE   す る 場 合 、
           thread-safe な close ステートメントは使用しない。

           マ ルチスレッドで使用した場合、特に数々の EXEC SQL 連鎖はユーザが指定し
           た明白な同期構成によって守られる。それらはトランザクション処 理:  START
           TRANSACTION,  ...,  COMMIT/ROOLBACK  TRANSACTION と、カーソル処理: OPEN
           CURSOR, FETCH, CLOSE CURSOR も含んでいる。

                          数々のグローバル構成は、戻り値またはエラー情 報 の 為 に
           ANSI SQL の中で定義されている。グローバル構成は、thread-safe でありそれ
           らは、SQLCODE, SQLCNT, SQLWARNO である。他のグローバ ル 構 成 、SQLCMD,
           SQLWARN1, SQLERRMC, mroperr は、thread-safe ではない。

    ファイル
    関連項目
           empcc(1), empecc(1), empef77(1)

           Empress Host Language: The SQL Precompiler

    診断
    履歴
           著作: Empress Software Inc.全資料は著作権保護されており、認可制になって
           います。認可されていないＣＰＵでの使用は禁止されています。

    Empress Software                   Version 8                        EMPESQL(1)