Empressは、以下に示した様々なレベルのホスト言語インターフェイスを用意しています。
コマンド言語インターフェイスは、オペレーティングシステム、 およびプログラム内からSQLコマンドを実行することを可能にします。 コマンド言語インターフェイスには 3 つのタイプがあります。
シェルインターフェイスは、UNIX / Linux 環境でのシェルプログラムから Empress 問い合わせ言語コマンドを実行すること可能にします。 バッチインターフェイスは、Windows 環境でのバッチコマンドファイルから Empress 問い合わせ言語コマンドを実行すること可能にします。
標準インターフェースは、C 言語プログラムからの Empressデータベースのデータおよび Empressが認識可能なダンプファイルの オペレーティングシステムのデータファイルをアクセスするための Empress 問い合わせ言語コマンドを実行すること可能にします。
SQL プリコンパイラは、C 言語プログラムからの 問い合わせ言語ステートメント(スタティックおよびダイナミックSQLステートメント) を実行し、レコードごとのデータ処理を可能にします。
データベース操作プロシージャは、データベースへのより細かな レコードアクセスを提供します。このプロシージャは、mxルーチンと mrルーチンで構成されます。 mxルーチンは、比較的簡単に使用することができ、また 柔軟性もあるため、多くののアプリケーションで利用することができます。 mrルーチンは、多少複雑であり、最も低レベルのデータベースアクセス処理を 提供します。 mrルーチンは、mxルーチンで提供された機能では実現できない場合に 利用します。 mxルーチンの詳細は Empress ホスト言語: C インターフェイス - mx ルーチン に提供され、 mrルーチンの詳細は Empress ホスト言語: C カーネルレベルインターフェイス - mr ルーチン に提供されています。
このマニュアルでは、 UNIXシェル、Windows バッチの コマンド言語インターフェイスおよび 標準インターフェイスについて記述しています。 また、 スタティックおよびダイナミック埋め込みSQLプログラミングについては、 Empress ホスト言語: SQL プリコンパイラ を参照してください。
ホスト言語インターフェイスの解説をするために使用するサンプルのデータベースと して、repairsというデータベースを使用します。 このデータベースには、personnelとloansテーブルが含まれます。 personnelテーブルには従業員情報が格納されており、 従業員番号、名前、電話番号、クレジット制限が含まれます。 loansテーブルには、従業員のローンについての情報が格納され、 従業員命、ローン手続きをした日付、合計金額の情報が含まれます。 以下に2つのテーブルを作成するために使用したコマンドとテーブルの内容を 示します。
CREATE TABLE personnel (number INTEGER, name CHAR (25,1), phone CHAR (15,1), credit_limit DOLLAR (6,1)); CREATE TABLE loans (name CHAR (25,1), date DATE (1), amount DOLLAR (6,1)); *** Table: personnel *** number name phone credit_limit 10 Kilroy 426-9681 $500.00 3 Jones 667-2951 $500.00 5 Mosca 544-2243 $750.00 17 Wladislaw 723-6073 $200.00 8 Peterson 978-6060 $250.00 4 Scarlatti 961-7363 $100.00 *** Table: loans *** name date amount Mosca 2 February 1992 $150.00 Jones 7 February 1992 $33.95 Kilroy 16 February 1992 $250.00 Wladislaw 27 February 1992 $55.00 Jones 3 April 1992 $25.00 Mosca 4 May 1992 $200.00 Wladislaw 12 May 1992 $25.00 Peterson 6 June 1992 $50.00 Wladislaw 25 June 1992 $75.00 Jones 12 August 1992 $300.00 Scarlatti 5 November 1992 $120.00
このマニュアルでは、これらのテーブルを使用した例を示めすため、 これらの2つのテーブルを含むデータベースを作成することを推奨します。 ただし、既に使用されているデータベースディレクトリ環境下での データベースアプリケーションの実行およびテストをしないよう 別のディレクトリで作業するようにしてください。 これは、アプリケーションが新しいファイルを作成する場合、 データベースファイルを壊す危険を少なくするためです。
このマニュアルの対象者として、C プログラミング言語、およびUNIX シェル、 バッチコマンドを理解し、またデータベースの基本的な概念を持っていること を前提にしています。 もし、そうではない場合は、次項に 推奨する参考文献を示しましたので そちらを参考にしてください。 このマニュアルは、 一般的なプログラミングおよび Empressのアプリケーションの作成についての 一般的なガイドではなく、 あくまでも、 C 言語、UNIX シェル、バッチからの Empressにアクセスするためのリファレンス であり、特定のガイドをする目的で記述されています。
すべてのUNIXシェルの例は、 Bourne シェルに基づいています。 すべてが単純なシェルサンプルであり、 UNIX シェルに親しんでいるのであれば、簡単に理解できます。