Teradata DSNのオプション - ODBC Driver for Teradata

ODBC Driver for Teradata® ユーザー ガイド

Product
ODBC Driver for Teradata
Release Number
16.20
Published
2018年10月
Language
日本語
Last Update
2019-02-12
dita:mapPath
ja-JP/fxv1527114222338.ditamap
dita:ditavalPath
ja-JP/fxv1527114222338.ditaval
dita:id
B035-2526
Product Category
Teradata Tools and Utilities

次表のキーワード オプションをodbc.iniファイルのデータ ソース仕様セクションおよびデフォルト データ ソース仕様セクションに追加できます。このオプションは、odbc.iniファイル経由でのみ構成できます。次の表に、odbc.iniファイルで構成可能なオプションの一覧を示します。

ODBC Driver for Teradataでは、特定のアプリケーションで利用可能なDSN設定の使用方法が定義されています。詳細については、サードパーティ アプリケーションのDSN設定を参照してください。

キーワード/同義語 説明
AccountStr=<account>

または

Account=<account>

データベースへのログオン時に入力するアカウント値を指定します。指定しない場合は、ユーザーの作成または変更時に指定したアカウント値を、データベースがデフォルトとして使用します。
このオプションが便利なのは、ユーザーが実行しているアプリケーションを判定、またはユーザーをログオン制限することによって、ユーザーを分離できるからです。
CharacterSet=<charset name>

または

Charset=<charset name>

セッション文字セットを指定します。デフォルトはASCIIです。

セッションの文字セットを指定します。デフォルトのASCIIセッションは、7ビットのASCII文字にのみ使用することを強く推奨します。米国英語を含むすべての言語に推奨されるデフォルトのセッション文字セットは、UTF8です。デフォルトとして指定されている文字セットとは別の文字セットを使用する場合、このボックスで指定または選択します。

利用可能なオプションは次のとおりです。
  • ASCII
  • UTF8
  • UTF16
  • LATIN1252_0A
  • LATIN9_0A
  • LATIN1_0A
  • Shift-JIS(Windows、DOS互換、KANJISJIS_0S)
  • EUC(Unix互換、KANJIEC_0U)
  • IBM Mainframe (KANJIEBCDIC5035_0I)
  • KANJI932_1S0
  • BIG5 (TCHBIG5_1R0)
  • GB (SCHGB2312_1T0)
  • SCHINESE936_6R0
  • TCHINESE950_8R0
  • NetworkKorean(HANGULKSC5601_2R4)
  • HANGUL949_7R0
  • ARABIC1256_6A0
  • CYRILLIC1251_2A0
  • HEBREW1255_5A0
  • LATIN1250_1A0
  • LATIN1254_7A0
  • LATIN1258_8A0
  • THAI874_4A0
上記の一覧にないユーザー定義のセッション文字セットを使用するには、そのユーザー定義セッション文字セットの名前を入力してください。

DateTimeFormat=[A|I]AA

DATE、TIME、およびTIMESTAMPの各データ型の形式を指定します。
  • A - ANSI
  • I - 整数
文字の仕様の意味は、次のとおりです。
  • 1番目の文字 = DATE形式
  • 2番目の文字 = TIME形式
  • 3番目の文字 = TIMESTAMP形式

推奨される設定は、AAA形式(デフォルト)またはIAA形式(オプション)です。整数データ型は、TIME形式対応が廃止されたため、推奨されません。詳細については、整数型時刻を参照してください。TIMESTAMPを示す最後の文字は常にANSIです。

DataSourceDNSEntries DataSourceDNSEntries DSNオプションは、データベース名に対してDNSにいくつエントリが定義されているかを、ODBC Driver for Teradataに通知します。このオプションの初期値によって、ODBC Driver for Teradataがデータベース名をIPアドレスに解決する方法を制御します。この値を設定しない場合、デフォルト値は未定義(空)です。ODBC DSNに複数のデータベース名がある場合、DataSourceDNSEntriesオプションはすべての名前に適用されます。
ODBC DSNまたは接続文字列内で、名前ではなくIPアドレスによってデータベースが指定された場合、DataSourceDNSEntriesオプションは無視されます。

