アプリケーションのコンパイルおよびリンク

この項では、TTClassesアプリケーションをコンパイルおよびリンクする方法について説明します(WindowsでODBCドライバ・マネージャを使用する場合の考慮事項に関する項もあります)。

ノート:

TimesTenバージョンのアップグレード後に、TTClassesアプリケーションを再コンパイルして再リンクします。

また、関連情報については『Oracle TimesTen In-Memory Database C開発者ガイド』の次の項を参照してください。

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直接接続

libttclasses.so

libtten.so

TimesTenクライアント/サーバー接続

libttclassesCS.so

libttenCS.so

TimesTenドライバ・マネージャ

libttclassesTTDM.so

libttdrvmgr.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クイック・スタートおよびサンプル・アプリケーションについてを参照してください。)

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クライアント/サーバー接続

ttclasses221CS.lib

Microsoft ODBCドライバ・マネージャ

ttclasses221DM.lib

次の項、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データ型もサポートしていません。ドライバ・マネージャを使用する場合、シグネチャでこれらのデータ型のいずれかを使用するメソッドをコールすることはできません(たとえば、TTCmdgetColumn()getColumnNullable()getNextColumn()getNextColumnNullable()setParam()getParam()またはBindParameter()の各メソッドの適用可能なオーバーロード・バージョンなどです)。