Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
I det här avsnittet beskrivs SQLSTATE-värden för ODBC 2.x och ODBC 3.x. Mer information om ODBC 3.x SQLSTATE-värden finns i Bilaga A: ODBC-felkoder.
I ODBC 3.x returneras HYxxx SQLSTATEs i stället för S1xxx och 42Sxx SQLSTATEs returneras i stället för S00XX. Detta gjordes för att överensstämma med Open Group- och ISO-standarder. I många fall är mappningen inte en-till-en eftersom standarderna har omdefinierat tolkningen av flera SQLSTATE:er.
När ett ODBC 2.x-program uppgraderas till ett ODBC 3.x-program måste programmet ändras för att förvänta sig ODBC 3.x SQLSTATEs i stället för ODBC 2.x SQLSTATEs. I följande tabell visas de ODBC 3.x SQLSTATEs som varje ODBC 2.x SQLSTATE mappas till.
När SQL_ATTR_ODBC_VERSION miljöattribut är inställt på SQL_OV_ODBC2 publicerar drivrutinen ODBC 2.x SQLSTATEs i stället för ODBC 3.x SQLSTATEs när SQLGetDiagField eller SQLGetDiagRec anropas. En specifik mappning kan fastställas genom att notera ODBC 2.x SQLSTATE i kolumn 1 i följande tabell som motsvarar ODBC 3.x SQLSTATE i kolumn 2.
| 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 | ODBC 2.x SQLSTATE S1002 mappas till ODBC 3.x SQLSTATE 07009 om den underliggande funktionen är SQLBindCol, SQLColAttribute, SQLExtendedFetch, SQLFetch, SQLFetchScroll eller SQLGetData. |
| S1003 | HY003 | |
| S1004 | HY004 | |
| S1008 | HY008 | |
| S1009 | HY009 | Returnerades på grund av en ogiltig användning av en null-pekare. |
| S1009 | HY024 | Returneras för ett ogiltigt attributvärde. |
| S1009 | HY092 | Returneras för att uppdatera eller ta bort data med ett anrop till SQLSetPos, eller för att lägga till, uppdatera eller ta bort data med ett anrop till SQLBulkOperations, när samtidighet är inställd på skrivskydd. |
| S1010 | HY007 HY010 | SQLSTATE S1010 mappas till SQLSTATE HY007 när SQLDescribeCol anropas innan DU anropar SQLPrepare, SQLExecDirect eller en katalogfunktion för StatementHandle. Annars mappas SQLSTATE S1010 till SQLSTATE HY010. |
| S1011 | HY011 | |
| S1012 | HY012 | |
| S1090 | HY090 | |
| S1091 | HY091 | |
| S1092 | HY092 | |
| S1093 | 07009 | ODBC 3.x SQLSTATE 07009 mappas till ODBC 2.x SQLSTATE S1093 om den underliggande funktionen är SQLBindParameter eller 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 |
Anmärkning
ODBC 3.x SQLSTATE 07008 mappas till ODBC 2.x SQLSTATE S1000.