17.10 - JARファイル - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1184-171K-JPN
Language
日本語 (日本)

JAR(Java ARchive)ファイルは、zipファイル形式Javaクラスの集合です。クラス(バイト コンパイルされたJava)は、CREATE PROCEDURE(外部形式)のEXTERNAL NAME句を使用して外部Javaルーチンが作成されるときに参照されます。

JARファイルは常にデータベースの外部で作成されます。クラスを参照する前に、JARファイルを登録してからSQL文にコピーする必要があります。いったんJARがデータベースに導入されると、どんな方法でも内容を変更することはできません。また、JARファイルを削除したり、丸ごと置き換えたりすることもできません。

JARファイルは、SQLJ.Install_Jar外部プロシージャを呼び出してJARファイルをインストールしたユーザーだけが利用できます(このプロシージャについては、SQLJデータベースおよび<Teradata Vantage™- SQL外部ルーチン プログラミング、B035-1147>を参照)。CおよびC++外部ルーチンのインフラストラクチャと同様に、システムはJARを含む各データベースのプラットフォーム上にディレクトリを作成します。所定のデータベース内で1つ以上の外部ルーチンのために作成されたCおよびC++ DLLには、他のユーザーまたはデータベースがアクセスできない事実と同様に、Java外部ルーチンのために作成されたJARファイルには、他のユーザーまたはデータベースがアクセスできません。

JARファイルには、特定の権限はありません。したがって、ユーザーまたはデータベースAは、ユーザーまたはデータベースBに導入されたJARを参照する外部プロシージャを作成できません。ただし、ユーザーまたはデータベースAには、CおよびC++外部ルーチンに使用した権限と同じ権限を使用して、ユーザーまたはデータベースBに作成されたJava外部プロシージャへのアクセス権が与えられます。この方法については、<Teradata Vantage™ - SQLデータ制御言語、B035-1149>のGRANT(SQL形式)を参照してください。

Java外部プロシージャに確実にアクセスできるようにする1つの方法は、すべてのJARファイルを導入し、同じデータベース内にすべてのJava外部プロシージャを作成してから、それらのJava外部プロシージャを実行する必要のあるすべてのユーザーにアクセス権を与えます。

詳細は、<Teradata Vantage™- SQL外部ルーチン プログラミング、B035-1147>を参照してください。