目次ページ  前ページ   次ページ

10. データベース言語SQLの解説

10.2 問い合わせの儀式


10.2.3 SQLを埋め込み言語として使う

 SQLの構文は、プログラマが作成するホスト(主)プログラム文の中に組み込んで使うことを目的としています。言語の仕様を元に、プログラムモジュールのライブラリが必要であって、ライブラリを繋ぐという宣言がどこかで行われます。このライブラリを使うとき、つまりサブプログラムを呼ぶ手順のとき、プログラマが現在使っているプログラミング言語の定義には無い、別の予約語を使う書式になります。採用しているプログラミング言語が変わっても、この書式のまま使う方法が考えられました。これを埋め込み言語(embedded language)と言います。スクリプト言語(scripting language)とも言います。プログラミング言語が変わると、組み込み言語の書式も変えるのでは混乱します。SQLは、この変更無しで使うように提案された言語です。しかし、これを利用する元の言語のコンパイラは、必要なライブラリを組み込むようにしなければなりません。これは、コンパイラのベンダの方で解決してもらいます。ユーザにとって面倒なことは、元のプログラミング言語の、バージョンの改訂を伴うことです。埋め込みは、プログラム文書だけでなく、実際にはプログラムコードを混ぜて使うリンカーレベルで必要です。二つ後の段落で説明しますが、クラスはサブプログラムの性格を持ちます。これをオブジェクトと解釈して「ホストのプログラミングコードに埋め込む」と言う用語OLE (Object Linking and Embedding) を使います。具体的な例で言うと、ホストのプログラミング言語がVisual Basicであるとして、これからEXCELまたはACCESSで作成したファイルをそのまま組み込んで(embeddingして)利用できるようにするソフトウエア技法です。実は、この組み込みを逆にして使えるようにしたのが、EXCEL VBA, ACCESS VBAです。VBAはVisual Basic for Applicationsの頭字語です。Visual Basic本体の簡易版になっていて、専用に使う予約語があります。ACCESSの場合には、本体は間接的にSQLを使っていますが、VBAの中から明示的にSQL関係のコマンドも利用できます。
2010.10 橋梁&都市PROJECT

前ページ  次ページ