17.00 - 17.05 - 手順の概要 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Published
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1147-170K-JPN
Language
日本語 (日本)

システム要件

Java外部ストアド プロシージャを実行するには、事前にシステムが一定の要件を満たしている必要があります。詳細については、システム要件を参照してください。

手順

以下に、Java外部ストアド プロシージャの開発、コンパイル、インストール、および呼び出しの手順の概要を示します。各手順の詳細については、後に続くセクションを参照してください。

  1. 外部ストアド プロシージャのJavaソース コードをデータベース外で記述、テスト、およびデバッグし、結果のクラスをJARまたはZIPファイルに配置します。
  2. SQLJ.INSTALL_JAR外部ストアド プロシージャを呼び出してJARまたはZIPファイルとクラスをデータベースに登録し、SQL識別子をJARまたはZIPファイルに提供します。
  3. 外部ストアド プロシージャに必要なオペレーティング システム サービスへのアクセス レベルを判別します。
    外部ストアド プロシージャ 結果
    入出力を実行しないか、通常のオペレーティング システム ユーザーがアクセス権を持つオペレーティング システム リソースにアクセスする この外部ストアド プロシージャは、'tdatuser' (Teradata Databaseインストール プロセスで作成されるローカル オペレーティング システム ユーザー)の別個のプロセスとして、保護実行モードで実行できます。
    特定のオペレーティング システム リソースにアクセスする必要がある場合 CREATE AUTHORIZATIONまたはREPLACE AUTHORIZATIONを使用することによって、特定のネイティブ オペレーティング システム ユーザーを識別するコンテキストを作成します。そのユーザーは、自身のセキュア サーバーを用いることにより、その許可の下で外部ストアド プロシージャからリソースにアクセス可能になるようなユーザーです。

    外部ストアド プロシージャの説明で使われる場合の「入出力」とは、ファイル オープンや他のオペレーティング システム サービスなど、リソース コンテキストを保持する必要があるオペレーティング システム呼び出しを意味します。このようにしてリソースを使用すると、通常、リソースへのアクセスに使用されるハンドルが呼び出し元に戻されます。そのハンドルは、使用を終了した時点で解放する必要があります。

  4. 外部ストアド プロシージャに関する特定の情報を提供するオプションを持つCREATE PROCEDUREまたはREPLACE PROCEDUREを使用します。
    オプション 説明
    • NO SQL (デフォルト)
    • CONTAINS SQL
    • READS SQL DATA
    • MODIFIES SQL DATA
    外部ストアド プロシージャがSQL文を実行できるかどうかを示します。実行できる場合は、この文がデータベースでSQLデータを読み込んだり変更するかどうかを示します。
    LANGUAGE JAVA 外部ストアド プロシージャのソース コード言語を識別します。
    PARAMETER STYLE JAVA パラメータ スタイルを示します。
    EXTERNAL NAME 外部ストアド プロシージャがCALL文で呼びされる際に、実行されるJARファイルの登録名、JARファイル内のJavaクラス、およびクラス内のJavaメソッドを提供します。
    EXTERNAL SECURITY (オプション) 外部ストアド プロシージャの実行を、前の手順でCREATE AUTHORIZATIONまたはREPLACE AUTHORIZATION文によって作成されたコンテキストと関連付けます。
  5. 正しく動作することが確認できるまで、データベースで、外部ストアド プロシージャをテストします。
  6. GRANTを使用して、その外部ストアド プロシージャの使用を許可されているユーザーに権限を付与します。

関連トピック

詳細情報 参照先
外部ストアド プロシージャの作成 このドキュメント内の該当するトピック。
Java外部ストアド プロシージャのデバッグ トレース テーブルを使用したデバッグ
JARファイルの登録 JARまたはZIPファイルの登録
  • CREATE PROCEDURE
  • REPLACE PROCEDURE
  • CREATE AUTHORIZATION
  • REPLACE AUTHORIZATION
  • Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144
  • Teradata Vantage™ - データベースの管理、B035-1093
外部ストアド プロシージャのサンプル コード 外部ストアド プロシージャのサンプル コード