アプリケーションのコンパイルおよびリンク
この項では、TTClassesアプリケーションをコンパイルおよびリンクする方法について説明します(WindowsでODBCドライバ・マネージャを使用する場合の考慮事項に関する項もあります)。
ノート:
TimesTenバージョンのアップグレード後に、TTClassesアプリケーションを再コンパイルして再リンクします。
また、関連情報については『Oracle TimesTen In-Memory Database C開発者ガイド』の次の項を参照してください。
-
ダイレクト・ドライバとクライアント・ドライバの使用の対比、Windows上でドライバ・マネージャを使用するかどうかなど、TimesTenのリンク・オプションに関する一般情報を提供するリンク・オプション
LinuxまたはUNIXでのアプリケーションのコンパイルおよびリンク
この項では、アプリケーションをリンクするために使用できるTTClassesライブラリについて説明します(TimesTenドライバ・マネージャ(TTDM)の考慮事項も含まれます)。
TTDMは、TimesTenデータベースで使用するように設計および最適化された軽量のODBCドライバ・マネージャです。アプリケーションはTTDMライブラリに直接リンクし、TTDMは関連するODBCドライバ・ライブラリを動的にロードし、必要に応じてアプリケーションからのODBCコールを渡します。TTDMを使用すると、アプリケーションはTimesTenの直接接続とクライアント/サーバー接続を同時に使用できます。Oracle TimesTen In-Memory Database C開発者ガイドの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ライブラリをリストします。示されているように、各TTClassesライブラリには対応するTimesTenライブラリがあり、アプリケーションもリンクする必要があります。
| 使用方法 | TTClassesライブラリ | TimesTenライブラリ |
|---|---|---|
|
TimesTen直接接続 |
|
|
|
TimesTenクライアント/サーバー接続 |
|
|
|
TimesTenドライバ・マネージャ |
|
|
たとえば、次をリンク・コマンドに追加すると、クライアント・ドライバが使用されます。
-Ltimesten_home/install/lib -lttclassesCS-Lオプションを指定すると、リンカーでライブラリ・ファイル用のTimesTen libディレクトリが検索されます。-lttclassesCSオプションを指定すると、ドライバでリンクが行われます。
AIXでは、アプリケーションとTimesTen ODBCクライアント・ドライバをリンクする場合、リンク・コマンドにはクライアント・ドライバの後にC++ランタイム・ライブラリを含める必要があります(クライアント・ドライバはC++で記述されており、AIXでは自動的にはリンクされないため)。
-Ltimesten_home/install/lib -lttclassesCS -lC_rTimesTen Classicクイック・スタートのMakefileを使用して、独自のMakefileを作成できます。(TimesTenクイック・スタートおよびサンプル・アプリケーションについてを参照してください。)
Windowsでのアプリケーションのコンパイルおよびリンク
アプリケーションをコンパイルする場合、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クライアント/サーバー接続 |
|
|
Microsoft ODBCドライバ・マネージャ |
次の項、ODBCドライバ・マネージャ使用時の考慮事項(Windows)を参照してください。 |
リンク・コマンドに、timesten_home\install\lib\ttclasses221.libなどの適切なライブラリを追加します。
クイック・スタートのsample_code/ttclassesディレクトリのMakeファイルを使用すると、独自のMakeファイルを作成できます。(TimesTenクイック・スタートおよびサンプル・アプリケーションについてを参照してください。)
ODBCドライバ・マネージャ使用時の考慮事項(Windows)
WindowsでODBCドライバ・マネージャを使用する場合、TTClassesには次の制限があることに注意してください。
-
XLA機能はサポートされません。
-
REF CURSOR機能はサポートされません。
また、ドライバ・マネージャは、TimesTenで使用する場合、SQL_C_BIGINTおよびSQL_C_TINYINTのODBC Cデータ型もサポートしていません。ドライバ・マネージャを使用する場合、シグネチャでこれらのデータ型のいずれかを使用するメソッドをコールすることはできません(たとえば、TTCmdのgetColumn()、getColumnNullable()、getNextColumn()、getNextColumnNullable()、setParam()、getParam()またはBindParameter()の各メソッドの適用可能なオーバーロード・バージョンなどです)。