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.
Ez a témakör az ODBC 2.x és ODBC 3.x SQLSTATE-értékeit ismerteti. További információ az ODBC 3.x SQLSTATE-értékekről a Függelék A: ODBC hibakódok részben található.
Az ODBC 3.x-ben A HYxxx SQLSTATE-k az S1xxx helyett, a 42Sxx SQLSTATE-t pedig S00XX helyett adják vissza. Ez az Open Group és az ISO szabványoknak való megfelelés érdekében történt. A leképezés sok esetben nem egy az egyhez, mert a szabványok több SQLSTATE értelmezését újradefiniálták.
Ha egy ODBC 2.x-alkalmazást ODBC 3.x-alkalmazásra frissít, az alkalmazást úgy kell módosítani, hogy az ODBC 2.x SQLSTATEs helyett ODBC 3.x SQLSTATE-t várjon. Az alábbi táblázat azokat az ODBC 3.x SQLSTATE-eket sorolja fel, amelyekre minden ODBC 2.x SQLSTATE megfeleltetve van.
Ha a SQL_ATTR_ODBC_VERSION környezeti attribútum SQL_OV_ODBC2 értékre van állítva, az illesztő ODBC 3.x SQLSTATE helyett ODBC 2.x SQLSTATE-eket ad meg az SQLGetDiagField vagy az SQLGetDiagRec meghívásakor. Egy adott leképezés úgy határozható meg, hogy a következő táblázat 1. oszlopában az ODBC 2.x SQLSTATE szerepel, amely megfelel a 2. oszlop ODBC 3.x SQLSTATE-jének.
| ODBC 2.x SQLSTATE | ODBC 3.x SQLSTATE | Comments |
|---|---|---|
| 01S03 | 01001 | |
| 01S04 | 01001 | |
| 22003 | HY019 | |
| 22008 | 22007 | |
| 22005 | 22018 | |
| 24000 | 07005 | |
| 37000 | 42000 | |
| 70100 | HY018 | |
| S0001 | 42S01 | |
| S0002 | 42S02 | |
| S0011 | 42S11 | |
| S0012 | 42S12 | |
| S0021 | 42S21 | |
| S0022 | 42S22 | |
| S0023 | 42S23 | |
| S1000 | HY000 | |
| S1001 | HY001 | |
| S1002 | 07009 | Az ODBC 2.x SQLSTATE S1002 ODBC 3.x SQLSTATE 07009-re van leképezve, ha a mögöttes függvény az SQLBindCol, az SQLColAttribute, az SQLExtendedFetch, az SQLFetch, az SQLFetchScroll vagy az SQLGetData. |
| S1003 | HY003 | |
| S1004 | HY004 | |
| S1008 | HY008 | |
| S1009 | HY009 | Érvénytelen null mutató használata esetén visszatér. |
| S1009 | HY024 | Érvénytelen attribútumérték visszaadva. |
| S1009 | HY092 | Ha az egyidejűség írásvédett, az SQLSetPos hívásával visszaadott adatok frissítése vagy törlése, illetve az SQLBulkOperations hívásával történő adatok hozzáadása, frissítése vagy törlése nem lehetséges. |
| S1010 | HY007 HY010 | Az SQLSTATE S1010 az SQLSTATE HY007-re van leképezve, amikor az SQLDescribeColmeghívása az SQLPrepare, az SQLExecDirect vagy az Utasításkezelő katalógusfüggvényének meghívása előtt történik. Ellenkező esetben az SQLSTATE S1010 az SQLSTATE HY010-re van leképezve. |
| S1011 | HY011 | |
| S1012 | HY012 | |
| S1090 | HY090 | |
| S1091 | HY091 | |
| S1092 | HY092 | |
| S1093 | 07009 | Az ODBC 3.x SQLSTATE 07009 az ODBC 2.x SQLSTATE S1093-ra térképezve van, ha az alapul szolgáló függvény SQLBindParameter vagy SQLDescribeParam. |
| S1096 | HY096 | |
| S1097 | HY097 | |
| S1098 | HY098 | |
| S1099 | HY099 | |
| S1100 | HY100 | |
| S1101 | HY101 | |
| S1103 | HY103 | |
| S1104 | HY104 | |
| S1105 | HY105 | |
| S1106 | HY106 | |
| S1107 | HY107 | |
| S1108 | HY108 | |
| S1109 | HY109 | |
| S1110 | HY110 | |
| S1111 | HY111 | |
| S1C00 | HYC00 | |
| S1T00 | HYT00 |
Megjegyzés:
Az ODBC 3.x SQLSTATE 07008 az ODBC 2.x SQLSTATE S1000-re van leképezve.