共用方式為


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

SQLDriverConnectDriverCompletion參數值SQL_DRIVER_PROMPT、SQL_DRIVER_COMPLETE或SQL_DRIVER_COMPLETE_REQUIRED時,SQL Server Native Client ODBC 驅動程式會從顯示的對話方塊中擷取關鍵字值。 如果在連接字串中傳遞關鍵字值,而且使用者不會改變對話方塊中關鍵字的值,則 SQL Server Native Client ODBC 驅動程式會使用連接字串中的值。 如果沒有在連接字串中設定值,而且使用者沒有在對話方塊中進行指派,驅動程式會使用預設值。

SQLDriverConnect當任何DriverCompletion值需要 (,或可能需要) 驅動程式連線對話方塊的顯示時,必須提供有效的WindowHandle。 無效的控制代碼會傳回 SQL_ERROR。

指定 DRIVER 或 DSN 關鍵字。 ODBC 敘述如果同時指定兩個關鍵字,驅動程式會使用最左邊的關鍵字,並忽略另一個關鍵字。 如果指定 DRIVER,或是兩者最左邊,且 SQLDriverConnectDriverCompletion參數值是SQL_DRIVER_NOPROMPT,則需要 SERVER 關鍵字和適當的值。

指定 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 資料來源定義,而且無效, SQLDriverConnect 請使用指定使用者識別碼的預設語言或資料庫,並傳回SQL_SUCCESS_WITH_INFO。

如果 DriverCompletion 參數值是SQL_DRIVER_COMPLETE或SQL_DRIVER_PROMPT,而且語言或資料庫無效, SQLDriverConnect 則會重新顯示對話方塊。

高可用性/災害復原的 SQLDriverConnect 支援

如需使用 SQLDriverConnect 連線至Always On可用性群組叢集的詳細資訊,請參閱SQL Server Native Client高可用性、災害復原的支援

服務主要名稱 (SPN) 的 SQLDriverConnect 支援

啟用提示時,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 的詳細資訊,請參閱用戶端連線 中的服務主體名稱 (SPN) (ODBC)

範例

下列呼叫說明 所需的 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)