DataSourceDNSEntries = 最良の結果を得るには、未定義(デフォルト設定)を推奨します。この設定により、ODBC Driver for TeradataがDNSを動的に検索し、指定したデータベース名に対して使用できるすべてのCOPを見つけることができます。このアプローチを使用すると、将来的にTeradata Database (およびDNS)に追加された新しいノードを、ODBCを変更することなく、ODBC Driver for Teradataが自動検出します。

DataSourceDNSEntries = 0は、そのデータベース名に対するcopエントリがDNSにないことを示します。データベース名は、名前によってのみ解決されます。COPサフィックスを使用した解決は試みられません。DNSを利用して負荷分散を行なう環境では、この動作が望ましいことがあります。DNSを負荷分散に使用する場合、管理者は、DNSを使用してデータベース名を解決するたびに異なるIPアドレスまたは複数のIPアドレスを異なる順序で提供するようDNSを構成することができます。

DataSourceDNSEntries = 値。0以外の値は、データベース名に対するcopエントリがDNSにあり、最後のCOPエントリがその値であることを示します。初めて接続を試みると、1と値の間の数字がランダムに選択されます。それ以降は接続のたびに1が加算されて次の数字になります(ラウンドロビン)。このアプローチでは、コストの大きいDNS解決の失敗は発生しません(コストはDNSの構成方法によって異なります)。ただし、後でDNSにエントリを追加した場合、指定した値を大きくしない限り、これらのエントリをODBC Driver for Teradataが検出することはありません。

DontUseHelpDatabase=[Yes|No]

または

DontUseHelpDB=<[Yes|No]

HELP DATABASEを使用するかどうかを指定します。
  • No (デフォルト) - ドライバはHELP DATABASEコマンドを使用します。
  • Yes - SQLTablesでワイルドカード文字が使用されていないときは、SQLTablesは、HELP DATABASEコマンドではなく、SELECT文を使用します。
SQLTablesは、UseXViewsの設定に応じて、dbc.tablesまたはdbc.tablesxのいずれかを使用します。
DontUseTitles=[Yes|No] 列名を返すか列タイトルを返すかを指定します。
  • No - 列タイトルを返します(定義がある場合)。ない場合は、列名を返します。
  • Yes (デフォルト) - 列タイトルではなく列名を返します。列名は、Crystal Reportsなどのアプリケーションで必要です。

SQLColumnsの列タイトルは、LABEL列に表示されます。

EnableUDFUpload=[Yes|No]
ODBCドライバがUDFソース ファイルのアップロードをサポートするかどうかを指定します。
  • Yes - UDFソース ファイルがアップロードされます。
  • No(デフォルト) - UDFソース ファイルはアップロードされません。

詳細については、Teradata® Call-Level Interface Version 2リファレンス - メインフレーム接続システム, B035-2417ElicitFileおよびTeradata® Database SQL外部ルーチン プログラミング, B035-1147を参照してください。

EnableExtendedStmtInfo=[Yes|No] 利用可能なときに、データベースから拡張ステートメント情報を使用するかどうかを指定します。
  • Yes(デフォルト) - 拡張ステートメント情報は要求され、使用されます。

    拡張ステートメント情報を利用できる場合、ODBC API関数のSQLDescribeParamはサポートされ、SQLGetFunctionsがSQL_API_SQLDESCRIBEPARAMに対してSQL_TRUE(サポート)を返します。

  • No - データベースがサポートする場合でも、拡張ステートメント情報が使用されません。

    拡張ステートメント情報が利用できない場合は、SQLDescribeParamはサポートされず、SQLGetFunctionsはSQL_API_SQLDESCRIBEPARAMに対してSQL_FALSE(未サポート)を返します。

