CREATE EXTERNAL DATA SOURCE (Transact-SQL) CONNECTION_OPTIONS

適用対象: SQL Server 2016 (13.x) 以降のバージョン Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

この記事では、プロバイダーに応じて CONNECTION_OPTIONS の詳細について説明します。 CREATE EXTERNAL DATA SOURCE CONNECTION_OPTIONS論は外部データ提供者によって異なる場合があります。

CREATE EXTERNAL DATA SOURCECONNECTION_OPTIONS論は2019年SQL Server(15.x)に初めて導入されました。 このドキュメントは、Windows および Linux 用の SQL Server 2019 (15.x) および SQL Server 2019 ビッグ データ クラスターに適用されます。

  • key_value_pair は、キーワードであり、特定の接続オプションの値です。
  • 複数の接続オプションを使用するには、セミコロンで区切ります。
  • 使えるキーと値のペアは、ドライバーに固有です。

この記事の残りの部分には、ベンダー固有の接続オプションが含まれています。

SQL Server 外部データ ソース

DSN/接続文字列キーワード列の下に DSN と接続文字列キーワードと属性のエントリがあるキーと値のペアのみを指定できます。 たとえば、 SQL_ATTR_TXN_ISOLATION キーワードはサポートされていません。これは、 接続文字列ではなく、SQLSetConnectAttr を使用して設定された属性であるためです。

PolyBase では、Microsoft ODBC Driver バージョン 17 と 18 のみがサポートされています。 詳細については、「 PolyBase の SQL Server ドライバーのバージョンを変更する」を参照してください。

オラクル

Oracle ワイヤ プロトコル テーブルにエントリがあるキーと値のペアのみを次のように指定できます。

