Udostępnij za pośrednictwem


SQLDriverConnect

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Sterownik ODBC klienta natywnego programu SQL Server definiuje atrybuty połączenia, które zastępują lub rozszerzają słowa kluczowe parametrów połączenia. Kilka słów kluczowych parametrów połączenia ma wartości domyślne określone przez sterownik ODBC klienta natywnego programu SQL Server.

Aby uzyskać listę słów kluczowych dostępnych w sterowniku ODBC klienta natywnego programu SQL Server, zobacz Using Connection String Keywords with SQL Server Native Client.

Aby uzyskać więcej informacji na temat atrybutów połączenia programu SQL Server i domyślnych zachowań sterowników, zobacz SQLSetConnectAttr.

Aby zapoznać się z omówieniem słów kluczowych parametrów połączenia, które są prawidłowe dla klienta natywnego programu SQL Server, zobacz Using Connection String Keywords with SQL Server Native Client.

Gdy wartość parametru SQLDriverConnectDriverCompletion jest SQL_DRIVER_PROMPT, SQL_DRIVER_COMPLETE lub SQL_DRIVER_COMPLETE_REQUIRED, sterownik ODBC klienta natywnego programu SQL Server pobiera wartości słów kluczowych z wyświetlonego okna dialogowego. Jeśli wartość słowa kluczowego jest przekazywana w parametrach połączenia, a użytkownik nie zmienia wartości słowa kluczowego w oknie dialogowym, sterownik ODBC klienta natywnego programu SQL Server używa wartości z parametrów połączenia. Jeśli wartość nie zostanie ustawiona w parametrach połączenia, a użytkownik nie przypisze żadnego przypisania w oknie dialogowym, sterownik używa wartości domyślnej.

SQLDriverConnect musi mieć prawidłową WindowHandle, gdy jakakolwiek wartość DriverComplet ion wymaga (lub może wymagać) wyświetlania okna dialogowego połączenia sterownika. Nieprawidłowy uchwyt zwraca SQL_ERROR.

Określ słowa kluczowe DRIVER lub DSN. OdBC stwierdza, że sterownik używa lewej części tych dwóch słów kluczowych i ignoruje drugą, jeśli zostały określone oba. Jeśli parametr DRIVER jest określony lub jest najdalej po lewej stronie, a SQLDriverConnectDriverCompletion wartość parametru jest SQL_DRIVER_NOPROMPT, słowo kluczowe SERVER i odpowiednią wartość są wymagane.

Po określeniu SQL_DRIVER_NOPROMPT słowa kluczowe uwierzytelniania użytkownika muszą być obecne z wartościami. Sterownik gwarantuje, że ciąg "Trusted_Connection=yes" lub oba słowa kluczowe UID i PWD są obecne.

Jeśli wartość parametru DriverCompletion jest SQL_DRIVER_NOPROMPT lub SQL_DRIVER_COMPLETE_REQUIRED, a język lub baza danych pochodzi z parametrów połączenia i jest nieprawidłowa, SQLDriverConnect zwraca SQL_ERROR.

Jeśli wartość parametru DriverCompletion jest SQL_DRIVER_NOPROMPT lub SQL_DRIVER_COMPLETE_REQUIRED, a język lub baza danych pochodzi z definicji źródła danych ODBC i albo jest nieprawidłowa, SQLDriverConnect używa języka domyślnego lub bazy danych dla określonego identyfikatora użytkownika i zwraca SQL_SUCCESS_WITH_INFO.

Jeśli DriverCompletion wartość parametru jest SQL_DRIVER_COMPLETE lub SQL_DRIVER_PROMPT, a jeśli język lub baza danych jest nieprawidłowa, SQLDriverConnect redisplays okno dialogowe.

SQLDriverConnect — obsługa wysokiej dostępności, odzyskiwania po awarii

Aby uzyskać więcej informacji na temat używania programu SQLDriverConnect do nawiązywania połączenia z klastrem zawsze włączonych grup dostępności, zobacz obsługa klienta natywnego programu SQL Server pod kątem wysokiej dostępności, odzyskiwania po awarii.

SQLDriverConnect — obsługa głównych nazw usługi (SPN)

Program SQLDDriverConnect będzie używać okna dialogowego Logowania ODBC po włączeniu monitu. Dzięki temu nazwy SPN mogą być wprowadzane zarówno dla serwera głównego, jak i jego partnera trybu failover.

SqlDriverConnect zaakceptuje nowe słowa kluczowe parametrów połączenia ServerSPN i FailoverPartnerSPNi rozpozna nowe atrybuty połączenia SQL_COPT_SS_SERVER_SPN i SQL_COPT_SS_FAILOVER_PARTNER_SPN.

Gdy wartość atrybutu połączenia jest określona więcej niż raz, wartość ustawiana programowo ma pierwszeństwo przed wartością w nazwie DSN i wartością w parametrach połączenia. Wartość w sieci DSN ma pierwszeństwo przed wartością w parametrach połączenia.

Po otwarciu połączenia klient natywny programu SQL Server ustawia SQL_COPT_SS_MUTUALLY_AUTHENTICATED i SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD metodę uwierzytelniania używaną do otwierania połączenia.

Aby uzyskać więcej informacji na temat nazw SPN, zobacz główne nazwy usługi (SPN) wpołączenia klienta (ODBC).

Przykłady

Następujące wywołanie ilustruje najmniejszą ilość danych wymaganych do SQLDriverConnect:

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

Następujące parametry połączenia ilustrują minimalne wymagane dane, gdy DriverCompletion wartość parametru jest 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"  

Zobacz też

funkcji SQLDriverConnect
szczegóły implementacji interfejsu API ODBC
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)