SQLリクエストで使用されるパラメータや結果セットの列に関する追加のメタデータ情報が含まれる拡張ステートメント情報は、Teradata DatabaseバージョンV2R6.2以降でサポートされています。
EnableReadAhead=[Yes|No] ODBCドライバが先読みを実行して、現在のメッセージの処理中に次の応答メッセージを受け取るかどうかを指定します。
  • Yes(デフォルト) - ODBCドライバは、現在処理中の応答メッセージが最後ではない場合、データベースに次の応答メッセージを要求することによって先読みを実行します。データベースは任意の時点で各セッションに対してアクティブな要求を1つずつ持つことができます。アクティブな要求とは、実行中のSQL要求、または先行するSQL要求からの結果の次の部分に対する要求のことです。
  • No - ODBCドライバは、ドライバで現在の応答メッセージの処理が完了したときにのみ、データベースに次の応答メッセージを要求します。
IANAAppCodePage=<ODBCアプリケーション コード ページ> 現在のODBCアプリケーション コード ページは、IANAAppCodePageとして定義されています。

有効なODBCアプリケーション コード ページの値のリストおよび注意事項については、ODBCアプリケーション コード ページの値(Linux/UNIXおよびApple OS X)を参照してください。

IgnoreODBCSearchPattern=[Yes|No]

または

IgnoreSearchPat=<[Yes|No]

文字_および%がSQLTablesなどのカタログ関数に渡された場合、これらの文字が、テーブル名やスキーマ名などに指定された値に対する正規表現のワイルドカード文字として機能するように指定します。
このオプションは、検索パターンをサポートしていないアプリケーション(Microsoft Accessなど)で便利です。
  • No(デフォルト、Microsoft Access以外) - 文字_と%は、正規表現の文字として処理されます。
    この設定により、Microsoft Accessは、検索パターンを処理するためにodbc.iniファイルのデータ ソース セクションを使用します。
  • Yes - 文字_と%は処理されません。代わりに、次のコマンドで通常の検索パターンを使用します。
    • SQLTables
    • SQLColumns
    • SQLTablePrivileges
    • SQLProcedures
    • SQLProcedureColumns
    • SQLGetInfo
SQL_SEARCH_PATTERN_ESCAPEは、空の文字列を返します。
integer0>LoginTimeout=< Teradata Databaseへログインする仮想回路が確立されるまで待機する秒数を定義します。

デフォルト値は20です。

0以上の整数値を入力してください。

MaxRespSize=<integer16775168> SQLリクエスト用のTeradata応答バッファ サイズを制限します。

デフォルトは65536(64K)です。整数値の上限は16775168です。

Teradataが有効範囲内のパケット サイズで結果を送信できない場合は、この値が動的に変更されることもあります。
  • PPPやSLIPなどの低速TCP/IPインターフェースを使用している場合には、これより小さい値を入力します。
  • LAN環境で結果セットが大きくなることが予想される場合には、大きい値を入力します。
MechanismName=<MechanismName>

または

Authentication=<MechanismName>

データベース接続に使用する認証メカニズムを指定します。

デフォルトは、TeraGSSプログラムであるtdgssconfigureを実行してXMLファイルに設定された構成オプションに従って決定されます。

有効な値は次のとおりです。
  • 空 - キーワードを省略した場合と同様です。
  • TD2 - 認証メカニズムとしてTeradata 2を選択します。ユーザー名とパスワードが必要です。
  • TDNEGO - ユーザーの関与なしでポリシーに基づく認証メカニズムのいずれかを自動的に選択します。
  • LDAP - 認証メカニズムとしてLDAPが選択されます。アプリケーションからユーザー名とパスワードが提示されます。
  • KRB5 - 認証メカニズムとしてKerberosを選択します。アプリケーションからユーザー名とパスワードが提示されます。

認証メカニズムの詳細については、ネットワーク セキュリティを参照してください。

MechanismKey=<Value>

または

AuthenticationParameter=<Value>

値 = string

認証メカニズムのパラメータとして認識される文字列。この文字列は、ODBC Driver for Teradataからは隠されており、認証メカニズムの設定時に呼び出されるTeradata認証ソフトウェアに渡されます。

odbc.iniファイルは保護されていません。MechanismKeyは暗号化されていない平文テキストとして保存されるため、ファイルに対する読み取りアクセスを持つすべてのユーザーが参照できます。

