Dela via


SQLDriverConnect

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

ODBC-drivrutinen för SQL Server-klienten definierar anslutningsattribut som antingen ersätter eller förbättrar nyckelord för anslutningssträngar. Flera nyckelord för anslutningssträngar har standardvärden som anges av SQL Server Native Client ODBC-drivrutinen.

En lista över de nyckelord som är tillgängliga i ODBC-drivrutinen för SQL Server Native Client finns i Using Connection String Keywords with SQL Server Native Client.

Mer information om SQL Server-anslutningsattribut och standardbeteenden för drivrutiner finns i SQLSetConnectAttr.

En diskussion om nyckelord för anslutningssträngar som är giltiga för SQL Server Native Client finns i Using Connection String Keywords with SQL Server Native Client.

När parametervärdet SQLDriverConnectDriverCompletion är SQL_DRIVER_PROMPT, SQL_DRIVER_COMPLETE eller SQL_DRIVER_COMPLETE_REQUIRED, hämtar ODBC-drivrutinen för SQL Server Native Client nyckelordsvärden från dialogrutan som visas. Om nyckelordsvärdet skickas i anslutningssträngen och användaren inte ändrar värdet för nyckelordet i dialogrutan använder SQL Server Native Client ODBC-drivrutinen värdet från anslutningssträngen. Om värdet inte anges i anslutningssträngen och användaren inte gör någon tilldelning i dialogrutan använder drivrutinen standardvärdet.

SQLDriverConnect måste ges ett giltigt WindowHandle- när ett DriverCompletion- värde kräver (eller kan kräva) visning av drivrutinsanslutningsdialogrutan. Ett ogiltigt handtag returnerar SQL_ERROR.

Ange nyckelorden DRIVER eller DSN. ODBC anger att en drivrutin använder det vänstra av dessa två nyckelord och ignorerar det andra om båda anges. Om DRIVRUTIN har angetts eller är det vänstra av de två, och SQLDriverConnectDriverCompletion parametervärdet är SQL_DRIVER_NOPROMPT, krävs nyckelordet SERVER och ett lämpligt värde.

När SQL_DRIVER_NOPROMPT anges måste nyckelord för användarautentisering finnas med värden. Drivrutinen ser till att antingen strängen "Trusted_Connection=yes" eller både UID- och PWD-nyckelorden finns.

Om parametervärdet DriverCompletion är SQL_DRIVER_NOPROMPT eller SQL_DRIVER_COMPLETE_REQUIRED och språket eller databasen kommer från anslutningssträngen och antingen är ogiltigt, returnerar SQLDriverConnect SQL_ERROR.

Om parametervärdet DriverCompletion är SQL_DRIVER_NOPROMPT eller SQL_DRIVER_COMPLETE_REQUIRED och språket eller databasen kommer från ODBC-datakälldefinitionerna och antingen är ogiltigt använder SQLDriverConnect standardspråket eller databasen för det angivna användar-ID:t och returnerar SQL_SUCCESS_WITH_INFO.

Om parametervärdet DriverCompletion är SQL_DRIVER_COMPLETE eller SQL_DRIVER_PROMPT och om språket eller databasen är ogiltigt SQLDriverConnect redigerar dialogrutan igen.

SQLDriverConnect-stöd för hög tillgänglighet, haveriberedskap

Mer information om hur du använder SQLDriverConnect- för att ansluta till ett AlwaysOn-tillgänglighetsgrupperkluster finns i sql server-inbyggt klientstöd för hög tillgänglighet, haveriberedskap.

SQLDriverConnect-stöd för tjänsthuvudnamn (SPN)

SQLDDriverConnect använder dialogrutan ODBC-inloggning när frågan är aktiverad. Detta gör att SPN kan anges för både huvudservern och dess redundanspartner.

SQLDriverConnect accepterar nyckelorden för den nya anslutningssträngen ServerSPN och FailoverPartnerSPNoch identifierar de nya anslutningsattributen SQL_COPT_SS_SERVER_SPN och SQL_COPT_SS_FAILOVER_PARTNER_SPN.

När ett anslutningsattributvärde anges mer än en gång har ett värde som anges programmatiskt företräde framför värdet i ett DSN och ett värde i en anslutningssträng. Ett värde i ett DSN har företräde framför ett värde i en anslutningssträng.

När en anslutning öppnas SQL_COPT_SS_MUTUALLY_AUTHENTICATED SQL Server Native Client och SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD till den autentiseringsmetod som används för att öppna anslutningen.

Mer information om SPN finns i tjänsthuvudnamn (SPN) i klientanslutningar (ODBC).

Exempel

Följande anrop visar den minsta mängd data som krävs för SQLDriverConnect:

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

Följande anslutningssträngar visar minsta nödvändiga data när parametervärdet DriverCompletion är 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"  

Se även

SQLDriverConnect-funktion
ODBC API-implementeringsinformation
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)