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 ドライバーは接続文字列の値を使用します。 接続文字列で値が設定されていない場合、ユーザーがダイアログ ボックスで割り当てを行わないと、ドライバーは既定値を使用します。
SQLDriverConnect
DriverCompletion 値がドライバーの接続ダイアログ ボックスの表示を必要とする (または必要になる可能性がある) 場合は、有効な 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 サポート
を使用してSQLDriverConnect
Always On可用性グループ クラスターに接続する方法の詳細については、「高可用性、ディザスター リカバリー SQL Server Native Clientサポート」を参照してください。
SQLDriverConnect によるサービス プリンシパル名 (SPN) のサポート
SQLDDriverConnect では、プロンプトが有効になっている場合、ODBC ログイン ダイアログ ボックスが使用されます。 これにより、プリンシパル サーバーとそのフェールオーバー パートナーの両方に対して SPN を入力できます。
SQLDriverConnect は、新しい接続文字列キーワード ServerSPN
と FailoverPartnerSPN
を受け入れ、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)