Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Mielőtt az alkalmazás csatlakozni tud egy adatforráshoz vagy illesztőprogramhoz, le kell foglalnia egy kapcsolati leírót az alábbiak szerint:
Az alkalmazás egy SQLHDBC típusú változót deklarál. Ezután meghívja az SQLAllocHandle-t , és átadja ennek a változónak a címét, a kapcsolat lefoglalásához használt környezet leíróját és a SQL_HANDLE_DBC lehetőséget. Például:
SQLHDBC hdbc1; SQLAllocHandle(SQL_HANDLE_DBC, henv1, &hdbc1);Az Illesztőprogram-kezelő lefoglal egy struktúrát, amelyben tárolhatja az utasítással kapcsolatos információkat, és visszaadja a kapcsolati leírót a változóban.
Az Illesztőprogram-kezelő jelenleg nem hívja meg az SQLAllocHandle-t az illesztőprogramban, mert nem tudja, melyik illesztőprogramot hívja meg. Késlelteti az SQLAllocHandle meghívását az illesztőprogramban, amíg az alkalmazás nem hív meg egy függvényt az adatforráshoz való csatlakozáshoz. További információkért lásd: A Driver Manager szerepe a kapcsolódási folyamatban, ennek a szakasznak egy későbbi részében.
Fontos megjegyezni, hogy egy kapcsolati leíró kiosztása nem ugyanaz, mint egy illesztőprogram betöltése. A meghajtó nincs betöltve, amíg meg nem hívják a kapcsolati függvényt. Így a kapcsolati leíró kiosztása után és az illesztőprogramhoz vagy az adatforráshoz való csatlakozás előtt az alkalmazás csak az SQLSetConnectAttr, az SQLGetConnectAttr vagy az SQLGetInfo függvényeket hívhatja meg a kapcsolati leíróval az SQL_ODBC_VER lehetőséggel. A kapcsolati leíróval (például SQLEndTran) rendelkező egyéb függvények meghívása az SQLSTATE 08003 értéket adja vissza (a kapcsolat nem nyitott meg). A részletekért tekintse meg a B függeléket: ODBC-állapotáttraszttáblák.
A kapcsolati leírókról további információt a Kapcsolati leírók című témakörben talál.