SQLDriverConnect
The SQL Server Native klient ODBC driver defines connection attributes that either replace or enhance connection-ciąg keywords. Kilka słów kluczowych w ciąg połączenia mają wartości domyślne określone przez SQL Server Macierzysty sterownik ODBC klient.
Aby uzyskać listę słów kluczowych w SQL Server Macierzysty sterownik ODBC klient, zobacz Przy użyciu słów kluczowych ciąg połączenia z SQL Server Native klient.
Aby uzyskać więcej informacji na temat SQL Server połączenie atrybuty i zachowania domyślnego sterownika, zobacz SQLSetConnectAttr.
When the SQLDriverConnectDriverCompletion parameter value is SQL_DRIVER_PROMPT, SQL_DRIVER_COMPLETE, or SQL_DRIVER_COMPLETE_REQUIRED, the SQL Server Native Client ODBC driver retrieves keyword values from the displayed dialog box.Jeśli wartość słowa kluczowego jest przekazywana w ciąg połączenia, a użytkownik nie ma wpływu na wartości dla słowa kluczowego w oknie dialogowym SQL Server Macierzysty sterownik ODBC klient korzysta z wartości z ciąg połączenia. Jeśli wartość nie jest zestaw w połączeniu z ciąg znaków, a użytkownik tworzy nie przypisania w oknie dialogowym używa sterownika domyślnego.
SQLDriverConnect należy podać prawidłowy WindowHandle when any DriverCompletion wartość wymaga (lub może wymagać) wyświetlane okno dialogowe sterownika połączenia.Nieprawidłowe dojście zwraca SQL_ERROR.
Określić słowa kluczowe, STEROWNIK lub nazwy DSN.ODBC stwierdza, że sterownik korzysta z lewej strony z tych dwóch słów kluczowych i ignoruje drugiej, jeśli są określone oba.If DRIVER is specified, or is the leftmost of the two, and the SQLDriverConnectDriverCompletion parameter value is SQL_DRIVER_NOPROMPT, the SERVER keyword and an appropriate value are required.
Po określeniu SQL_DRIVER_NOPROMPT słowa kluczowe uwierzytelnianie użytkownika musi być obecny z wartościami.Sterownik gwarantuje, że albo ciąg "Trusted_Connection = yes" lub zarówno UID, PWD słowa kluczowe są obecne.
Jeśli DriverCompletion wartość parametru jest SQL_DRIVER_NOPROMPT lub SQL_DRIVER_COMPLETE_REQUIRED i język lub bazy danych pochodzą z ciąg połączenia i albo jest nieprawidłowy, SQLDriverConnect zwraca SQL_ERROR.
Jeśli DriverCompletion wartość parametru jest SQL_DRIVER_NOPROMPT lub SQL_DRIVER_COMPLETE_REQUIRED i język lub bazy danych pochodzą z definicji urządzenie źródłowe danych ODBC i albo jest nieprawidłowy, SQLDriverConnect używa język domyślny lub bazy danych dla IDENTYFIKATORA określonego użytkownika i zwraca SQL_SUCCESS_WITH_INFO.
Jeśli DriverCompletion wartość parametru jest SQL_DRIVER_COMPLETE lub SQL_DRIVER_PROMPT i jeśli język lub bazy danych jest nieprawidłowa, SQLDriverConnect ponownie wyświetli okno dialogowe.
Obsługa SQLDriverConnect główne nazwy usług (SPN)
SQLDDriverConnect użyje logowania ODBC, okno dialogowe boxwhen monitowanie jest włączone.Dzięki temu SPN mają być wprowadzone dla serwer główny i jego partner pracy awaryjnej.
SQLDriverConnect będzie akceptować nowych słów kluczowych ciąg połączenia ServerSPN i FailoverPartnerSPN, a rozpozna nowych atrybutów połączenia SQL_COPT_SS_SERVER_SPN i SQL_COPT_SS_FAILOVER_PARTNER_SPN.
Gdy wartość atrybut połączenia jest określona więcej niż jeden raz, wartość, która jest zestaw programowo ma pierwszeństwo przed wartością w DSN i wartość w ciąg połączenia.Wartość w polu nazwy DSN mają pierwszeństwo przed wartością w ciąg połączenia.
Gdy połączenie jest otwarte, SQL Server Klient macierzystym ustawia SQL_COPT_SS_MUTUALLY_AUTHENTICATED i SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD metoda uwierzytelnianie używana do otwarcia połączenia.
Aby uzyskać więcej informacji na temat nazwy SPN zobacz Główne nazwy usług (SPN) w oknie klient połączenia (ODBC).
Przykłady
Następujące wywołanie ilustruje najmniejszą ilość danych wymaganych dla 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 ciągi połączeń ilustrują minimalnych wymaganych danych, 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"