この章では、TTClasses開発環境の使用を開始する際に役立つ情報を示します。
TTClassesは、TimesTenのインストールによりコンパイルおよび事前構成されます。
ここでは、次の項目について説明します。
この項では、Linux、UNIXまたはWindowsでTimesTenの環境変数を設定する方法について説明します。
TTClassesを使用するには、timesten_home /binディレクトリにある(timesten_homeはTimesTenインスタンスのホーム・ディレクトリ)適切なttenvスクリプトを使用して、シェル環境変数を正しく設定する必要があります。LinuxまたはUNIXプラットフォームの場合、このスクリプトはttenv.shまたはttenv.cshのいずれか(使用するシェルによって異なる)です。
これを直接実行するかわりに、必要なスクリプトの行をログイン初期化スクリプト(例: .profileまたは.cshrc)に追加することができます。
TimesTenの環境変数設定は、Oracle TimesTen In-Memory Databaseインストレーション、移行およびアップグレード・ガイドの環境変数に説明されています。詳細はその説明を参照してください。
ここでは、TTClassesアプリケーションをコンパイルおよびリンクする方法について説明します(WindowsでODBCドライバ・マネージャを使用する場合の考慮事項に関する項もあります)。
また、関連情報については『Oracle TimesTen In-Memory Database C開発者ガイド』の次の項を参照してください。
ダイレクト・ドライバとクライアント・ドライバの使用の対比、Windows上でドライバ・マネージャを使用するかどうかなど、TimesTenのリンク・オプションに関する一般情報については、リンク・オプションに関する説明
アプリケーションのコンパイルおよびリンクに関する説明
アプリケーションをコンパイルする場合、installation_dir/include/ttclassesディレクトリにあるTTClassesヘッダー・ファイルを含めます。これを行うには、timesten_home/installからinstallation_dirへのシンボリック・リンクを使用して、ディレクトリ内のTTInclude.hをインクルードします。次に例を示します。
次のコンパイル・コマンドを使用します。
-Itimesten_home/install/include
コードで、次の行を使用します。
#include <ttclasses/TTInclude.h>
TTClasses XLAプログラムには、次も含める必要があります。
#include <ttclasses/TTXla.h>
次の表に、LinuxまたはUNIXプラットフォームでアプリケーションのリンクに使用できるTTClassesライブラリをリストします。
| 使用方法 | ライブラリ |
|---|---|
| TimesTen直接接続 | libttclasses.so |
| TimesTenクライアント/サーバー接続 | libttclassesCS.so |
たとえば、次をリンク・コマンドに追加すると、クライアント・ドライバが使用されます。
-Ltimesten_home/install/lib -lttclassesCS
-Lオプションを指定すると、リンカーでライブラリ・ファイル用のTimesTen libディレクトリが検索されます。-lttclassesCSオプションを指定すると、ドライバでリンクが行われます。
AIXでは、アプリケーションとTimesTen ODBCクライアント・ドライバをリンクする場合、リンク・コマンドには、クライアント・ドライバの後に、C++ランタイム・ライブラリを含める必要があります(クライアント・ドライバはC++で記述されており、AIXでは自動的にはリンクされないため)。
-Ltimesten_home/install/lib -lttclassesCS -lC_r
TimesTen Classicクイック・スタートのMakefileを使用して、独自のMakefileを作成できます。(TimesTenクイック・スタートおよびサンプル・アプリケーションを参照してください。)
アプリケーションをコンパイルする場合、installation_dir\include\ttclassesディレクトリにあるTTClassesヘッダー・ファイルを含めます。これを行うには、timesten_home/installからinstallation_dirへのシンボリック・リンクを使用して、ディレクトリ内のTTInclude.hをインクルードします。次に例を示します。
次のコンパイル・コマンドを使用します。
/Itimesten_home\install\include
コードで、次の行を使用します。
#include <ttclasses/TTInclude.h>
TTClasses XLAプログラムには、次も含める必要があります。
#include <ttclasses/TTXla.h>
次の表に、Windowsプラットフォームでアプリケーションのリンクに使用できるTTClassesライブラリをリストします。
| 使用方法 | ライブラリ |
|---|---|
| TimesTen直接接続 | ttclasses181.lib |
| TimesTenクライアント/サーバー接続 | ttclasses181CS.lib |
| Microsoft ODBCドライバ・マネージャ | ttclasses181DM.lib
次の「ODBCドライバ・マネージャ使用時の考慮事項(Windows)」の項を参照してください。 |
リンク・コマンドに、timesten_home\install\lib\ttclasses181.libなどの適切なライブラリを追加します。
クイック・スタートのsample_code/ttclassesディレクトリのMakeファイルを使用すると、独自のMakeファイルを作成できます。(TimesTenクイック・スタートおよびサンプル・アプリケーションを参照してください。)
WindowsでODBCドライバ・マネージャを使用する場合、TTClassesには次の制限があることに注意してください。
XLA機能はサポートされません。
REF CURSOR機能はサポートされません。
このドライバ・マネージャでは、ODBCの標準ではないLOBロケータAPIまたはLOBデータ型はサポートしていません。ただし、ユーザーは「LOBの使用」で説明するとおり、LOBの簡易データ・インタフェースは使用できます。
また、ドライバ・マネージャは、TimesTenで使用する場合、SQL_C_BIGINTおよびSQL_C_TINYINTのODBC Cデータ型もサポートしていません。ドライバ・マネージャを使用する場合、シグネチャでこれらのデータ型のいずれかを使用するメソッドをコールすることはできません(たとえば、TTCmdのgetColumn()、getColumnNullable()、getNextColumn()、getNextColumnNullable()、setParam()、getParam()またはBindParameter()の各メソッドの適用可能なオーバーロード・バージョンなどです)。
|
ノート: TimesTenでは、WindowsおよびLinux/UNIX用のサンプル・ドライバ・マネージャを用意しており、クイック・スタート・サンプル・アプリケーションが付属しています。(TimesTenクイック・スタートおよびサンプル・アプリケーションを参照してください。)TimesTenの直接ドライバ、クライアント・ドライバおよびODBC 2.5をサポートしており、前述した機能またはパフォーマンスの制限はありません。データベースへの直接接続とクライアント・サーバー接続の両方を同時に使用する必要のあるアプリケーションでは、このドライバ・マネージャを使用することで、パフォーマンスにほとんど影響を与えることなくこの同時使用を実現できます。 |
TimesTen Classicクイック・スタートおよびTimesTen Scaleoutのサンプル・アプリケーションは、TimesTenのGitHubの場所から入手できます。TimesTen Classicのクイック・スタート用に、チュートリアルや使用方法の手順、サンプル・アプリケーションを含む完全なセットが用意されています。TimesTen Scaleoutについては、ODBCとJDBCのサンプル・アプリケーションが用意されています。
環境を構成した後、サンプル・アプリケーションをコンパイルして実行することで、すべて正しく設定されていることを確認できます。TimesTen Classicの場合、アプリケーションはクイック・スタートのsample_codeディレクトリ内にあります。これらのコンパイルおよび実行方法については、サブディレクトリの手順を参照してください。TimesTen Scaleoutの場合、oracle-timesten-examples GitHubリポジトリのクローンを作成し、READMEファイルの手順に従います。
TimesTen Classicの場合、次のものが含まれます。
スキーマおよび設定: build_sampledbスクリプト(LinuxまたはUNIXでは.shまたはWindowsでは.bat)は、サンプル・データベースおよびスキーマを作成します。サンプル・アプリケーションを使用する前に、このスクリプトを実行します。
環境および設定: ttquickstartenvスクリプト(通常、TimesTenの設定に使用するttenvスクリプトのスーパーセット)(LinuxまたはUNIXでは.shまたは.csh、Windowsでは.bat)によって、環境を設定します。このスクリプトは、サンプル・アプリケーションをコンパイルおよび実行するセッションに入るたびに実行する必要があります。
サンプル・アプリケーションおよび設定: クイック・スタートにはTTClassesのサンプル・アプリケーションとそのソース・コードが含まれています。