Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a lap az SQL Server ODBC-illesztőprogramjában elérhető SQLSetConnectAttr és SQLGetConnectAttr kapcsolati sztringekhez és DSN-ekhez, valamint kapcsolati attribútumokhoz tartozó kulcsszavakat sorolja fel.
Támogatott DSN- és kapcsolatikarakterlánc-kulcsszavak, valamint kapcsolati attribútumok
Az alábbi táblázat az egyes platformokhoz (L: Linux) elérhető kulcsszavakat és attribútumokat sorolja fel. M: macOS; W: Windows). További részletekért válassza ki a kulcsszót vagy az attribútumot.
Az alábbiakban néhány kapcsolatisztring-kulcsszó és kapcsolati attribútum található, amelyek nincsenek dokumentálva a Kapcsolatisztring-kulcsszavak használata az SQL Server Native Clienttel, a SQLSetConnectAttr és a SQLSetConnectAttr függvény című témakörökben.
Description
Az adatforrás leírására szolgál.
SQL_COPT_SS_ANSI_OEM
Szabályozza az ADATOK ANSI-ről OEM-re való konvertálását.
| Attribútumérték | Description |
|---|---|
| SQL_AO_OFF | (Alapértelmezett) A fordítás nem történik meg. |
| SQL_AO_ON | A fordítás kész. |
SQL_COPT_SS_AUTOBEGINTXN
17.6-os verziótól Ha az automatikus véglegesítés ki van kapcsolva, szabályozza, hogy a rendszer automatikusan BEGIN TRANSACTION utasítást indítson ROLLBACK vagy COMMIT után.
| Attribútumérték | Description |
|---|---|
| SQL_AUTOBEGINTXN_ON | (Alapértelmezett) A BEGIN TRANSACTION automatikus végrehajtása ROLLBACK vagy COMMIT után. |
| SQL_AUTOBEGINTXN_OFF | A ROLLBACK vagy COMMIT után nem indul automatikusan BEGIN TRANSACTION. |
SQL_COPT_SS_FALLBACK_CONNECT
Az SQL Server tartalék kapcsolatainak használatát szabályozza. Ez már nem támogatott.
| Attribútumérték | Description |
|---|---|
| SQL_FB_OFF | (Alapértelmezett) A tartalék kapcsolatok le vannak tiltva. |
| SQL_FB_ON | A tartalék kapcsolatok engedélyezve vannak. |
Új kapcsolati sztringszavak és kapcsolati attribútumok
Hitelesítés – SQL_COPT_SS_AUTHENTICATION
Beállítja az SQL Serverhez való csatlakozáshoz használni kívánt hitelesítési módot. További információ: A Microsoft Entra ID használata.
| Kulcsszó értéke | Attribútumérték | Description |
|---|---|---|
| SQL_AU_NONE | (Alapértelmezett) Nincs beállítva. Más attribútumok kombinációja határozza meg a hitelesítési módot. | |
| SqlPassword | SQL_AU_PASSWORD | SQL Server-hitelesítés felhasználónévvel és jelszóval. |
| ActiveDirectoryIntegrated | SQL_AU_AD_INTEGRATED | Microsoft Entra integrált hitelesítés. |
| ActiveDirectoryInteractive | SQL_AU_AD_INTERACTIVE | Microsoft Entra Interaktív hitelesítés. |
| ActiveDirectoryMsi | SQL_AU_AD_MSI | Microsoft Entra által felügyelt identitáshitelesítés. A felhasználó által hozzárendelt identitás esetében az UID a felhasználói identitás objektumazonosítójára van állítva. |
| ActiveDirectoryServicePrincipal | SQL_AU_AD_SPA | Microsoft Entra egyszerű szolgáltatásazonosítóval történő hitelesítés. A UID a szolgáltatásnév ügyfél-azonosítójára van állítva. A PWD az ügyféltitokra van beállítva. |
| ActiveDirectoryPassword | SQL_AU_AD_PASSWORD | [ELAVULT] Microsoft Entra jelszóhitelesítés. Az ActiveDirectoryPassword elavult lett. További információ: Az ActiveDirectoryPassword elavult. |
| SQL_AU_RESET | Nincs beállítva. Felülbírálja a DSN vagy a kapcsolati sztring beállításait. |
Megjegyzés:
A(z) Authentication kulcsszó vagy attribútum használatakor a(z) Encrypt beállítást kifejezetten állítsa a kívánt értékre a kapcsolati sztringben, a DSN-ben vagy a kapcsolati attribútumban. A részletekért lásd a Kapcsolati karakterlánc-kulcsszavak használata az SQL Server Native Clienttel című témakört.
ColumnEncryption – SQL_COPT_SS_COLUMN_ENCRYPTION
Transzparens oszloptitkosítást (Always Encrypted) vezérel. További információ: Always Encrypted (ODBC) használata.
| Kulcsszó értéke | Attribútumérték | Description |
|---|---|---|
| Enabled | SQL_CE_ENABLED | Engedélyezi az Always Encryptedt. |
| Disabled | SQL_CE_DISABLED | (Alapértelmezett) Letiltja az Always Encrypted szolgáltatást. |
| SQL_CE_RESULTSETONLY | Csak a visszafejtést engedélyezi (eredmények és visszaadott értékek). |
ConcatNullYieldsNull - SQL_COPT_SS_CONCAT_NULL
Sztringek összefűzésekor szabályozza a NULL ISO-kezelésének használatát. További információ: SET CONCAT_NULL_YIELDS_NULL (Transact-SQL).
| Kulcsszó értéke | Attribútumérték | Description |
|---|---|---|
| Igen | SQL_CN_ON | (Alapértelmezett) A NULL összefűzés null értéket ad. |
| Nem | SQL_CN_OFF | A NULL összefűzés karakterláncot eredményez. |
Titkosít
Megadja, hogy a kapcsolatok TLS-titkosítást használnak-e a hálózaton keresztül. A lehetséges értékek a következőkyes/mandatory: (18,0+),no/optional (18,0+) és strict(18,0+). Az alapértelmezett érték a yes 18.0-s vagy újabb verzióban és no a korábbi verziókban van.
A kiszolgáló bejelentkezési hitelesítő adatai (felhasználónév és jelszó) a beállítástól Encryptfüggetlenül mindig titkosítva vannak.
Encrypt, TrustServerCertificateés a kiszolgálóoldali Force Encryption beállítások szerepet játszanak abban, hogy a kapcsolatok titkosítva vannak-e a hálózaton keresztül. Az alábbi táblázatok a beállítások hatását mutatják be.
ODBC Driver 18 és újabb
| Titkosítási beállítás | Megbízhatósági kiszolgáló tanúsítványa | Kiszolgáló kényszerítő titkosítása | Eredmény |
|---|---|---|---|
| Nem | Nem | Nem | A kiszolgálótanúsítvány nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok nincsenek titkosítva. |
| Nem | Igen | Nem | A szerver tanúsítványa nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok nincsenek titkosítva. |
| Igen | Nem | Nem | A kiszolgálótanúsítvány ellenőrizve van. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Igen | Igen | Nem | A kiszolgálótanúsítvány nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Nem | Nem | Igen | A kiszolgálótanúsítvány ellenőrizve van. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Nem | Igen | Igen | A kiszolgáló tanúsítványa nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Igen | Nem | Igen | A kiszolgálótanúsítvány ellenőrizve van. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Igen | Igen | Igen | A kiszolgáló tanúsítványa nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Szigorú | - | - | A TrustServerCertificate figyelmen kívül lesz hagyva. A kiszolgáló tanúsítványa ellenőrizve van. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
Megjegyzés:
A „Szigorú” csak azokon a kiszolgálókon érhető el, amelyek támogatják a TDS 8.0-s kapcsolatokat.
ODBC Driver 17 és régebbi
| Titkosítási beállítás | Megbízhatósági kiszolgáló tanúsítványa | Kiszolgáló kényszerítő titkosítása | Eredmény |
|---|---|---|---|
| Nem | Nem | Nem | A kiszolgálótanúsítvány nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok nincsenek titkosítva. |
| Nem | Igen | Nem | A kiszolgáló tanúsítványa nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok nincsenek titkosítva. |
| Igen | Nem | Nem | A kiszolgáló tanúsítványa ellenőrizve van. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Igen | Igen | Nem | A kiszolgáló tanúsítványa nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Nem | Nem | Igen | A kiszolgáló tanúsítványa nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Nem | Igen | Igen | A kiszolgálótanúsítvány nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Igen | Nem | Igen | A kiszolgálótanúsítvány ellenőrizve van. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
| Igen | Igen | Igen | A szervertanúsítvány nincs ellenőrizve. Az ügyfél és a kiszolgáló között küldött adatok titkosítva lesznek. |
TransparentNetworkIPResolution – SQL_COPT_SS_TNIR
Szabályozza a Transzparens hálózati IP-felbontás funkciót, amely a MultiSubnetFailover szolgáltatással együttműködve lehetővé teszi a gyorsabb újracsatlakozási kísérleteket. További információ: Transzparens hálózati IP-felbontás használata.
| Kulcsszó értéke | Attribútumérték | Description |
|---|---|---|
| Enabled | SQL_IS_ON | (Alapértelmezett) Lehetővé teszi a transzparens hálózati IP-felbontást. |
| Disabled | SQL_IS_OFF | Letiltja a transzparens hálózati IP-felbontást. |
UseFMTONLY
A(z) SET FMTONLY metaadatokhoz való használatát szabályozza az SQL Server 2012-es és újabb verzióihoz való csatlakozáskor.
| Kulcsszó értéke | Description |
|---|---|
| Nem | (Alapértelmezett) Ha elérhető, használja a sp_describe_first_result_set metaadatokat. |
| Igen | Metaadatokhoz használható SET FMTONLY . |
Replication
Megadja a replikációs bejelentkezés használatát az ODBC-illesztőprogram 17.8-s és újabb verziójában.
| Kulcsszó értéke | Description |
|---|---|
| Nem | (Alapértelmezett) A replikációs bejelentkezés nem használatos. |
| Igen | A beállítással rendelkező NOT FOR REPLICATION triggerek nem aktiválják a kapcsolatot. |
RetryExec
A konfigurálható újrapróbálkozás logikája a 18.1-es verziótól érhető el. Konfigurálható feltételek alapján automatikusan újra végrehajt bizonyos ODBC-függvényhívásokat. Ez a funkció a kapcsolati sztringen keresztül engedélyezhető a RetryExec kulcsszóval, valamint az újrapróbálkozási szabályok listájával. Minden újrapróbálkozási szabály három, kettősponttal elválasztott összetevőből áll: hibaillesztés, újrapróbálkozási szabályzat és lekérdezésillesztés.
A lekérdezési egyezés meghatározza az adott végrehajtáshoz használandó újrapróbálkozási szabályt, és megfelel a bejövő parancsszövegnek (SQLExecDirect) vagy az utasításobjektumban (SQLExecute) szereplő előkészített parancsszövegnek. Ha egynél több szabály egyezik, a rendszer a listában szereplő első egyezőt használja. Ez a viselkedés lehetővé teszi a szabályok felsorolását az általánosság növelése érdekében. Ha nincs szabály egyezés, akkor a rendszer nem alkalmaz újrapróbálkozásokat.
Ha a végrehajtás hibát eredményez, és van egy alkalmazható újrapróbálkozási szabály, annak hibaegyezése határozza meg, hogy a végrehajtást újra kell-e próbálkozni.
A RetryExec kulcsszó értéke pontosvesszővel elválasztott újrapróbálkozési szabályok listája.
RetryExec={rule1;rule2}
Az újrapróbálkozások szabálya a következő: <errormatch>:<retrypolicy>:<querymatch>
Hibaegyezés: A hibakódok vesszővel tagolt listája. Például a(z) 1000,2000 megadásával az újrapróbálni kívánt hibakódokat adná meg.
Újrapróbálkozás szabályzata: Megadja a késleltetést a következő újrapróbálkozásig. Az első paraméter az újrapróbálkozások száma, a második pedig a késés. Például a 3,10+7 azt jelenti, hogy 3 próbálkozás történik 10 másodperctől kezdve, és minden további újrapróbálkozás 7 másodperccel növekszik. Ha a +7 nincs megadva, akkor az alábbi újrapróbálkozás exponenciálisan megduplázódik.
Lekérdezésegyezés: Megadja az egyeztetni kívánt lekérdezést. Ha nincs megadva semmi, akkor az minden lekérdezésre érvényes. A SELECT megadása a kiválasztással kezdődő összes lekérdezésre utal.
Ha a fenti három összetevőt kombinálja egy kapcsolati sztringben való használathoz, az a következő:
RetryExec={1000,2000:3,10+7:SELECT}
Ami a következőt jelentené: "Az 1000- és 2000-s hibák esetén a SELECT-szel kezdődő lekérdezésben. Próbálkozzon kétszer 10 másodperces kezdeti késleltetéssel, és adjon hozzá 7 másodpercet minden következő kísérlethez"
Examples
40501,40540:4,5
A 40501-ben és a 40540-ben észlelt hibák esetén próbálkozzon újra legfeljebb négyszer, 5 másodperces kezdeti késleltetéssel, és exponenciális duplával az egyes újrapróbálkozások között. Ez a szabály az összes lekérdezésre vonatkozik.
49919:2,10+:CREATE
A CREATE kezdetű lekérdezés 49919-re vonatkozó hibájáért próbálkozzon újra legfeljebb kétszer, kezdetben 10 másodperc, majd 20 másodperc után.
49918,40501,10928:5,10+5:SELECT c1
A SELECT c1-től kezdődő lekérdezéseken a 49918,40501 és 10928 hiba esetén próbálkozzon újra legfeljebb ötször, várjon 10 másodpercet az első újrapróbálkozásra, és növelje a várakozást 5 másodperccel.
A fenti három szabály együtt adható meg a kapcsolati sztringben az alábbiak szerint:
RetryExec={49918,40501,10928:5,10+5:SELECT c1;49919:2,10+:CREATE;40501,40540:4,5}
A legáltalánosabb (mindenre illeszkedő) szabály a végére kerül, hogy az előtte lévő két konkrétabb szabály illeszkedhessen a hozzájuk tartozó lekérdezésekre.
Ügyfélbizonyítvány
Megadja a visszacsatolási kapcsolatokkal történő hitelesítéshez használandó tanúsítványt (csak Linux SQL Serveren érhető el). A lehetőségek a következők:
| Beállítás értéke | Description |
|---|---|
sha1:<hash_value> |
Az ODBC-illesztő SHA1 kivonat használatával keres tanúsítványt a Windows Tanúsítványtárolóban |
subject:<subject> |
Az ODBC-illesztő a tulajdonos mező alapján keresi meg a tanúsítványt a Windows tanúsítványtárában. |
file:<file_location>[,password:<password>] |
Az ODBC-illesztő tanúsítványfájlt használ. |
Ha a tanúsítvány PFX formátumban van, és a PFX-tanúsítvány titkos kulcsa jelszóval védett, a jelszó kulcsszóra van szükség. PEM- és DER-formátumú tanúsítványok esetén a ClientKey attribútum szükséges
ClientKey
Megadja a ClientCertificate attribútum által megadott titkos kulcs PEM vagy DER tanúsítványok fájlhelyét. Formátum:
| Beállítás értéke | Description |
|---|---|
file:<file_location>[,password:<password>] |
Megadja a titkos kulcsfájl helyét. |
Ha a titkos kulcsfájl jelszóval védett, akkor jelszó kulcsszóra van szükség. Ha a jelszó bármilyen karaktert , tartalmaz, a rendszer minden egyes karakter után egy további , karaktert ad hozzá. Ha például a jelszó a,b,c, akkor a kapcsolati karakterláncban szereplő escape-elt jelszó a,,b,,c.
Állomásnév a tanúsítványban
Megadja a kiszolgáló tanúsítványában a titkosítás egyeztetésekor elvárandó állomásnevet, ha az eltér az Addr/Address/Server alapértelmezett értékétől. A HostnameInCertificate beállítás figyelmen kívül lesz hagyva a ServerCertificate beállítás használatakor.
IP-címre vonatkozó beállítás
A 18.1-es verziótól kezdve elérhető beállítás lehetővé teszi a felhasználó számára, hogy megadja a kapcsolatokhoz rangsorolni kívánt IP-cím típusát. A lehetséges lehetőségek az "IpAddress= [ IPv4First | IPv6First | UsePlatformDefault]." A UsePlatformDefault a rendszerhívás által megadott sorrendben csatlakozik a címekhez a kiszolgáló nevének feloldásához. Az alapértelmezett érték az IPv4First, amely megfelel az előző verziók viselkedésének.
ServerCertificate
A 18.1-es verziótól kezdve elérhető beállítás szigorú titkosítási móddal is használható. A ServerCertificate kulcsszó az SQL Server TLS/SSL-tanúsítványsal egyező tanúsítványfájl elérési útját adja meg. Az egyezés a szabványos tanúsítványérvényesítés (lejárat, állomásnév, megbízhatósági lánc stb.) helyett történik. Az elfogadott tanúsítványformátumok a PEM, a DER és a CER. Ha meg van adva, az SQL Server-tanúsítvány ellenőrzése annak ellenőrzésével történik, hogy a megadott ServerCertificate pontosan megegyezik-e.
SQL_COPT_SS_ACCESS_TOKEN
Engedélyezi a Microsoft Entra hozzáférési jogkivonat használatát a hitelesítéshez. További információ: A Microsoft Entra ID használata.
| Attribútumérték | Description |
|---|---|
| NULLA | (Alapértelmezett) Nincs megadva hozzáférési jogkivonat. |
| ACCESSTOKEN* | Mutató egy hozzáférési jogkivonatra. |
SQL_COPT_SS_CEKEYSTOREDATA
Egy betöltött kulcstár-szolgáltatói könyvtárral kommunikál. Lásd: Vezérlők – transzparens oszlopszintű titkosítás (Always Encrypted). Ez az attribútum nem rendelkezik alapértelmezett értékkel. További információ: Egyéni kulcstár-szolgáltatók.
| Attribútumérték | Description |
|---|---|
| CEKEYSTOREDATA * | Kommunikációs adatstruktúra a kulcstárszolgáltatói könyvtárhoz |
SQL_COPT_SS_CEKEYSTOREPROVIDER
Betölti az Always Encrypted kulcstár-szolgáltatói kódtárát, vagy lekéri a betöltött kulcstár-szolgáltatói kódtárak nevét. További információ: Egyéni kulcstár-szolgáltatók. Ez az attribútum nem rendelkezik alapértelmezett értékkel.
| Attribútumérték | Description |
|---|---|
| char * | A kulcstárszolgáltató könyvtár elérési útja |
SQL_COPT_SS_ENLIST_IN_XA
Az XA-tranzakciók XA-kompatibilis tranzakciófeldolgozóval (TP) való engedélyezéséhez az alkalmazásnak meg kell hívnia az SQLSetConnectAttr-t SQL_COPT_SS_ENLIST_IN_XA és egy XACALLPARAM objektumra mutató mutatót. Ez a beállítás Windows (17.3+), Linux és macOS rendszeren támogatott.
SQLSetConnectAttr(hdbc, SQL_COPT_SS_ENLIST_IN_XA, param, SQL_IS_POINTER); // XACALLPARAM *param
Ha egy XA-tranzakciót csak egy ODBC-kapcsolathoz szeretne társítani, a(z) SQLSetConnectAttr hívásakor a mutató helyett a TRUE vagy FALSE értéket adja meg az SQL_COPT_SS_ENLIST_IN_XA paraméterhez. Ez a beállítás csak Windows rendszeren érvényes, és nem használható XA-műveletek ügyfélalkalmazáson keresztüli megadására.
SQLSetConnectAttr(hdbc, SQL_COPT_SS_ENLIST_IN_XA, (SQLPOINTER)TRUE, 0);
| Érték | Description | Platformok |
|---|---|---|
| XACALLPARAM objektum* | A(z) XACALLPARAM objektumra mutató mutató. |
Windows, Linux és macOS |
| TRUE | Az XA-tranzakció társítása az ODBC-kapcsolattal. Az összes kapcsolódó adatbázis-tevékenység az XA-tranzakció védelme alatt történik. | Windows |
| FALSE | Megszünteti a tranzakció társítását az ODBC-kapcsolattal. | Windows |
További információ az XA-tranzakciókról: XA-tranzakciók használata.
SQL_COPT_SS_LONGASMAX
Lehetővé teszi, hogy a hosszú típusú adatok maximális típusadatokként legyenek elküldve a kiszolgálóknak.
| Attribútumérték | Description |
|---|---|
| Nem | (Alapértelmezett) Küldéskor ne alakítsa át a hosszú típusokat maximális típussá. |
| Igen | A küldés során a hosszú típusból a maximális típusba konvertálja az adatokat. |
SQL_COPT_SS_SPID
Lekéri a kapcsolat munkamenet-azonosítóját. Ez a tulajdonság egyenértékű a T-SQL @@SPID változóval, azzal a különbséggel, hogy nem jár további oda-visszaút a kiszolgálóval.
| Attribútumérték | Description |
|---|---|
| DWORD | SPID |