Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Na této stránce jsou uvedena klíčová slova pro připojovací řetězce a sítě DSN a atributy připojení pro SQLSetConnectAttr a SQLGetConnectAttr, které jsou k dispozici v ovladači ODBC pro SQL Server.
Podporovaná klíčová slova DSN/připojovacího řetězce a atributy připojení
Následující tabulka uvádí dostupná klíčová slova a atributy pro každou platformu (L: Linux; M: macOS; W: Windows). Další podrobnosti zobrazíte výběrem klíčového slova nebo atributu.
Tady jsou některá klíčová slova připojovacího řetězce a atributy připojení, které nejsou zdokumentované v použití klíčových slov připojovacího řetězce s sql Server Native Client, SQLSetConnectAttr a SQLSetConnectAttr funkce.
Description
Používá se k popisu zdroje dat.
SQL_COPT_SS_ANSI_OEM
Řídí převod dat pomocí ANSI na OEM.
| Hodnota atributu | Description |
|---|---|
| SQL_AO_OFF | (Výchozí) Překlad není hotový. |
| SQL_AO_ON | Překlad je hotový. |
SQL_COPT_SS_AUTOBEGINTXN
Verze 17.6+ Zatímco automatickécommit je vypnuto, řídí automatické BEGIN TRANSACTION po vrácení zpět nebo potvrzení.
| Hodnota atributu | Description |
|---|---|
| SQL_AUTOBEGINTXN_ON | (Výchozí) Automatické ZAHÁJENÍ TRANSAKCE po VRÁCENÍ ZPĚT nebo POTVRZENÍ. |
| SQL_AUTOBEGINTXN_OFF | Po vrácení zpět nebo potvrzení není k dispozici žádná automatická TRANSAKCE BEGIN. |
SQL_COPT_SS_FALLBACK_CONNECT
Řídí použití náhradních připojení SQL Serveru. Tato funkce se už nepodporuje.
| Hodnota atributu | Description |
|---|---|
| SQL_FB_OFF | (Výchozí) Náhradní připojení jsou zakázaná. |
| SQL_FB_ON | Jsou povolená náhradní připojení. |
Nová klíčová slova připojovacího řetězce a atributy připojení
Ověřování – SQL_COPT_SS_AUTHENTICATION
Nastaví režim ověřování, který se použije při připojování k SQL Serveru. Další informace naleznete v tématu Použití Microsoft Entra ID.
| Hodnota klíčového slova | Hodnota atributu | Description |
|---|---|---|
| SQL_AU_NONE | (Výchozí) Nenastavil se. Kombinace jiných atributů určuje režim ověřování. | |
| SqlPassword | SQL_AU_PASSWORD | Ověřování SQL Serveru pomocí uživatelského jména a hesla |
| ActiveDirectoryIntegrated | SQL_AU_AD_INTEGRATED | Integrované ověřování Microsoft Entra |
| ActiveDirectoryPassword | SQL_AU_AD_PASSWORD | Ověřování heslem Microsoft Entra |
| ActiveDirectoryInteractive | SQL_AU_AD_INTERACTIVE | Microsoft Entra Interactive Authentication. |
| ActiveDirectoryMsi | SQL_AU_AD_MSI | Ověřování spravovaných identit Microsoft Entra U identity přiřazené uživatelem je UID nastaveno na ID objektu identity uživatele. |
| ActiveDirectoryServicePrincipal | SQL_AU_AD_SPA | Ověřování instančního objektu Microsoft Entra UID je nastaveno na ID klienta instančního objektu. PwD je nastaven na tajný klíč klienta. |
| SQL_AU_RESET | Neurovnaný. Přepíše nastavení dsN nebo připojovacího řetězce. |
Poznámka:
Při použití Authentication klíčového slova nebo atributu explicitně zadejte Encrypt nastavení požadované hodnoty v připojovacím řetězci / DSN / atributu připojení. Podrobnosti najdete v tématu Použití klíčových slov připojovacího řetězce s nativním klientem SQL Serveru .
ColumnEncryption – SQL_COPT_SS_COLUMN_ENCRYPTION
Řídí transparentní šifrování sloupců (Always Encrypted). Další informace naleznete v tématu Použití funkce Always Encrypted (ODBC).
| Hodnota klíčového slova | Hodnota atributu | Description |
|---|---|---|
| Enabled | SQL_CE_ENABLED | Povolí funkci Always Encrypted. |
| Disabled | SQL_CE_DISABLED | (Výchozí) Zakáže funkci Always Encrypted. |
| SQL_CE_RESULTSETONLY | Povolí pouze dešifrování (výsledky a návratové hodnoty). |
Zašifrovat
Určuje, jestli připojení používají šifrování TLS přes síť. Možné hodnoty jsou yes/mandatory(18,0+),optionalno/ (18,0+) a strict(18,0+). Výchozí hodnota je yes ve verzi 18.0+ a no v předchozích verzích.
Bez ohledu na nastavení Encryptjsou přihlašovací údaje serveru (uživatelské jméno a heslo) vždy zašifrované.
Encrypt, TrustServerCertificatea nastavení na straně Force Encryption serveru hrají roli v tom, zda jsou připojení šifrovaná přes síť. Následující tabulky ukazují účinek těchto nastavení.
Ovladač ODBC 18 a novější
| Nastavení šifrování | Důvěřovat certifikátu serveru | Vynucené šifrování serveru | Výsledek |
|---|---|---|---|
| Ne | Ne | Ne | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem nejsou šifrovaná. |
| Ne | Ano | Ne | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem nejsou šifrovaná. |
| Ano | Ne | Ne | Zkontroluje se certifikát serveru. Data odesílaná mezi klientem a serverem se šifrují. |
| Ano | Ano | Ne | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem se šifrují. |
| Ne | Ne | Ano | Zkontroluje se certifikát serveru. Data odesílaná mezi klientem a serverem se šifrují. |
| Ne | Ano | Ano | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem se šifrují. |
| Ano | Ne | Ano | Zkontroluje se certifikát serveru. Data odesílaná mezi klientem a serverem se šifrují. |
| Ano | Ano | Ano | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem se šifrují. |
| Striktní | - | - | TrustServerCertificate se ignoruje. Zkontroluje se certifikát serveru. Data odesílaná mezi klientem a serverem se šifrují. |
Poznámka:
Striktní je k dispozici pouze pro servery, které podporují připojení TDS 8.0.
Ovladač ODBC 17 a starší
| Nastavení šifrování | Důvěřovat certifikátu serveru | Vynucené šifrování serveru | Výsledek |
|---|---|---|---|
| Ne | Ne | Ne | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem nejsou šifrovaná. |
| Ne | Ano | Ne | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem nejsou šifrovaná. |
| Ano | Ne | Ne | Zkontroluje se certifikát serveru. Data odesílaná mezi klientem a serverem se šifrují. |
| Ano | Ano | Ne | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem se šifrují. |
| Ne | Ne | Ano | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem se šifrují. |
| Ne | Ano | Ano | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem se šifrují. |
| Ano | Ne | Ano | Zkontroluje se certifikát serveru. Data odesílaná mezi klientem a serverem se šifrují. |
| Ano | Ano | Ano | Certifikát serveru není zaškrtnutý. Data odesílaná mezi klientem a serverem se šifrují. |
TransparentNetworkIPResolution – SQL_COPT_SS_TNIR
Řídí funkci transparentního překladu IP adres sítě, která komunikuje s MultiSubnetFailover a umožňuje rychlejší pokusy o opětovné připojení. Další informace najdete v tématu Použití transparentního síťového překladu IP adres.
| Hodnota klíčového slova | Hodnota atributu | Description |
|---|---|---|
| Enabled | SQL_IS_ON | (Výchozí) Umožňuje transparentní překlad IP adres sítě. |
| Disabled | SQL_IS_OFF | Zakáže transparentní překlad IP adres sítě. |
UseFMTONLY
Řídí použití funkce SET FMTONLY pro metadata při připojování k SQL Serveru 2012 a novějšímu.
| Hodnota klíčového slova | Description |
|---|---|
| Ne | (Výchozí) Pokud jsou k dispozici, použijte sp_describe_first_result_set pro metadata. |
| Ano | Pro metadata použijte SET FMTONLY. |
Replication
Určuje použití přihlášení replikace pro ovladač ODBC verze 17.8 a novější.
| Hodnota klíčového slova | Description |
|---|---|
| Ne | (Výchozí) Přihlášení k replikaci se nepoužívá. |
| Ano | Triggery s NOT FOR REPLICATION možností se neaktivují u připojení. |
RetryExec
Konfigurovatelná logika opakování je dostupná od verze 18.1. Automaticky znovu spustí konkrétní volání funkce ODBC na základě konfigurovatelných podmínek. Tuto funkci lze povolit prostřednictvím připojovacího řetězce pomocí klíčového slova RetryExec spolu se seznamem pravidel opakování. Každé pravidlo opakování má tři dvojtečky oddělené komponenty: shodu chyb, zásadu opakování a shodu dotazu.
Shoda dotazu určuje pravidlo opakování, které se má použít pro dané spuštění, a odpovídá příchozímu textu příkazu (SQLExecDirect) nebo připravenému textu příkazu v objektu příkazu (SQLExecute). Pokud se shoduje více pravidel, použije se první odpovídající pravidlo v seznamu. Toto chování umožňuje, aby pravidla byla uvedena v pořadí zvýšení generality. Pokud žádné pravidlo neodpovídá, nepoužijí se žádné opakování.
Když spuštění způsobí chybu a existuje platné pravidlo opakování, použije se jeho shoda s chybou k určení, jestli se má provedení opakovat.
Hodnota klíčového slova RetryExec je seznam středník oddělených pravidel opakování.
RetryExec={rule1;rule2}
Pravidlo opakování je následující: <errormatch>:<retrypolicy>:<querymatch>
Shoda chyb: Čárkami oddělený seznam kódů chyb. Například zadáním 1000 2000 by byly kódy chyb, které chcete zopakovat.
Zásady opakování: Určuje zpoždění do dalšího opakování. Prvním parametrem bude počet opakování, zatímco druhý bude zpoždění. Například 3,10+7 by bylo 3 pokusy začínající na 10 a každé následující opakování by se zvýší o 7 sekund. Pokud není zadaná hodnota +7, každé následující opakování se exponenciálně zdvojnásobí.
Shoda dotazu: Určuje dotaz, se kterým se chcete shodovat. Pokud není zadáno nic, platí to pro všechny dotazy. Zadání příkazu SELECT by znamenalo pro všechny dotazy, které začínají výběrem.
Kombinace všech tří výše uvedených součástí pro použití v připojovacím řetězci by byla:
RetryExec={1000,2000:3,10+7:SELECT}
To by znamenalo: "V případě chyb 1000 a 2000 v dotazu, který začíná příkazem SELECT. Zkuste to dvakrát s počátečním zpožděním 10 sekund a přidejte 7 sekund pro každý následující pokus"
Examples
40501,40540:4,5
V případě chyb 40501 a 40540 zkuste opakovat až čtyřikrát, počáteční zpoždění 5 sekund a exponenciální zdvojnásobení mezi jednotlivými opakováními. Toto pravidlo platí pro všechny dotazy.
49919:2,10+:CREATE
V případě chyby 49919 v dotazu, který začíná příkazem CREATE, zkuste na začátku maximálně dvakrát, nejprve po 10 sekundách a pak 20 sekund.
49918,40501,10928:5,10+5:SELECT c1
V případě chyb 49918, 40501 a 10928 u dotazů začínajících příkazem SELECT c1 zkuste opakovat až pětkrát, při prvním opakování počkejte 10 sekund a potom se čekání zvýší o 5 sekund.
Výše uvedené tři pravidla je možné zadat společně v připojovacím řetězci následujícím způsobem:
RetryExec={49918,40501,10928:5,10+5:SELECT c1;49919:2,10+:CREATE;40501,40540:4,5}
Na konci se umístí nejobecnější pravidlo (shoda– vše), které umožní dvě konkrétnější pravidla, aby odpovídala příslušným dotazům.
Klientský certifikát
Určuje certifikát, který se má použít pro ověřování pomocí připojení zpětné smyčky (k dispozici pouze v SQL Serveru v Linuxu). Možnosti jsou následující:
| Hodnota možnosti | Description |
|---|---|
sha1:<hash_value> |
Ovladač ODBC používá hodnotu hash SHA1 k vyhledání certifikátu ve Službě Windows Certificate Store. |
subject:<subject> |
Ovladač ODBC používá k vyhledání certifikátu v úložišti certifikátů Systému Windows certifikát. |
file:<file_location>[,password:<password>] |
Ovladač ODBC používá soubor certifikátu. |
Pokud je certifikát ve formátu PFX a privátní klíč uvnitř certifikátu PFX je chráněný heslem, vyžaduje se klíčové slovo hesla. Pro certifikáty v PEM a DER formátuje atribut ClientKey je povinný.
ClientKey
Určuje umístění souboru privátního klíče pro PEM certifikáty určené DER atributem ClientCertificate. Formát:
| Hodnota možnosti | Description |
|---|---|
file:<file_location>[,password:<password>] |
Určuje umístění souboru privátního klíče. |
V případě, že je soubor privátního klíče chráněný heslem, je vyžadováno klíčové slovo hesla. Pokud heslo obsahuje nějaké , znaky, přidá se další , znak hned za každý z nich. Pokud je a,b,cnapříklad heslo , je řídicí heslo, které je a,,b,,cpřítomné v připojovacím řetězci .
Název hostiteleInCertificate
Určuje název hostitele, který se má v certifikátu serveru očekávat při vyjednání šifrování , pokud se liší od výchozí hodnoty odvozené od addr/address/Server. Možnost HostnameInCertificate se při použití možnosti ServerCertificate ignoruje.
IpAddressPreference
Tato možnost je dostupná od verze 18.1. Umožňuje uživateli zadat typ IP adresy, u které chce určit prioritu připojení. Možné možnosti jsou IpAddress= [ IPv4First | IPv6First | UsePlatformDefault]." UsePlatformDefault se připojuje k adresám v pořadí, v jakém jsou poskytovány systémovým voláním k překladu názvu serveru. Výchozí hodnota je IPv4First, která odpovídá chování v předchozích verzích.
ServerCertificate
Tato možnost je dostupná od verze 18.1. Tato možnost se dá použít v přísném režimu šifrování. Klíčové slovo ServerCertificate slouží k určení cesty k souboru certifikátu, který se má shodovat s certifikátem TLS/SSL SQL Serveru. Shoda se provádí místo standardního ověření certifikátu (vypršení platnosti, název hostitele, řetězec důvěryhodnosti atd.). Přijaté formáty certifikátů jsou PEM, DER a CER. Pokud je zadaný, certifikát SQL Serveru se zkontroluje tak, že zjistí, jestli zadaný certifikát Serveru je přesná shoda.
SQL_COPT_SS_ACCESS_TOKEN
Povolí použití přístupového tokenu Microsoft Entra k ověřování. Další informace naleznete v tématu Použití Microsoft Entra ID.
| Hodnota atributu | Description |
|---|---|
| NULA | (Výchozí) Není zadán žádný přístupový token. |
| ACCESSTOKEN* | Ukazatel na přístupový token |
SQL_COPT_SS_CEKEYSTOREDATA
Komunikuje s načtenou knihovnou zprostředkovatele úložiště klíčů. Viz Ovládací prvky transparentního šifrování sloupců (Always Encrypted). Tento atribut nemá výchozí hodnotu. Další informace naleznete v tématu Vlastní zprostředkovatelé úložiště klíčů.
| Hodnota atributu | Description |
|---|---|
| CEKEYSTOREDATA * | Komunikační datová struktura pro knihovnu zprostředkovatele úložiště klíčů |
SQL_COPT_SS_CEKEYSTOREPROVIDER
Načte knihovnu zprostředkovatele úložiště klíčů pro Always Encrypted nebo načte názvy načtených knihoven zprostředkovatele úložiště klíčů. Další informace naleznete v tématu Vlastní zprostředkovatelé úložiště klíčů. Tento atribut nemá výchozí hodnotu.
| Hodnota atributu | Description |
|---|---|
| uklízečka* | Cesta ke knihovně zprostředkovatele úložiště klíčů |
SQL_COPT_SS_ENLIST_IN_XA
Aby bylo možné povolit transakce XA s procesorem transakcí kompatibilním s XA, musí aplikace volat SQLSetConnectAttr s SQL_COPT_SS_ENLIST_IN_XA a ukazatel na XACALLPARAM objekt. Tato možnost je podporovaná ve Windows (17.3+), Linuxu a macOS.
SQLSetConnectAttr(hdbc, SQL_COPT_SS_ENLIST_IN_XA, param, SQL_IS_POINTER); // XACALLPARAM *param
Chcete-li přidružit XA transakce pouze k připojení ODBC, zadejte hodnotu TRUE nebo FALSE s SQL_COPT_SS_ENLIST_IN_XA místo ukazatele při volání SQLSetConnectAttr. Toto nastavení je platné jenom ve Windows a nejde ho použít k určení operací XA prostřednictvím klientské aplikace.
SQLSetConnectAttr(hdbc, SQL_COPT_SS_ENLIST_IN_XA, (SQLPOINTER)TRUE, 0);
| Hodnota | Description | Platformy |
|---|---|---|
| XACALLPARAM object* | Ukazatel na XACALLPARAM objekt. |
Windows, Linux a macOS |
| TRUE | Přidruží transakci XA k připojení ODBC. Všechny související databázové aktivity se provádějí pod ochranou transakce XA. | Windows |
| FALSE | Přidružení transakce k připojení ODBC. | Windows |
Další informace o transakcích XA naleznete v tématu Použití transakcí XA.
SQL_COPT_SS_LONGASMAX
Umožňuje odesílání dlouhých dat typu na servery jako maximálních dat typu.
| Hodnota atributu | Description |
|---|---|
| Ne | (Výchozí) Při odesílání nepřeveďte dlouhé typy na maximální počet typů. |
| Ano | Při odesílání převede data z dlouhých typů na maximální počet typů. |
SQL_COPT_SS_SPID
Načte ID relace připojení. Tato vlastnost je ekvivalentní proměnné T-SQL @@SPID s tím rozdílem, že nedojde k dodatečné odezvě na server.
| Hodnota atributu | Description |
|---|---|
| DWORD | SPID |