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.
Megfelelőség
Bemutatott verzió: ODBC 3.81 Szabványoknak megfelelés: ODBC
Summary
Az SQLRateConnection meghatározza, hogy egy illesztőprogram újrahasznosíthatja-e egy meglévő kapcsolatot a kapcsolati pool között.
Syntax
SQLRETURN SQLRateConnection(
SQLHDBC_INFO_TOKEN hRequest,
SQLHDBC hCandidateConnection,
BOOL fRequiredTransactionEnlistment,
TRANSID transId,
DWORD * pRating );
Arguments
hRequest
[Bemenet] Egy token handle az új alkalmazás kapcsolati kérését jelképezi.
hCandidateConnection
[Bemenet] A meglévő kapcsolat a csatlakozási poolban. A kapcsolatnak nyitott állapotban kell lennie.
fRequiredTransactionEnlistment
[Bemenet] Ha TRUE, a meglévő kapcsolat hCandidateConnection újrafelhasználása az új kapcsolatkéréshez (hRequest) további besorolást igényel.
transId
[Bemenet] Ha a fRequiredTransactionEnlistment TRUE, akkor transId azt a DTC tranzakciót jelöli, amelyet a kérés bevon. Ha a fRequiredTransactionEnlistment HAMIS, a transId figyelmen kívül hagyásra kerül.
pRating
[Kimenet] a hCandidateConnection újrahasználati értékelése a hRequest esetében. Ez a besorolás 0 és 100 között lesz (beleértve a besorolást is).
Returns
SQL_SUCCESS, SQL_ERROR vagy SQL_INVALID_HANDLE.
Diagnostics
A Driver Manager nem dolgozza fel a funkcióból visszaküldött diagnosztikai információkat.
Remarks
Az SQLRateConnection 0 és 100 között (beleértve ezt is értve) pontszámot ad, amely jelzi, hogy egy meglévő kapcsolat mennyire illik a kéréshez.
| Score | Jelentés (amikor SQL_SUCCESS visszakerül) |
|---|---|
| 0 | A hCandidateConnection nem használható újra a hRequesthez. |
| Bármilyen érték 1 és 98 között (beleértve a kiterjedést) | Minél magasabb a pontszám, annál közelebb áll a hCandidateConnection és a hRequest egyezése. |
| 99 | Csak a jelentéktelen tulajdonságok eltérései vannak. A Driver Managernek meg kell állítania a minősítési ciklust. |
| 100 | Tökéletes párosítás. A Driver Managernek meg kell állítania a minősítési ciklust. |
| Bármely más érték, amely nagyobb, mint 100 | A hCandidateConnection halottnak van jelölve, és még a jövőbeli csatlakozási kérés esetén sem lesz újrahasználata. |
A Driver Manager halottnak jelöli a kapcsolatot, ha a visszaküldési kód más, mint SQL_SUCCESS (beleértve SQL_SUCCESS_WITH_INFO-t is), vagy a besorolás meghaladja a 100-at. Ez a halott kapcsolat nem lesz újrahasznosítva (még a jövőbeli csatlakozási kérések esetén sem), és végül időlejárást kap, miután a CPTimeout megszűnt. A vezetővezető továbbra is keres egy másik kapcsolatot a poolból, hogy értékelje.
Ha a Driver Manager újra felhasznál egy olyan kapcsolatot, amelynek pontszáma szigorúan 100-nál kisebb (beleértve a 99-et), a Driver Manager felhívja a SQLSetConnectAttr(SQL_ATTR_DBC_INFO_TOKEN) szolgáltatást, hogy visszaállítsa a kapcsolatot az alkalmazás által kért állapotba. A meghajtónak nem szabad visszaállítania a kapcsolatot ebben a funkcióhívásban.
Ha a fRequiredTransactionEnlistment TRUE, akkor a hCandidateConnection újrahasználatához extra regisztráció (transId != NULL) vagy levonás (transId == NULL) szükséges. Ez azt mutatja, mennyi költsége van egy kapcsolat újrahasználatának, és hogy az illesztőprogramnak be kellene-e vennie vagy törölnie a kapcsolatot, ha újra fel akarja használni a kapcsolatot. Ha a fRequireTransactionEnlistment HAMIS, akkor az illeszternek figyelmen kívül kell hagynia a transID értékét.
A Driver Manager garantálja, hogy a hRequest és a hCandidateConnection szülő HENV kezelőkeze ugyanaz. A Driver Manager garantálja, hogy a hRequest és hCandidateConnection által összekapcsolódó pool ID ugyanaz.
Az alkalmazásoknak nem szabad közvetlenül hívniuk ezt a függvényt. Egy ODBC illesztőprogramnak, amely támogatja az illesztőközpontú kapcsolati poolingot, ezt a funkciót meg kell valósítania.
Tartalmazzuk a sqlspi.h-t az ODBC illezserfejlesztéshez.