ODBC データソース¶
ODBC データソースを作成するには、CREATE DATASOURCE ODBC ステートメントを使用します。
注釈
Virtual DataPort での ODBC データソースの作成は廃止されています。詳細については、管理ガイドの「 ODBC ソース 」を参照してください。
重要
Linux 上で実行している Virtual DataPort サーバーの場合、デフォルトでは ODBC データソースを作成できません。作成できるようにするには、管理ガイドの「 Virtual DataPort サーバーが Linux 上で動作している場合の ODBC ソースのサポートの有効化 」の手順に従います。
このコマンドのパラメータは、 CREATE DATASOURCE JDBC コマンドとほぼ同じで、同様に機能します。相違点は以下のとおりです。
DATABASEURI
: このパラメータには ODBC URI または ローカル ファイルへのパスを指定できます。ファイルへのパスの場合は、補間変数を含めることができます。補間変数を使用してデータソースから基本ビューを作成する方法については、「 クエリの実行コンテキストと補間文字列 」を参照してください。DSN
: システム内に存在する ODBC データソースの名前です。この場合、Virtual DataPort サーバーは Sun JDBC/ODBC ブリッジを使用して、DSN に接続します。
注釈
ODBC ソースタイプの場合は、アクセスするデータソースが Virtual DataPort サーバーのローカルマシンに配置されている必要があります。それが不可能な場合は、ODBC 管理システムをインストールし、そこにリモートデータベースサーバーの ODBC ドライバーを登録する必要があります。
CREATE [ OR REPLACE ] DATASOURCE ODBC <name:identifier>
[ FOLDER = <literal> ]
{ DSN = <literal>
| DATABASEURI = <literal> DRIVERCLASSNAME = <literal>
}
{
<credentials>
| WITH PASS-THROUGH SESSION CREDENTIALS ( <credentials> )
}
[ PROPERTIES = <literal> ]
[ CLASSPATH = <literal> ]
[ DATABASENAME = <literal> DATABASEVERSION = <literal> ]
[ ISOLATIONLEVEL =
{ TRANSACTION_NONE
| TRANSACTION_READ_COMMITTED
| TRANSACTION_READ_UNCOMMITTED
| TRANSACTION_REPEATABLE_READ
| TRANSACTION_SERIALIZABLE
]
[ IGNORETRAILINGSPACES = { true | false } ]
[ FETCHSIZE = <integer> ]
[
<pool configuration 1>
| <pool configuration 2>
| <pool configuration 3>
]
[ TRANSFER_RATE_FACTOR = <double> ]
[ DESCRIPTION = <literal> ]
[ SOURCECONFIGURATION ( [ <source configuration property>
[, <source configuration property> ]* ] ) ]
<credentials> ::=
USERNAME = <literal> USERPASSWORD = <literal> [ ENCRYPTED ]
<pool configuration 1> ::=
VALIDATIONQUERY = <literal>
INITIALSIZE = <integer>
MAXACTIVE = <integer>
<pool configuration 2> ::=
VALIDATIONQUERY = <literal>
INITIALSIZE = <integer>
MAXACTIVE = <integer>
EXHAUSTEDACTION = <integer>
<pool configuration 3> ::=
VALIDATIONQUERY = <literal>
INITIALSIZE = <integer>
MAXIDLE = <integer>
MINIDLE = <integer>
MAXACTIVE = <integer>
EXHAUSTEDACTION = <integer>
TESTONBORROW = <boolean>
TESTONRETURN = <boolean>
TESTWHILEIDLE = <boolean>
[ <pool sub-configuration 1> ]
<pool sub-configuration 1> ::=
TIMEBETWEENEVICTION = <integer>
NUMTESTPEREVICTION = <integer>
MINEVICTABLETIME = <integer>
[ <pool sub-configuration 2> ]
<pool sub-configuration 2> ::=
POOLPREPAREDSTATEMENTS = <boolean>
MAXSLEEPINGPS = <integer>
INITIALCAPACITYPS = <integer>
<source configuration property> ::=
DELEGATEALLOPERATORS = <property value>
| DELEGATEARRAYLITERAL = <property value>
| DELEGATECOMPOUNDFIELDPROJECTION = <property value>
| DELEGATEGROUPBY = <property value>
| DELEGATEHAVING = <property value>
| DELEGATEINNERJOIN = <property value>
| DELEGATEJOIN = <property value>
| DELEGATELEFTFUNCTION = <property value>
| DELEGATELEFTLITERAL = <property value>
| DELEGATELITERALEXPRESSION = <property value>
| DELEGATEMIXEDAGGREGATEEXPRESSION = <property value>
| DELEGATENATURALOUTERJOIN = <property value>
| DELEGATENOTCONDITION = <property value>
| DELEGATEORCONDITION = <property value>
| DELEGATEORDERBY = <property value>
| DELEGATEPROJECTION = <property value>
| DELEGATEREGISTERLITERAL = <property value>
| DELEGATERIGHTFIELD = <property value>
| DELEGATERIGHTFUNCTION = <property value>
| DELEGATERIGHTLITERAL = <property value>
| DELEGATESELECTDISTINCT = <property value>
| DELEGATESELECTION = <property value>
| DELEGATEUNION = <property value>
| SUPPORTSAGGREGATEFUNCTIONSOPTIONS = <property value>
| SUPPORTSBRANCHOUTERJOIN = <property value>
| SUPPORTSEQOUTERJOINOPERATOR = <property value>
| SUPPORTSEXPLICITCROSSJOIN = <property value>
| SUPPORTSFULLEQOUTERJOIN = <property value>
| SUPPORTSFULLNOTEQOUTERJOIN = <property value>
| SUPPORTSFUSINGINUSINGANDNATURALJOIN = <property value>
| SUPPORTSJOINONCONDITION = <property value>
| SUPPORTSNATURALJOIN = <property value>
| SUPPORTSUSINGJOIN = <property value>
| DELEGATEAGGREGATEFUNCTIONS = {
DEFAULT
| ( <function:identifier> [, <function:identifier> ]* ] )
}
| DELEGATESCALARFUNCTIONS = {
DEFAULT
| ( <function:identifier> [, <function:identifier> ]* ] )
}
| DELEGATEOPERATORSLIST = {
DEFAULT
| ( <operator:identifier> [, <operator:identifier> ]* ] )
}
<property value> ::=
true
| false
| DEFAULT
ODBC データソースを変更するには、ALTER DATASOURCE ODBC ステートメントを使用します。
ALTER DATASOURCE ODBC <name:identifier>
[ DSN = <literal>
| DATABASEURI = <literal> DRIVERCLASSNAME = <literal>
]
[
<credentials>
| WITH PASS-THROUGH SESSION CREDENTIALS ( <credentials> )
]
[ PROPERTIES = <literal> ]
[ CLASSPATH = <literal> ]
[ DATABASENAME = <literal> DATABASEVERSION = <literal> ]
[ ISOLATIONLEVEL =
{ TRANSACTION_NONE
| TRANSACTION_READ_COMMITTED
| TRANSACTION_READ_UNCOMMITTED
| TRANSACTION_REPEATABLE_READ
| TRANSACTION_SERIALIZABLE
]
[ IGNORETRAILINGSPACES = { true | false } ]
[ FETCHSIZE = <integer> ]
[
VALIDATIONQUERY = <literal>
INITIALSIZE = <integer>
MAXACTIVE = <integer>
[ TESTONBORROW = <boolean> ]
]
[ TRANSFER_RATE_FACTOR = <double> ]
[ DESCRIPTION = <literal> ]
[ SOURCECONFIGURATION ( [ <source configuration property>
[, <source configuration property> ]* ] ) ]
<credentials> ::=
USERNAME = <literal> USERPASSWORD = <literal> [ ENCRYPTED ]
<source configuration property> ::= (see CREATE DATASOURCE ODBC for details)
これらのステートメントで利用する一部のパラメータの説明 :
MAXACTIVE
: プールが同時に管理できるアクティブなコネクションの最大数。DATABASEURI
パラメータに補間変数が含まれる場合、コネクションプールは使用されません。負の値 (
-1
など) の場合、アクティブな最大コネクション数はありません。0 の場合は、プールは無効になります。したがって、Virtual DataPort は、このソースにクエリを送信するたびに、このデータベースへの新しいコネクションを開きます。クエリが終了すると、そのクエリで開いたコネクションが閉じられます。
TRANSFER_RATE_FACTOR
: Denodo サーバーとデータソース間のネットワーク接続速度の相対的な測定値。従来の 100 Mbps LAN を介してデータソースにアクセス可能な場合は、デフォルト値 (オンプレミスの JDBC データベースの場合は 1) を使用します。より高速なネットワークの場合はより大きな値を、WAN 経由でアクセス可能なデータソースの場合はより小さな値を使用します。