OTT(Object Type Translator)は、Oracleサーバーのユーザー定義型を利用するアプリケーションの開発に役立ちます。
SQL CREATE TYPE文を使用して、オブジェクト型を作成できます。これらの型の定義をデータベースに格納しておき、データベースの表を作成するときに使用できます。これらの表への移入後は、OCI、Pro*C/C++またはJavaのプログラマは表に格納されているオブジェクトにアクセスできます。
オブジェクト・データにアクセスするアプリケーションには、データをホスト言語形式で表現する機能が必要です。これは、オブジェクト型をC構造体として表現することによって実現できます。プログラマがデータベース・オブジェクト・タイプを表す構造体宣言を、手入力でコーディングすることは可能です。ただし、多くの型がある場合、この作業は時間がかかり、エラーを生む原因になりがちです。OTTを使用すると、必要な構造体の宣言が自動的に生成されるため、作業を軽減できます。Pro*C/C++の場合、アプリケーション側では、OTTによって生成されたヘッダー・ファイルをインクルードするのみで済みます。OCIの場合は、アプリケーション側ではOTTによって生成される初期化関数もコールする必要があります。
OTTは、格納されているデータ型を表す構造体を作成するのみでなく、オブジェクト型またはそのフィールドがNULLかどうかを示す対になるインジケータ構造体も生成します。