$tdwallet()トークンを指定すると、平文MechanismKey値の代わりにTeradata Wallet参照文字列を使用できます。以下に例を示します。

MechanismKey=$tdwallet(RefString)

詳細については、<Teradata Wallet>を参照してください。

NoScan=[Yes|No] ODBC Driver for TeradataによるSQL文の構文解析を有効化または無効化します。構文解析を有効にした場合、ドライバは、SQL文を構文解析し、ODBCエスケープ シーケンスをSQLに変換します。
  • No(デフォルト) - SQL文は、ODBC Driver for Teradataによって構文解析されます。
  • Yes - SQL文は、ODBC Driver for Teradataによる構文解析なしで、そのままTeradata Databaseに送信されます。
ODBC固有の構文がSQL文に含まれる場合は、このオプションを有効にしないでください。SQL文にODBC固有の構文が使用されているときにこのオプションを設定すると、Teradata Databaseでエラーが報告されます。
PrintOption=[N |P] ストアド プロシージャのプリント オプションを指定します。

N (デフォルト) - ストアド プロシージャの作成時に、プリント オプションを無効にします。

P - プリント オプションを有効にします。

retryOnEINTR ODBC Driver for TeradataがEINTRでソケット システム呼び出しを再試行するかSQL_ERRORを返すかを制御します。
対象となるソケット システム呼び出しは以下のとおりです。
  • connect()
  • select()
  • recv()
  • send()

再試行する場合の値はYes、再試行しない場合の値はNoです。デフォルトはYesです。

ReturnGeneratedKeys=<value> 識別列に挿入するリクエスト(INSERT、INSERT ... SELECT、UPSERT、MERGE-INTO)の結果を指定します。これらのリクエストは、オプションで挿入行の識別列値を表わす結果セット(自動生成キー)を返すこともできます。
Teradata Database V2R6.2より前のバージョンでは自動生成キーの取得はサポートされていないため、V2R6.2より前のデータベース サーバーを使用している場合には、ReturnGeneratedKeysを設定しても何の影響もありません。
  • C - 識別列だけを取得します。挿入行の数を表わす行カウント、および自動生成キーを単一列として含む結果セットを返します。
  • R - 行全体を取得します。挿入行の数を表わす行カウント、および挿入された行だけのすべての列の自動生成キーを含む結果セットを返します。
  • N(デフォルト)または未設定 - 自動生成キーを取得しません。識別列に挿入する要求の動作は変わりません。
SessionMode=[Yes|No] Teradata Databaseのセッションのモード(TeradataまたはANSI)を指定します。選択したモードは、セッションが続く間適用されます。

デフォルト値は、CREATEまたはMODIFY USER文で使用されるオプションに基づいてデータベースで決定されます。

アプリケーションは、プログラム上でSessionModeを設定できません。SessionModeは、接続時のみ設定できます。
SplOption=[Y | N] ストアド プロシージャの作成時に、ストアド プロシージャ言語(SPL)オプションを指定します。
  • N - SPLテキストなしに作成されます。
  • Y (デフォルト) - SPLテキストを含めて作成されます。
TCPNoDelay=[Yes|No] 伝送制御プロトコル(TCP: Transmission Control Protocol)が即座に小規模パケットを送信するか、または単一の大規模パケットに各パケットをまとめるために待機するかを指定します。
このオプションは、Teradataデータ ソース エントリに対して有効です。
  • Yes(デフォルト) - TCPは小規模パケットを即座に送信します。そのため、パケット送信の遅延は回避できても、ネットワーク上で肯定応答などの小さなパケットが数多く送信されることになります。
  • No - TCPは複数の小規模パケットを単一パケットにまとめます。このオプションは、ネットワーク トラフィックの削減につながりますが、パケットの送信を遅延させることにもなります。詳細については、TCPのマニュアルを参照してください。
TranslationDLL=<path> コード変換DLL名を指定します。コード変換DLLの完全修飾パス名を指定することを推奨します。

ユーザー定義セッション文字セットは、このオプションの値を指定しないで使用できます。このとき変換は、現在のアプリケーション コード ページに基づいて行なわれます。

