SQL Selectorオペレータの必須の属性値を宣言するためには、Teradata PTのDEFINE OPERATOR文で属性定義リスト構文を使用します。
構文規則:
構文要素 | 説明 |
---|---|
AccountId = 'acctId' | 特定のユーザー名に関連するアカウントを指定する任意の属性。 この属性を省略すると、デフォルトでデータベースの直接所有者のアカウントIDが設定されます。 |
AddBOMToFile = 'option' | XML、JSON、またはCLOBの出力データ ファイルの先頭に、UTFバイト オーダー マーク(BOM)を追加するかどうかを指定する任意選択の属性。 有効な値は次のとおりです。
AddBOMToFileは、次の2つの条件が満たされている場合にのみ使用できます。
この2つの条件が満たされていないと、この属性で指定した値は無視されます。 このオペレータは、遅延モードでBLOB列から抽出されたデータ ファイルにはBOMを追加しません。 デフォルトの動作では、XML、JSON、またはCLOBの列からデータを抽出するときにBOMを先頭に付加しないため、遅延モードで、Selectorオペレータを使用してXML、JSON、またはCLOBのデータを抽出する場合や、Inserterオペレータを使用して該当するデータをロードする場合は、RemoveBOMFromFile属性に'No'を設定する必要があります。RemoveBOMFromFile属性の詳細は、SQL Inserterオペレータを参照してください。 クライアントUTF-16文字セットの使用時にバイト オーダー マーク(BOM)をXMLエンコーディングに合わせるため、Teradataでは、選択したXML列にXMLSERIALIZEを指定することを推奨します。
|
ARRAY | 複数の属性値を指定する任意のキーワード。 |
DataEncryption = 'option' | SQLリクエスト、応答、およびデータをセキュリティによって完全に暗号化する任意の属性。 有効な値は次のとおりです。
|
DateForm = 'option' | SQL Selectorオペレータ ジョブのDATEデータ型を指定する任意の属性。値は以下のとおりです。
|
INTEGER | 定義する属性のデータ型としてINTEGERを指定するキーワード。 |
IsolationLevel = 'option' | セッション中のすべての問合わせに対する分離レベルを決定するロック アクセス値を指定する任意の属性。 有効な値は、次のとおりです。
データベースが分離レベルの変更に成功すると、次のメッセージがプライベート ログに書き込まれます。 Session Isolation Level: RU |
LobDirectoryPath = 'pathName' | すべてのLOB、JSON、およびXMLのデータ ファイルが書き込まれる既存のディレクトリの完全なパス名を指定する任意の属性。 |
LobFileBaseName = 'fileName' | LOB、JSON、およびXMLのデータ ファイルの名前の先頭に付加される文字列を定義する任意の属性。 SQL Selectorオペレータで作成されるファイル名の形式は以下のとおりです。 <column-name>_<job-id>_p<#>_r<#> 構文規則:
例えば、以下のスキーマがあるとします。 DEFINE SCHEMA <schema-name> ( COL2 BLOB AS DEFERRED BY NAME, COL3 CLOB AS DEFERRED BY NAME, COL4 XML AS DEFERRED BY NAME, COL5 JSON(1000000) AS DEFERRED BY NAME, ); LobFileBaseNameの値が"my_test"の場合、 ファイル名は以下のようになります。
以下同様に続きます。 |
LobFileExtension = 'fileExtension' | LOB、JSON、およびXMLのデータ ファイル名の拡張子を指定する任意の属性。 ’file-extensions’の例には、次のものがあります。
|
LogonMech = ' string ' | 使用するログオン メカニズムを指定する任意の属性。 認証方式によってはこの属性の指定が必須になる場合があります。 属性が8バイトを超えると、ジョブが終了されます。 LogonMechの指定要件については、<Teradata Parallel Transporterユーザー ガイド、B035-2445>の「 ログオン セキュリティ」を参照してください。 |
LogonMechData = ' data' | 追加のログオン メカニズム データを転送する任意の属性。 外部認証方式によってはこの属性の指定が必須になります。 LogonMechDataの指定要件については、<Teradata Parallel Transporterユーザー ガイド、B035-2445>の「 ログオン セキュリティ」を参照してください。 |
LogSQL = 'option' | 対象ジョブのSQLの中で、ログに記録する数を制御する任意の属性。 有効なオプションは次のとおりです。
|
MaxDecimalDigits = maxDecimalDigits | エクスポートできるDECIMALデータ型の最大桁数を指定する任意の属性。 デフォルト値は38です。 属性値qが38>=q>=1の場合、返されたDECIMAL (n[,m])データ項目のうちn>qのものはDECIMALに暗黙的にCASTされます。オーバーフローは明示的CASTと同様に処理されます。 メインフレーム接続のプラットフォームでは、MaxDecimalDigits属性を31以下にして、ネイティブ命令セットの容量を超える表現を回避することが推奨されます。 |
OutLimit = maxRecords | オペレータの各インスタンスで処理される最大レコード数を指定する任意の属性。 INTEGER OutLimit = 1000 指定する場合、OutLimit値は1以上である必要があります。 OutLimitを指定しない場合、処理レコード数に制限はありません。 |
PrivateLogName = 'logName' | Teradata PT Loggerによってパブリック ログ内部に保持されるログの名前を指定する任意の属性。 プライベート ログには、オペレータによる出力がすべて記録されます。 プライベート ログは、次のようにtlogviewコマンドを使用して表示できます。ここで、jobIdはTeradata PTジョブ名、privateLogNameはオペレータのPrivateLogName属性の値です。 tlogview -j jobid -f privatelogname プライベート ログを指定しない場合、出力はすべてパブリック ログに格納されます。 tlogviewコマンドの詳細については、Teradata PTユーティリティのコマンドを参照してください。 |
QueryBandSessInfo = 'queryBandExpression' | ジョブ セッションの存続期間中のクエリー バンドを指定する任意の属性。 queryBandExpressionは、セミコロンで区切られ、セミコロンで終了する、名前=値ペアのセットです。 ユーザーは、下記の例のようなクエリー バンド式を定義します。 ‘org=Finance;load=daily;location=west;’ QueryBandSessInfoは、ARRAY属性として指定することもできます。 クエリー バンド式の作成規則については、<Teradata Database SQLデータ定義言語 - 構文規則および例、B035-1144>と<SQLデータ定義言語 - 詳細トピック、B035-1184>を参照してください。 QueryBandSessInfo属性の値は、SQL Selectorオペレータのプライベート ログに表示されます。 QueryBandSessInfo属性の使用には、以下の規則が適用されます。
|
ReportModeOn = 'option' | フィールド レポート モードを使用するかどうかを指定する任意の属性。 この機能を使用すると、Teradata Databaseからデータを文字形式で抽出した後、DataConnectorオペレータを使用してそのデータを「区切り」(VARTEXT)形式に変換してテキスト ファイルに保存できます。 文字形式(フィールド レポート モード)でデータをエクスポートする場合は、スキーマで定義された列がVARCHARである必要があります。 値は次のいずれかです。
|
RoleName = 'role name' | Teradata環境にセキュリティを実装する任意の属性。オペレータの先頭には、"SET ROLE"の値が付加されます。構文は、次のようにTeradata Databaseに送信されます。 SET ROLE <role name>; 例: SET ROLE All; 「SET ROLE」コマンドの使用の詳細については、<Teradata Database SQLデータ定義言語 - 構文規則および例、B035-1144>を参照してください。 VARCHAR ARRAYを使用すると、複数の値を指定できます。以下に例を示します。 VARCHAR ARRAY RoleName = ['role name1', 'role name2'], SQLセッションが接続されると、オペレータはそのセッションでTeradata Databaseにリクエストを送信します。 オペレータはこの属性の値を検証しません。オペレータは、その値をそのままTeradata Databaseに渡します。Teradata Databaseはその値を検証します。妥当性検査が失敗した場合、オペレータはTeradata Databaseエラーでジョブを終了します。
C形式のコメントは値で許可され、Teradata Databaseに渡されます。
ANSI形式のコメントは、値でサポートされません。値にANSI形式のコメントが含まれている場合、オペレータはTeradata Database構文エラーでジョブを終了できます。
セミコロンは値に使用できません。これは、オペレータがリクエストごとに1つのステートメントのみを許可するためです。値にセミコロンが含まれている場合に、オペレータはオペレータ エラーでジョブを終了します。
|
SelectStmt = 'SELECT statement(s);' | Teradata SQL SELECT文または結果表の形式で行データを返すステートメントを指定する必須の属性。 SQL Selectorオペレータは、単一または複数のSELECT文を実行依頼できます。 指定されたSELECT文は、Teradata Databaseに送信される単一のリクエストとして処理されます。 リクエスト全体は、1MB(Teradata Databaseの制約)より大きくできません。 |
TdpId = 'dbcName' | Teradata SQL SELECT文のTeradata Databaseマシン(非メインフレーム プラットフォーム)またはTDP(メインフレーム プラットフォーム)の名前を指定する任意の属性。 dbcNameは、最大256文字まで指定でき、ドメイン サーバー名を1つ指定できます。 TdpId属性に対して値を指定しない場合、オペレータは、システム管理者がユーザー用に設定したデフォルトのTdpIdを使用します。 メインフレームでは、1文字のTdpIdがサポートされます。 1文字だけを指定すると、TDPで始まる4文字のTdpIdの略語とみなされます。
|
TimeZoneSessInfo = 'timeZoneValue' | オプションの属性。これにより、オペレータのジョブ セッションの期間にデフォルトのタイムゾーン変位を変更できます。 この属性の値を指定すると、オペレータはSET TIME ZONE <timeZoneValue>; SQLリクエストを作成します。 SQLセッションが接続されると、オペレータはそのセッションでTeradata Databaseにリクエストを送信します。 以下に例を示します。
オペレータはこの属性の値を検証しません。オペレータは、その値をそのままTeradata Databaseに渡します。Teradata Databaseはその値を検証します。妥当性検査が失敗した場合、オペレータはTeradata Databaseエラーでジョブを終了します。
C形式のコメントは値で許可され、Teradata Databaseに渡されます。
ANSI形式のコメントは、値でサポートされません。値にANSI形式のコメントが含まれている場合、オペレータはTeradata Database構文エラーでジョブを終了します。
セミコロンは値に使用できません。これは、オペレータが "SET TIME
ZONE SQL"リクエスト内で1つのステートメントのみを許可するためです。値にセミコロンが含まれている場合に、オペレータはオペレータ エラーでジョブを終了します。
SET TIME ZONE SQLについて詳しくは、<Teradata Database SQLデータ定義言語 構文規則および例>マニュアルを参照してください。 |
TraceLevel = 'level' | オペレータの各インスタンスによってパブリック ログ(PrivateLogName属性で指定されている場合はプライベート ログ)に書き込まれる診断メッセージの種類を指定する任意の属性。 診断トレース機能は、ログ ファイルで詳細な情報を提供するため、問題の追跡や診断に役立ちます。 トレース レベルは次のとおりです。
VARCHAR ARRAYを使用すると、複数の値を指定できます。以下に例を示します。 VARCHAR TraceLevel = 'CLI' VARCHAR TraceLevel = 'OPER' VARCHAR ARRAY TraceLevel = [ 'CLI' ] VARCHAR ARRAY TraceLevel = [ 'CLI', 'OPER' ] TraceLevel属性は、診断を支援するためにのみ指定します。 この属性によって得られる追加情報の量とタイプは、ニーズの変化に合わせてリリースごとに変わります。
|
TransformGroup = 'transformgroupname' | Teradata複合データ型(CDT)のアクティブな変換の変更をサポートするオプション属性。この値は、<udt name> <transform group name>であり、オペレータの先頭には、ハードコードされた文字列"SET TRANSFORM GROUP FOR TYPE "が付加されます。RDBMSに送信される構文は次のとおりです: SET TRANSFORM GROUP FOR TYPE <udt name> <transform group name>; 例えば、次のように指定します。
"SET TRANSFORM GROUP FOR TYPE JSON CHARACTER SET LATIN TD_JSON_VARCHAR;" VARCHAR ARRAYを使用すると、複数の値を指定できます。以下に例を示します。
VARCHAR ARRAY TransformGroup = ['JSON CHARACTER SET LATIN TD_JSON_VARCHAR', 'ST_GEOMETRY TD_GEO_VARCHAR'], SQLセッションが接続されると、オペレータはそのセッションでTeradata Databaseにリクエストを送信します。 オペレータはこの属性の値を検証しません。オペレータは、その値をそのままTeradata Databaseに渡します。Teradata Databaseはその値を検証します。妥当性検査が失敗した場合、オペレータはTeradata Databaseエラーでジョブを終了します。
C形式のコメントは値で許可され、Teradata Databaseに渡されます。
ANSI形式のコメントは、値でサポートされません。値にANSI形式のコメントが含まれている場合、オペレータはTeradata Database構文エラーでジョブを終了できます。
セミコロンは値に使用できません。これは、オペレータがリクエストごとに1つのステートメントのみを許可するためです。値にセミコロンが含まれている場合に、オペレータはオペレータ エラーでジョブを終了します。
|
TreatDBSRestartAsFatal= ‘option’ | Teradata Databaseの再起動時にジョブを終了するかどうかをオペレータに通知する任意の属性。 TreatDBSRestartAsFatal値は次のとおりです。
|
UnicodePassThrough = ' value ' | Unicode Pass Through機能を有効または無効にするようにオペレータに指示する任意の属性。 有効な値は、次のとおりです。
TPTジョブがUTF8またはUTF16のセッション文字セットを使用している場合、UnicodePassThrough属性を'On'に設定して、オペレータがUnicodeパス スルー文字を使用してデータをエクスポートできるようにすることができます。
|
UserName = 'userId' | Teradata Databaseのユーザー名を指定する属性。 外部認証ログオン方式によっては、この属性と互換性がない場合があります。 UserNameの指定要件の詳細については、<Teradata Parallel Transporterユーザー ガイド、B035-2445>の「ログオン セキュリティ」を参照してください。 |
UserPassword = 'password' | ユーザー名に関連するパスワードを指定する属性。 外部認証ログオン方式によっては、この属性と互換性がない場合があります。 パスワードの指定要件の詳細については、<Teradata Parallel Transporterユーザー ガイド、B035-2445>の「ログオン セキュリティ」を参照してください。 |
VARCHAR | 定義済み属性のデータ型としてVARCHARを指定するキーワード。 |
WorkingDatabase = 'databaseName' | ログオン データベース以外のデータベースをデフォルト データベースとして指定する任意の属性。 この属性で指定されたデータベース名は、2つのSQLセッションを接続した直後にオペレータによって送られるTeradata SQL DATABASE文で使用されます。 WorkingDatabaseが指定されない場合、修飾されていないすべてのテーブル名において、ログオンしたユーザーに関連付けられたデフォルト データベースがWorkingDatabaseとみなされます。 |