プロシージャ
以下に、UDMの開発、コンパイル、インストール、および使用の手順の概要を示します。
- UDM用のCまたはC++コードを作成し、テストとデバッグを行ないます。
データベース用の拡張機能を含むバージョンのGDB(GNU Source-Level Debugger)であるTeradata C/C++ UDF Debuggerを使用できます。詳細については、UDFのデバッグ用C/C++コマンド ラインを参照してください。
- CREATE TYPEを使用して、UDTを作成し、コンストラクタ メソッドとインスタンス メソッドを指定します。
書式 CREATE TYPE文中で使用するMETHODの指定 インスタンス メソッド INSTANCE METHODまたはMETHOD STRUCTURED型のコンストラクタ メソッド CONSTRUCTOR METHOD - CREATE METHOD文またはREPLACE METHOD文を使用して、ソース コードまたはオブジェクトの場所を指定し、それをサーバー上にインストールします。 一般に、SYSLIBやSYSUDTLIBなどのTeradataシステム データベースでは、UDMを作成しません。詳細については、UDMのインストールを参照してください。
ソース コードが発行されると、メソッドがコンパイルされ、メソッドの属するデータベースに関連するダイナミック リンク ライブラリ(DLLまたはSO)とリンクされ、システム内のデータベースのすべてのノードに配布されます。
- UDMがSTRUCTURED型UDT用の変換、整列、またはキャストの機能を提供するインスタンス メソッドである場合は、変換、整列、またはキャストのルーチンとしてUDMを登録します。そうでない場合は、次のステップにスキップします。
UDMがUDT用に実装する機能 UDMの登録に使用する文 キャスト CREATE CASTまたはREPLACE CAST 整列 CREATE ORDERINGまたはREPLACE ORDERING 変換 CREATE TRANSFORMまたはREPLACE TRANSFORM - UDMが正しく動作することが確認できるまで、保護実行モードでUDMをテストします。
保護モードは、UDMのデフォルトの実行モードです。保護モードの場合、データベースは、UDMがアクセスするすべてのデータを、独自のローカル ワークスペース内の別個のプロセスとして分離します。そのため、メソッドの実行速度は遅くなります。メモリ違反などのシステム エラーが発生した場合、エラーは、メソッドとそのメソッドを実行しているトランザクションに限定されます。
- ALTER METHODを使用して、非保護実行モードで実行するようUDMを変更します。
- ステップ5以降のテストを再実行し、正しい動作を確認できるまで非保護実行モードでUDMをテストします。
- GRANTを使用して、そのUDTの使用を許可されているユーザーに権限を付与します。
関連トピック
詳細情報 | 参照先 |
---|---|
UDMの開発 | このドキュメント内の該当するトピック。 |
UDMのデバッグ | UDMのデバッグ |
UDMのコード サンプル | UDMのサンプル コード |
|
|