詳細については、ユーザー定義セッション文字セットのサポートコード変換DLLを参照してください。

TranslationOption=<integer> 指定したコード変換DLLの固有の意味を表わす32ビット値です。

例えば、特定の文字セット変換を指定できます。

指定しない場合は、コード変換DLLのSQLDataSourceToDriverやSQLDriverToDataSourceへのオプションとして値ゼロが渡されます。

TDMSTPortNumber=<integer> Teradata Databaseにアクセスするポート番号を指定します。

デフォルト値は1025です。

テクニカル サポートからの指示がない限り、この値は変更しないでください。
UDFUploadPath=<path>

UDFソース ファイルの置き場所の完全修飾パスを指定します。この値を定義した場合、データベースでファイル名の一部として完全修飾パスが指定されていない(フィールドが空白である)限り、ドライバはデータベースからのファイルの要求時に定義された場所を確認します。

詳細については、Teradata® Call-Level Interface Version 2リファレンス - メインフレーム接続システム, B035-2417ElicitFileおよびTeradata® Database SQL外部ルーチン プログラミング, B035-1147を参照してください。

USE2XAPPCUSTOMCATALOGMODE=[Yes|No]

または

2XAPPCUSTOMCATALOGMODE=[Yes|No]

非標準の検索パターンを使用するODBC 2.xアプリケーションとの下位互換性を提供します。
ODBC Driver for Teradataの初期のバージョンでは、ODBCプログラマ リファレンスの仕様に記載されている%検索パターン以外の検索パターンをユーザーが作成できました。非標準のシステムで、SQLTables APIのSchemaName引数にNULL値が渡された場合は、%検索パターンではなく、ユーザーID、DBCおよびデフォルトのデータベース スキーマによるテーブルの検索で結果が得られます。
  • No(デフォルト) - %検索パターンを使用します。
  • Yes - ユーザーID、DBCおよびデフォルトのデータベース スキーマ名による検索を許可します。
UseDataEncryption=[Yes|No]

または

DataEncryption=[Yes|No]

No (デフォルト) - ログオン情報のみを暗号化します。
  • TeradataゲートウェイとODBC Driver for Teradataの相互通信の暗号化を有効にします。
  • Yes - データ暗号化を有効にします。
UseXViews=[Yes|No] Xテーブルが使用されるかどうかを指定します。
Xテーブルは、ユーザーにアクセスの許可が与えられている情報だけを含んでいます。この種のテーブルはTeradataではオプションなので、このオプションを使用する前に、このようなテーブルが存在するのかどうかを調べてください。
  • Yes -
    • SQLTables()とSQLProcedures()は、dbc.tablesVXとdbc.databasesVXを使用します。
    • SQLColumns()とSQLProcedureColumns()は、dbc.columnsVではなく、dbc.columnsVXを使用します。
    • SqlStatistics()は、dbc.tablesizeVXを使用します。
  • No(デフォルト) -
    • SQLTables()とSQLProcedures()は、dbc.tablesVとdbc.databasesVを使用します。
    • SQLColumns()とSQLProcedureColumns()は、dbc.columnsVを使用します。

SqlStatistics()は、dbc.tablesizeVを使用します。

ODBC Driver for Teradataによって認識される日本語、中国語、韓国語の各ロケール値がLANG環境変数に含まれる場合、ODBC Driver for TeradataのLinux/UNIXシステム版は下記のオプションを認識します。これらのオプションはApple OS Xでは使用できません。
ClientKanjiFormat={SJIS|EUC|Big5|Network Korean| GB}
この機能は廃止予定であるため、使用は推奨されません。
ユーザーが指定した文字セット形式に使用する文字セットの種類を指定します。
  • SJIS
  • EUC
  • Big5
  • Network Korean
  • GB

デフォルトはユーザー設定です。

返されるデータは、SJISとEUCの場合のみセッション文字セットからClientKanjiFormatに変換されます。

Big5、NetworkKoreanおよびGBの場合は、この値はセッション文字セットに一致する必要があります。