次の方法で共有


SQLDriverConnect

SQL Server Native Client ODBC ドライバーは、接続文字列キーワードを置き換えるか拡張する接続属性を定義します。 複数の接続文字列キーワードには、SQL Server Native Client ODBC ドライバーで既定値が指定されています。

SQL Server Native Client ODBC ドライバーで使用できるキーワードの一覧については、「SQL Server Native Clientでの接続文字列キーワードの使用」を参照してください。

SQL Server接続属性とドライバーの既定の動作の詳細については、「SQLSetConnectAttr」を参照してください。

SQL Server Native Clientに有効な接続文字列キーワードの詳細については、「SQL Server Native Clientでの接続文字列キーワードの使用」を参照してください。

DriverCompletion パラメーター値SQLDriverConnectがSQL_DRIVER_PROMPT、SQL_DRIVER_COMPLETE、またはSQL_DRIVER_COMPLETE_REQUIREDの場合、SQL Server Native Client ODBC ドライバーは、表示されたダイアログ ボックスからキーワード (keyword)値を取得します。 キーワード (keyword)値が接続文字列に渡され、ユーザーがダイアログ ボックスのキーワード (keyword)の値を変更しない場合、SQL Server Native Client ODBC ドライバーは接続文字列の値を使用します。 接続文字列で値が設定されていない場合、ユーザーがダイアログ ボックスで割り当てを行わないと、ドライバーは既定値を使用します。

SQLDriverConnectDriverCompletion 値がドライバーの接続ダイアログ ボックスの表示を必要とする (または必要になる可能性がある) 場合は、有効な WindowHandle を指定する必要があります。 無効なハンドルを指定すると、SQL_ERROR が返されます。

DRIVER キーワードまたは DSN キーワードを指定します。 ODBC は、これらの 2 つのキーワードが両方指定されている場合、左側に指定されているキーワードを使用し、他方を無視するように指示します。 DRIVER が指定されている場合、または 2 つのSQLDriverConnectパラメーターの左端に DriverCompletion パラメーター値がSQL_DRIVER_NOPROMPTされている場合は、SERVER キーワード (keyword)と適切な値が必要です。

SQL_DRIVER_NOPROMPT が指定されているときは、ユーザー認証に関するキーワードに値が指定されている必要があります。 ドライバーは、文字列 "Trusted_Connection=yes" または UID キーワードと PWD キーワードの両方が指定されていることを確認します。

DriverCompletion パラメーター値がSQL_DRIVER_NOPROMPTまたはSQL_DRIVER_COMPLETE_REQUIREDで、言語またはデータベースが接続文字列から取得され、いずれかが無効な場合は、 SQLDriverConnect SQL_ERRORが返されます。

DriverCompletion パラメーター値がSQL_DRIVER_NOPROMPTまたはSQL_DRIVER_COMPLETE_REQUIREDで、言語またはデータベースが ODBC データ ソース定義から取得され、いずれかが無効な場合は、指定したユーザー ID に既定の言語またはデータベースを使用し、 SQLDriverConnect SQL_SUCCESS_WITH_INFOを返します。

DriverCompletion パラメーターの値がSQL_DRIVER_COMPLETEまたはSQL_DRIVER_PROMPTの場合、言語またはデータベースが無効な場合は、SQLDriverConnectダイアログ ボックスを再表示します。

SQLDriverConnect の HADR サポート

を使用してSQLDriverConnectAlways On可用性グループ クラスターに接続する方法の詳細については、「高可用性、ディザスター リカバリー SQL Server Native Clientサポート」を参照してください。

SQLDriverConnect によるサービス プリンシパル名 (SPN) のサポート

SQLDDriverConnect では、プロンプトが有効になっている場合、ODBC ログイン ダイアログ ボックスが使用されます。 これにより、プリンシパル サーバーとそのフェールオーバー パートナーの両方に対して SPN を入力できます。

SQLDriverConnect は、新しい接続文字列キーワード ServerSPNFailoverPartnerSPNを受け入れ、SQL_COPT_SS_SERVER_SPNおよびSQL_COPT_SS_FAILOVER_PARTNER_SPN新しい接続属性を認識します。

接続属性の値が複数指定されている場合は、DSN の値や接続文字列の値より、プログラムによって設定された値が優先されます。 DSN の値は接続文字列の値より優先されます。

接続が開かれると、SQL Server Native ClientはSQL_COPT_SS_MUTUALLY_AUTHENTICATEDを設定し、接続を開くために使用される認証方法にSQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHODします。

SPN の詳細については、「 クライアント接続 (ODBC)」の「サービス プリンシパル名 (SPN)」を参照してください。

次の呼び出しは、 に必要なデータの最小量を SQLDriverConnect示しています。

SQLDriverConnect(hdbc, hwnd,  
    (SQLTCHAR*) TEXT("DRIVER={SQL Server Native Client 10};"), SQL_NTS, szOutConn,  
    MAX_CONN_OUT, &cbOutConn, SQL_DRIVER_COMPLETE);  

次の接続文字列は、 DriverCompletion パラメーター値がSQL_DRIVER_NOPROMPTされた場合に必要な最小データを示しています。

"DSN=Human Resources;Trusted_Connection=yes"  
  
"FILEDSN=HR_FDSN;Trusted_Connection=yes"  
  
"DRIVER={SQL Server Native Client 10};SERVER=(local);Trusted_Connection=yes"  

参照

SQLDriverConnect 関数
ODBC API 実装の詳細
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)