属性 (短い名前) 既定値
AccountingInfo(AI) 無し
アクション (ACT) 無し
オルタネートサーバー(ASRV) 無し
AllowedOpenSSLVersions(AOV) 最新
アプリケーション名(AN) 無し
ApplicationUsingThreads (AUT) 1 (有効)
ArraySize(AS) 60000
認証メソッド(AM) 1 (パスワードの暗号化)
バッチ失敗リターンズエラー(BFRE) 0 (無効)
BindParamsAsUnicode(BPAU) 0 (無効)
バルクバイナリ閾値(BBT) 32
バルクキャラクター閾値(BCT) -1
バルクロードバッチサイズ(BLBS) 1024
BulkLoadFieldDelimiter (BLFD) 無し
BulkLoadOptions(BLO) 0
BulkLoadRecordDelimiter (BLRD) 無し
キャッシュドカーソルリミット(CCL) 32
キャッシュ説明制限(CDL) 0
カタログ含む同義語(CIS) 1 (有効)
カタログオプション(コロラド州) 0 (無効)
ClientHostName(CHN) 無し
クライアントID(CID) 無し
クライアントユーザー(CU) 無し
ConnectionReset(CR) 0 (無効)
ConnectionRetryCount(CRC) 0
ConnectionRetryDelay(CRD) 3
CredentialsWalletEntry (CWE) 無し
CredentialsWalletPassword (CWPWD) 無し
CredentialsWalletPath(CWPATH) 無し
CryptoProtocolVersion(CPV) TLSv1.2、TLSv1.1、TLSv1
CryptoLibName(CLN) 空の文字列
DataIntegrityLevel(DIL) 1 (承諾済み)
DataIntegrityTypes (DIT) MD5、SHA1、SHA256、SHA384、SHA512
DataSourceName(DSN) 無し
DefaultLongDataBuffLen (DLDBL) 1024
DescribeAtPrem(DAP) 0 (無効)
説明 (n/a) 無し
エディションネーム(英語) 無し
EnableBulkLoad(EBL) 0 (無効)
EnableDescribeParam (EDP) 0 (無効)
EnableNcharSupport (ENS) (非推奨)。 無し
EnableScrollableCursors(ESC) 1 (有効)
EnableServerResultCache(ESRC) 0 (無効)
EnableStaticCursorsForLongData (ESCLD) 0 (無効)
EnableTimestampwithTimezone (ETWT) (非推奨) 無し
暗号化レベル(EL) 1 (承諾済み)
暗号化手法(EM) 0 (暗号化なし)
暗号化タイプ(ET) 暗号化方法は指定されていません。 ドライバーは、Oracle サーバーにすべての暗号化方法の一覧を送信します。
フェイルオーバーグラニュラリティ(FG) 0 (非アトミック)
フェイルオーバーモード(FM) 0 (接続)
フェイルオーバープリコネクト(FP) 0 (無効)
FetchTSWTZasTimestamp (FTSWTZAT) 0 (無効)
GSSClient(GSSC) ネイティブ
ホストネーム(HOST) 無し
HostNameInCertificate(HNIC) 無し
IANAAppCodePage (IACP) (UNIX および Linux のみ) 4(ISO 8559-1 ラテン語1)
ImmanateUser(IU) 無し
InitializationString(IS) 無し
キープアライブ(KA) 0 (無効)
キーパスワード(KP) 無し
キーストア (KS) 無し
KeystorePassword (KSP) 無し
LDAPDistinguishedName (LDAPDN) 無し
LoadBalanceTimeout(LBT) 0
ロードバランシング(LB) 0 (無効)
LOBPrefetchSize (LPS) 4000
LocalTimeZoneOffset (LTZO) "" (空の文字列)
ロックタイムアウト(LTO) -1
LoginTimeout(LT) 15
LogonID(UID) 無し
MaxPoolサイズ(MXPS) 100
ミニプールサイズ(MNPS) 0
モジュール (MOD) 無し
パスワード (PWD) 無し
プール (POOL) 0 (無効)
ポートナンバー(PORT) 無し
PRNGSeedFile (PSF) (UNIX および Linux のみ) /dev/random
PRNGSeedSource (PSS) (UNIX および Linux のみ) 0 (ファイル)
プロシジョーションリサーミル(PRR) 0 (無効)
ProgramID(PID) 無し
プロキシホスト(PXHN) 空の文字列
プロキシモード(PXM) 0 (なし)
プロキシパスワード(PXPW) 空の文字列
プロキシポート(PXPT) 0
プロキシユーザー(PXU) 空の文字列
クエリタイムアウト(QT) 0
ReportCodePageConversionErrors(RCCE) 0 (エラーを無視)
レポートリサイクルビン(RRB) 0 (無効)
SDUSize (SDU) 16384
ServerName(SRVR) 無し
サーバータイプ(ST) 0 (サーバーの既定値)
ServiceName(SN) なし。 SID、サービス名、または TNSNames オプションに値が指定されていない場合、ドライバーは既定で ORCL SID への接続を試みます。
SID(SID) なし。 SID、サービス名、または TNSNames オプションに値が指定されていない場合、ドライバーは既定で ORCL SID への接続を試みます。
SSLLibName(SLN) 空の文字列
SupportBinaryXM(SBX) 0 (無効)
タイムスタンプエスケープマッピング(TEM) 0 (Oracle バージョン固有)
TNSNamesFile(TNF) なし。 SID、サービス名、または TNSNames オプションに値が指定されていない場合、ドライバーは既定で ORCL SID への接続を試みます。
トラストストア (TS) 無し
TruststorePassword(TSP) 無し
UseCurrentSchema(UCS) 1 (有効)
UseDefaultEncryptionOptions 1 (有効)
ValidateServerCertificate(VSC) 1 (有効)
ワイヤープロトコルモード(WPM) 2

Teradata

Teradata コネクタ構成オプションで提供されるコネクタ構成オプションにエントリがあるキーと値のペアのみを指定できます。

MongoDB API for Cosmos DB

次のドライバー構成オプションでは、エントリを持つキーと値のペアのみを指定できます。

