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.
Následující tabulka popisuje kompatibilitu typů aplikací a ovladačů definovaných dříve v této části.
| Typ aplikace a verze |
32bitová verze ODBC Ovladač 2.x |
ODBC 3.x driver |
Ovladač ODBC 3.8 | Ovladač kompatibilní se standardem ISO a standardem Open Group |
|---|---|---|---|---|
| 16bitová aplikace, libovolná verze | Kompatibilní | Kompatibilní | Kompatibilní | Kompatibilní |
| Čistá 2.x aplikace | Kompatibilní | Kompatibilní | Kompatibilní | Nekompatibilní[3] |
| Rekompilovaná aplikace pure 2.x | Kompatibilní | Kompatibilní[1] | Kompatibilní[1] | Nekompatibilní[3] |
| Pure Unicode aplikace 2.x | Kompatibilní | Kompatibilní[1] | Kompatibilní[1] | Nekompatibilní[3] |
| Čistě otevřená skupina a aplikace kompatibilní se standardem ISO | Není kompatibilní | Kompatibilní[2] | Kompatibilní[2] | Kompatibilní[2] |
| Čistá aplikace 3.0 | Není kompatibilní | Kompatibilní | Kompatibilní | Nekompatibilní[4] |
| Čistá aplikace 3.5 | Není kompatibilní | Kompatibilní | Kompatibilní | Nekompatibilní[4] |
| Čistě 3.8 (nebo vyšší) aplikace | Nekompatibilní [5] | Nekompatibilní [5] | Kompatibilní | Nekompatibilní [4] |
| Nahrazená aplikace | Kompatibilní | Kompatibilní | Kompatibilní | Nekompatibilní[3] |
[1] Aplikace musí překompilovat pomocí hlaviček ODBC 3.5 (nebo vyšší) s možností UNICODE (pokud se jedná o aplikaci Unicode) a musí rozhraní ODBCVER nastavit na 0x0250.
[2] Aplikace musí kompilovat pomocí hlaviček ODBC 3.5 (nebo vyšších) a propojit se správcem ovladačů ODBC. Musí také nastavit příznak záhlaví ODBC_STD.
[3] Tato konfigurace může potenciálně selhat, protože rozhraní ODBC 2.x neobsahuje funkce, které nejsou ve standardech, jako jsou záložky.
[4] Tato konfigurace může potenciálně selhat, protože rozhraní ODBC 3.x neobsahuje funkce, které nejsou ve standardech, jako jsou záložky.
[5] Tato konfigurace může potenciálně selhat, protože rozhraní ODBC 3.8 neobsahuje funkce, které nejsou v ovladačích ODBC 2.x nebo 3.x, jako jsou datové typy jazyka C specifické pro ovladače v rozhraní ODBC.
Kompatibilita správce ovladačů
Aplikace ODBC 3.0, která musí pracovat se všemi verzemi Správce ovladačů, by měla při spuštění provést následující:
Přidělit popisovač prostředí
Nastavte atribut prostředí SQL_ATTR_ODBC_VERSION na SQL_OV_ODBC3_80. Pokud správce ovladačů vrátí SQL_ERROR, správce ovladačů je starší než 3.8. Obnovte SQL_ATTR_ODBC_VERSION na SQL_OV_ODBC3 nebo SQL_OV_ODBC2, podle potřeby, aby odpovídal správci ovladačů.
Přidělit popisovač připojení
Vytvořte připojení.
Zavolejte SQLGetInfo pro SQL_DRIVER_ODBC_VER k určení verze ovladače. Pokud je ovladač ODBC 3.8, můžete použít typy jazyka C specifické pro ovladač. Jinak nepoužívejte datové typy jazyka C specifické pro ovladače.
Všimněte si, že rekompilovaná aplikace ODBC 3.x může používat jiné funkce ODBC 3.8 než typy jazyka C specifické pro ovladače bez zadání SQL_OV_ODBC3_80 pro SQL_ATTR_ODBC_VERSION. Podobá se rekompilované aplikaci ODBC 2.x pomocí funkcí ODBC 3.x.
Použití sqlCancelHandle v aplikaci kompatibilní se všemi správci ovladačů
Protože funkce SQLCancelHandle není podporována v Správci ovladačů, které byly vydány před Windows 7, nelze aplikaci načíst ve starších verzích Systému Windows, pokud volá SQLCancelHandle přímo. Chcete-li pracovat se všemi verzemi správce ovladačů a používat SQLCancelHandle v nových verzích Systému Windows, aplikace by měla volat SQLCancelHandle nepřímo pomocí LoadLibrary a GetProcAddress.