キー名 既定値 必須 説明
DefaultStringColumnLength 255 いいえ STRING列に含めることができる最大文字数。 このオプションに設定できる最大値は2147483647。
noCursorTimeout いいえ いいえ このオプションは、ドライバーがデータ ソース サーバー上のアクティブカーソルの有効期限を切れるかどうかを指定します。 FALSEすると、データ ソース サーバーは、サーバーで設定されたしきい値の非アクティブ期間の後にアイドル 状態のカーソルをタイムアウトします。 TRUEに設定すると、ドライバーは、データ ソース サーバーがアイドル 状態のカーソルをタイムアウトしないようにし、ドライバーがサーバーへの接続を突然終了または失う必要がある場合、カーソルがサーバー上で無期限に開いたままになるリスクがあります。 MongoDB サーバーのアイドル カーソル タイムアウトのしきい値を調整できます。詳細については、 Self-Managed デプロイの MongoDB サーバー パラメーター に関するページを参照してください。
SamplingLimit 100 いいえ ドライバーが一時スキーマ定義を生成するためにサンプリングできるレコードの最大数。 このオプションを 0 に設定すると、ドライバーはデータベース内のすべてのドキュメントをサンプリングします。

必要なすべてのデータをサンプリングするようにドライバーを構成してください。 サンプリングされていないドキュメントはスキーマ定義に含まれないため、ODBC アプリケーションでは使用できなくなります。
通常、多数のドキュメントをサンプリングすると、データベース内のすべてのデータをより正確かつ適切に表現できるスキーマ定義が得られます。 ただし、特にデータベースに複雑な入れ子になったデータ構造が含まれている場合は、多くのドキュメントがサンプリングされるときに、サンプリング プロセスに予想以上の時間がかかる場合があります。
SamplingStrategy フォワード いいえ このオプションは、一時的なスキーマ定義を生成するときにドライバーがデータをサンプリングする方法を指定します。

転送: ドライバーは、データベース内の最初のレコードからデータをサンプリングし、次のレコードをサンプリングします。
後方: ドライバーは、データベース内の最後のレコードからデータをサンプリングし、前のレコードをサンプリングします。
ランダム: ドライバーは、SamplingLimit に達するまで、データ ソースからランダムにサンプル レコードを選択します。
SSL クリア (0) いいえ このオプションは、ドライバーが SSL を使用してサーバーに接続するかどうかを指定します。

有効 (1): ドライバーは SSL を使用してサーバーに接続します。
無効 (0): ドライバーは SSL を使用してサーバーに接続しません。

汎用 ODBC

PolyBase 汎用 ODBC 外部データ ソースに指定できる有効な CONNECTION_OPTIONS は、ドライバー固有です。 Microsoft 提供の ODBC プロバイダーを使用していない場合 (前のセクションを参照)、有効なキーと値のペアについては、ドライバーのドキュメントを参照してください。

PolyBase には、すべての汎用 ODBC ドライバーで使用できる有効なキーと値のペアがいくつかあります。 次のキーが CU5 の SQL Server 2019 に追加されました。

指定できる値 説明
PolyBaseOdbcSupportsRowCount TRUEFALSE ODBC カタログ関数で呼び出される SQLRowCount 関数がドライバーでサポートされているかどうかを示します。 既定値は false です。 たとえば、 CONNECTION_OPTIONS='PolyBaseOdbcSupportsRowCount=TRUE'と指定します。
PolyBaseOdbcSupportsMetadataIdAttributes TRUEFALSE ドライバーが METADATA_ID ステートメント属性の設定をサポートしているかどうかを示します。 既定値は false です。 たとえば、 CONNECTION_OPTIONS='PolyBaseOdbcSupportsMetadataIdAttributes=TRUE'と指定します。
PolyBaseOdbcSupportsBindOffset TRUEFALSE ドライバーが結果セットの行方向のバインドのバインド オフセットをサポートするかどうかを示します。 そうでない場合は、列バインドを使用します。 既定値は false です。 たとえば、 CONNECTION_OPTIONS='PolyBaseOdbcSupportsBindOffset=TRUE'と指定します。
PolyBaseQoTopPushdownSyntax TOPLIMIT TOP演算子をバックエンドにプッシュダウンする方法を指定する情報が含まれています。 既定値は空の文字列で、プッシュダウン TOP サポートされていないことを示します。 ユーザーが TOPを指定した場合、 top {0} が書式指定文字列として使用されます。 ユーザーが LIMITを指定した場合、 limit {0} が書式指定文字列として使用されます。 この実装はドライバー固有であり、外部データ ソースやドライバーのドキュメントを参照してください。 たとえば、 CONNECTION_OPTIONS=PolyBaseQoTopPushdownSyntax=TOP'と指定します。