Modified:
trunk/SDK/MYSQLPlus/Library/MDiagnostic.cpp
trunk/SDK/MYSQLPlus/Library/MDiagnostic.h
Log:
FIX: More work to implement ODBC v3 SQL State mapping to ODBC v2 SQL State
Modified: trunk/SDK/MYSQLPlus/Library/MDiagnostic.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MDiagnostic.cpp 2006-10-06 18:52:43 UTC (rev 577)
+++ trunk/SDK/MYSQLPlus/Library/MDiagnostic.cpp 2006-10-06 22:02:40 UTC (rev 578)
@@ -216,178 +216,130 @@
{"ODBC 3.0","IM","015","Corrupt file data source",SQL_ERROR}
};
-int MDiagnosticStates3To2[][] =
-{
-DIA_01000
-DIA_01001
-DIA_01002
-DIA_01003
-DIA_01004
-DIA_01006
-DIA_01007
-DIA_01S00
-DIA_01S01
-DIA_01S02
-DIA_01S06
-DIA_01S07
-DIA_01S08
-DIA_01S09
-DIA_07001
-DIA_07002
-DIA_07005
-DIA_07006
-DIA_07009
-DIA_07S01
-DIA_08001
-DIA_08002
-DIA_08003
-DIA_08004
-DIA_08007
-DIA_08S01
-DIA_21S01
-DIA_21S02
-DIA_22001
-DIA_22002
-DIA_22003
-DIA_22007
-DIA_22008
-DIA_22012
-DIA_22015
-DIA_22018
-DIA_22019
-DIA_22025
-DIA_22026
-DIA_23000
-DIA_24000
-DIA_25000
-DIA_25S01
-DIA_25S02
-DIA_25S03
-DIA_28000
-DIA_34000
-DIA_3C000
-DIA_3D000
-DIA_3F000
-DIA_40001
-DIA_40002
-DIA_40003
-DIA_42000
-DIA_42S01
-DIA_42S02
-DIA_42S11
-DIA_42S12
-DIA_42S21
-DIA_42S22
-DIA_44000
-DIA_HY000
-DIA_HY001
-DIA_HY003
-DIA_HY004
-DIA_HY007
-DIA_HY008
-DIA_HY009
-DIA_HY010
-DIA_HY011
-DIA_HY012
-DIA_HY013
-DIA_HY014
-DIA_HY015
-DIA_HY016
-DIA_HY017
-DIA_HY018
-DIA_HY019
-DIA_HY020
-DIA_HY021
-DIA_HY024
-DIA_HY090
-DIA_HY091
-DIA_HY092
-DIA_HY095
-DIA_HY096
-DIA_HY097
-DIA_HY098
-DIA_HY099
-DIA_HY100
-DIA_HY101
-DIA_HY103
-DIA_HY104
-DIA_HY105
-DIA_HY106
-DIA_HY107
-DIA_HY109
-DIA_HY110
-DIA_HY111
-DIA_HYC00
-DIA_HYT00
-DIA_HYT01
-DIA_IM001
-DIA_IM002
-DIA_IM003
-DIA_IM004
-DIA_IM005
-DIA_IM006
-DIA_IM007
-DIA_IM008
-DIA_IM009
-DIA_IM010
-DIA_IM011
-DIA_IM012
-DIA_IM013
-DIA_IM014
-DIA_IM015
+int MDiagnosticStatesXRef[][] =
+{ /* ODBC v2 ODBC v3 */
+ { MDIAGNOSTIC_STATE2_01000, MDIAGNOSTIC_STATE3_01000 },
+ { MDIAGNOSTIC_STATE2_01S03, MDIAGNOSTIC_STATE3_01001 },
+ { MDIAGNOSTIC_STATE2_01S04, MDIAGNOSTIC_STATE3_01001 },
+ { MDIAGNOSTIC_STATE2_01002, MDIAGNOSTIC_STATE3_01002 },
+ { MDIAGNOSTIC_STATE2_01003, MDIAGNOSTIC_STATE3_01003 },
+ { MDIAGNOSTIC_STATE2_01004, MDIAGNOSTIC_STATE3_01004 },
+ { MDIAGNOSTIC_STATE2_01006, MDIAGNOSTIC_STATE3_01006 },
+ { MDIAGNOSTIC_STATE2_01007, MDIAGNOSTIC_STATE3_01007 },
+ { MDIAGNOSTIC_STATE2_01S00, MDIAGNOSTIC_STATE3_01S00 },
+ { MDIAGNOSTIC_STATE2_01S01, MDIAGNOSTIC_STATE3_01S01 },
+ { MDIAGNOSTIC_STATE2_01S02, MDIAGNOSTIC_STATE3_01S02 },
+ { MDIAGNOSTIC_STATE2_01S06, MDIAGNOSTIC_STATE3_01S06 },
+ { MDIAGNOSTIC_STATE2_01S07, MDIAGNOSTIC_STATE3_01S07 },
+ { MDIAGNOSTIC_STATE2_01S08, MDIAGNOSTIC_STATE3_01S08 },
+ { MDIAGNOSTIC_STATE2_01S09, MDIAGNOSTIC_STATE3_01S09 },
+ { MDIAGNOSTIC_STATE2_07001, MDIAGNOSTIC_STATE3_07001 },
+ { MDIAGNOSTIC_STATE2_07002, MDIAGNOSTIC_STATE3_07002 },
+ { MDIAGNOSTIC_STATE2_24000, MDIAGNOSTIC_STATE3_07005 },
+ { MDIAGNOSTIC_STATE2_07006, MDIAGNOSTIC_STATE3_07006 },
+ { MDIAGNOSTIC_STATE2_S1002, MDIAGNOSTIC_STATE3_07009 },
+ { MDIAGNOSTIC_STATE2_S1093, MDIAGNOSTIC_STATE3_07009 },
+ { MDIAGNOSTIC_STATE2_07S01, MDIAGNOSTIC_STATE3_07S01 },
+ { MDIAGNOSTIC_STATE2_08001, MDIAGNOSTIC_STATE3_08001 },
+ { MDIAGNOSTIC_STATE2_08002, MDIAGNOSTIC_STATE3_08002 },
+ { MDIAGNOSTIC_STATE2_08003, MDIAGNOSTIC_STATE3_08003 },
+ { MDIAGNOSTIC_STATE2_08004, MDIAGNOSTIC_STATE3_08004 },
+ { MDIAGNOSTIC_STATE2_08007, MDIAGNOSTIC_STATE3_08007 },
+ { MDIAGNOSTIC_STATE2_08S01, MDIAGNOSTIC_STATE3_08S01 },
+ { MDIAGNOSTIC_STATE2_21S01, MDIAGNOSTIC_STATE3_21S01 },
+ { MDIAGNOSTIC_STATE2_21S02, MDIAGNOSTIC_STATE3_21S02 },
+ { MDIAGNOSTIC_STATE2_22001, MDIAGNOSTIC_STATE3_22001 },
+ { MDIAGNOSTIC_STATE2_22002, MDIAGNOSTIC_STATE3_22002 },
+ { MDIAGNOSTIC_STATE2_22003, MDIAGNOSTIC_STATE3_22003 },
+ { MDIAGNOSTIC_STATE2_22008, MDIAGNOSTIC_STATE3_22007 },
+ { MDIAGNOSTIC_STATE2_22008, MDIAGNOSTIC_STATE3_22008 },
+ { MDIAGNOSTIC_STATE2_22012, MDIAGNOSTIC_STATE3_22012 },
+ { MDIAGNOSTIC_STATE2_22015, MDIAGNOSTIC_STATE3_22015 },
+ { MDIAGNOSTIC_STATE2_22005, MDIAGNOSTIC_STATE3_22018 },
+ { MDIAGNOSTIC_STATE2_22019, MDIAGNOSTIC_STATE3_22019 },
+ { MDIAGNOSTIC_STATE2_22025, MDIAGNOSTIC_STATE3_22025 },
+ { MDIAGNOSTIC_STATE2_22026, MDIAGNOSTIC_STATE3_22026 },
+ { MDIAGNOSTIC_STATE2_23000, MDIAGNOSTIC_STATE3_23000 },
+ { MDIAGNOSTIC_STATE2_24000, MDIAGNOSTIC_STATE3_24000 },
+ { MDIAGNOSTIC_STATE2_25000, MDIAGNOSTIC_STATE3_25000 },
+ { MDIAGNOSTIC_STATE2_25S01, MDIAGNOSTIC_STATE3_25S01 },
+ { MDIAGNOSTIC_STATE2_25S02, MDIAGNOSTIC_STATE3_25S02 },
+ { MDIAGNOSTIC_STATE2_25S03, MDIAGNOSTIC_STATE3_25S03 },
+ { MDIAGNOSTIC_STATE2_28000, MDIAGNOSTIC_STATE3_28000 },
+ { MDIAGNOSTIC_STATE2_34000, MDIAGNOSTIC_STATE3_34000 },
+ { MDIAGNOSTIC_STATE2_3C000, MDIAGNOSTIC_STATE3_3C000 },
+ { MDIAGNOSTIC_STATE2_3D000, MDIAGNOSTIC_STATE3_3D000 },
+ { MDIAGNOSTIC_STATE2_3F000, MDIAGNOSTIC_STATE3_3F000 },
+ { MDIAGNOSTIC_STATE2_40001, MDIAGNOSTIC_STATE3_40001 },
+ { MDIAGNOSTIC_STATE2_40002, MDIAGNOSTIC_STATE3_40002 },
+ { MDIAGNOSTIC_STATE2_40003, MDIAGNOSTIC_STATE3_40003 },
+ { MDIAGNOSTIC_STATE2_37000, MDIAGNOSTIC_STATE3_42000 },
+ { MDIAGNOSTIC_STATE2_S0001, MDIAGNOSTIC_STATE3_42S01 },
+ { MDIAGNOSTIC_STATE2_S0002, MDIAGNOSTIC_STATE3_42S02 },
+ { MDIAGNOSTIC_STATE2_S0011, MDIAGNOSTIC_STATE3_42S11 },
+ { MDIAGNOSTIC_STATE2_S0012, MDIAGNOSTIC_STATE3_42S12 },
+ { MDIAGNOSTIC_STATE2_S0021, MDIAGNOSTIC_STATE3_42S21 },
+ { MDIAGNOSTIC_STATE2_S0022, MDIAGNOSTIC_STATE3_42S22 },
+ { MDIAGNOSTIC_STATE2_44000, MDIAGNOSTIC_STATE3_44000 },
+ { MDIAGNOSTIC_STATE2_S1000, MDIAGNOSTIC_STATE3_HY000 },
+ { MDIAGNOSTIC_STATE2_S1001, MDIAGNOSTIC_STATE3_HY001 },
+ { MDIAGNOSTIC_STATE2_S1003, MDIAGNOSTIC_STATE3_HY003 },
+ { MDIAGNOSTIC_STATE2_S1004, MDIAGNOSTIC_STATE3_HY004 },
+ { MDIAGNOSTIC_STATE2_S1010, MDIAGNOSTIC_STATE3_HY007 },
+ { MDIAGNOSTIC_STATE2_S1008, MDIAGNOSTIC_STATE3_HY008 },
+ { MDIAGNOSTIC_STATE2_S1009, MDIAGNOSTIC_STATE3_HY009 },
+ { MDIAGNOSTIC_STATE2_S1010, MDIAGNOSTIC_STATE3_HY010 },
+ { MDIAGNOSTIC_STATE2_S1011, MDIAGNOSTIC_STATE3_HY011 },
+ { MDIAGNOSTIC_STATE2_S1012, MDIAGNOSTIC_STATE3_HY012 },
+ { MDIAGNOSTIC_STATE2_S1013, MDIAGNOSTIC_STATE3_HY013 },
+ { MDIAGNOSTIC_STATE2_S1014, MDIAGNOSTIC_STATE3_HY014 },
+ { MDIAGNOSTIC_STATE2_S1015, MDIAGNOSTIC_STATE3_HY015 },
+ { MDIAGNOSTIC_STATE2_S1016, MDIAGNOSTIC_STATE3_HY016 },
+ { MDIAGNOSTIC_STATE2_S1017, MDIAGNOSTIC_STATE3_HY017 },
+ { MDIAGNOSTIC_STATE2_70100, MDIAGNOSTIC_STATE3_HY018 },
+ { MDIAGNOSTIC_STATE2_22003, MDIAGNOSTIC_STATE3_HY019 },
+ { MDIAGNOSTIC_STATE2_S1020, MDIAGNOSTIC_STATE3_HY020 },
+ { MDIAGNOSTIC_STATE2_S1021, MDIAGNOSTIC_STATE3_HY021 },
+ { MDIAGNOSTIC_STATE2_S1009, MDIAGNOSTIC_STATE3_HY024 },
+ { MDIAGNOSTIC_STATE2_S1090, MDIAGNOSTIC_STATE3_HY090 },
+ { MDIAGNOSTIC_STATE2_S1091, MDIAGNOSTIC_STATE3_HY091 },
+ { MDIAGNOSTIC_STATE2_S1009, MDIAGNOSTIC_STATE3_HY092 },
+ { MDIAGNOSTIC_STATE2_S1092, MDIAGNOSTIC_STATE3_HY092 },
+ { MDIAGNOSTIC_STATE2_S1095, MDIAGNOSTIC_STATE3_HY095 },
+ { MDIAGNOSTIC_STATE2_S1096, MDIAGNOSTIC_STATE3_HY096 },
+ { MDIAGNOSTIC_STATE2_S1097, MDIAGNOSTIC_STATE3_HY097 },
+ { MDIAGNOSTIC_STATE2_S1098, MDIAGNOSTIC_STATE3_HY098 },
+ { MDIAGNOSTIC_STATE2_S1099, MDIAGNOSTIC_STATE3_HY099 },
+ { MDIAGNOSTIC_STATE2_S1100, MDIAGNOSTIC_STATE3_HY100 },
+ { MDIAGNOSTIC_STATE2_S1101, MDIAGNOSTIC_STATE3_HY101 },
+ { MDIAGNOSTIC_STATE2_S1103, MDIAGNOSTIC_STATE3_HY103 },
+ { MDIAGNOSTIC_STATE2_S1104, MDIAGNOSTIC_STATE3_HY104 },
+ { MDIAGNOSTIC_STATE2_S1105, MDIAGNOSTIC_STATE3_HY105 },
+ { MDIAGNOSTIC_STATE2_S1106, MDIAGNOSTIC_STATE3_HY106 },
+ { MDIAGNOSTIC_STATE2_S1107, MDIAGNOSTIC_STATE3_HY107 },
+ { MDIAGNOSTIC_STATE2_S1109, MDIAGNOSTIC_STATE3_HY109 },
+ { MDIAGNOSTIC_STATE2_S1110, MDIAGNOSTIC_STATE3_HY110 },
+ { MDIAGNOSTIC_STATE2_S1111, MDIAGNOSTIC_STATE3_HY111 },
+ { MDIAGNOSTIC_STATE2_S1C00, MDIAGNOSTIC_STATE3_HYC00 },
+ { MDIAGNOSTIC_STATE2_S1T00, MDIAGNOSTIC_STATE3_HYT00 },
+ { MDIAGNOSTIC_STATE2_S1T01, MDIAGNOSTIC_STATE3_HYT01 },
+ { MDIAGNOSTIC_STATE2_IM001, MDIAGNOSTIC_STATE3_IM001 },
+ { MDIAGNOSTIC_STATE2_IM002, MDIAGNOSTIC_STATE3_IM002 },
+ { MDIAGNOSTIC_STATE2_IM003, MDIAGNOSTIC_STATE3_IM003 },
+ { MDIAGNOSTIC_STATE2_IM004, MDIAGNOSTIC_STATE3_IM004 },
+ { MDIAGNOSTIC_STATE2_IM005, MDIAGNOSTIC_STATE3_IM005 },
+ { MDIAGNOSTIC_STATE2_IM006, MDIAGNOSTIC_STATE3_IM006 },
+ { MDIAGNOSTIC_STATE2_IM007, MDIAGNOSTIC_STATE3_IM007 },
+ { MDIAGNOSTIC_STATE2_IM008, MDIAGNOSTIC_STATE3_IM008 },
+ { MDIAGNOSTIC_STATE2_IM009, MDIAGNOSTIC_STATE3_IM009 },
+ { MDIAGNOSTIC_STATE2_IM010, MDIAGNOSTIC_STATE3_IM010 },
+ { MDIAGNOSTIC_STATE2_IM011, MDIAGNOSTIC_STATE3_IM011 },
+ { MDIAGNOSTIC_STATE2_IM012, MDIAGNOSTIC_STATE3_IM012 },
+ { MDIAGNOSTIC_STATE2_IM013, MDIAGNOSTIC_STATE3_IM013 },
+ { MDIAGNOSTIC_STATE2_IM014, MDIAGNOSTIC_STATE3_IM014 },
+ { MDIAGNOSTIC_STATE3_IM015, MDIAGNOSTIC_STATE3_IM015 }
};
- 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 is mapped to ODBC 3.x SQLSTATE 07009 if the
underlying function is SQLBindCol, SQLColAttribute, SQLExtendedFetch, SQLFetch,
SQLFetchScroll, or SQLGetData.
- S1003 HY003
- S1004 HY004
- S1008 HY008
- S1009 HY009 Returned for an invalid use of a null pointer.
- S1009 HY024 Returned for an invalid attribute value.
- S1009 HY092 Returned for updating or deleting data by a call to SQLSetPos, or adding,
updating, or deleting data by a call to SQLBulkOperations, when the concurrency is
read-only.
- S1010 HY007
- HY010 SQLSTATE S1010 is mapped to SQLSTATE HY007 when SQLDescribeCol is called prior
to calling SQLPrepare, SQLExecDirect, or a catalog function for the StatementHandle.
Otherwise, SQLSTATE S1010 is mapped to SQLSTATE HY010.
- S1011 HY011
- S1012 HY012
- S1090 HY090
- S1091 HY091
- S1092 HY092
- S1093 07009 ODBC 3.x SQLSTATE 07009 is mapped to ODBC 2.x SQLSTATE S1093 if the
underlying function is SQLBindParameter or 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
-
/*!
\brief Allocates a new diagnostics structure.
@@ -958,7 +910,7 @@
\sa MYODBCDiaAppend2
*/
-SQLRETURN MDiagnostic::doAppend( DIA nState, SQLINTEGER nNative, const QString
&stringMessage )
+SQLRETURN MDiagnostic::doAppend( STATE nState, SQLINTEGER nNative, const QString
&stringMessage )
{
MYODBCDbgEnter();
@@ -988,7 +940,7 @@
\sa MYODBCDiaAppend
*/
-SQLRETURN MDiagnostic::doAppend( DIA nState, SQLINTEGER nNative, const QString
&stringMessage, SQLINTEGER nRowNumber, SQLINTEGER nColumnNumber )
+SQLRETURN MDiagnostic::doAppend( STATE nState, SQLINTEGER nNative, const QString
&stringMessage, SQLINTEGER nRowNumber, SQLINTEGER nColumnNumber )
{
MYODBCDbgEnter();
Modified: trunk/SDK/MYSQLPlus/Library/MDiagnostic.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MDiagnostic.h 2006-10-06 18:52:43 UTC (rev 577)
+++ trunk/SDK/MYSQLPlus/Library/MDiagnostic.h 2006-10-06 22:02:40 UTC (rev 578)
@@ -57,7 +57,23 @@
friend QTextStream &operator<<( QTextStream &stream, const MDiagnostic
&rval );
public:
+
/*!
+ \brief The applications ODBC version.
+
+ This is the ODBC version of the application. We use this to determine the
+ SQL State mappings.
+
+ The application actually tells the MEnvironment so we rely upon the
MEnvironment
+ to propogate the change to all MDiagnostics.
+ */
+ enum ODBC_VERSION_APP
+ {
+ ODBC_VERSION_2 = 0,
+ ODBC_VERSION_3
+ };
+
+ /*!
\brief Diagnostic states.
These roughly match the ODBC v3 SQL States. These differ from the ODBC v3
SQL States
@@ -72,123 +88,126 @@
*/
enum STATE
{
- STATE_01000=0,/* General warning
*/
- STATE_01001, /* Cursor operation conflict
*/
- STATE_01002, /* Disconnect error
*/
- STATE_01003, /* NULL value eliminated in set function
*/
- STATE_01004, /* String data, right-truncated
*/
- STATE_01006, /* Privilege not revoked
*/
- STATE_01007, /* Privilege not granted
*/
- STATE_01S00, /* Invalid connection string attribute
*/
- STATE_01S01, /* Error in row
*/
- STATE_01S02, /* Option value changed
*/
- STATE_01S06, /* Attempt to fetch before the result set returned the first rowset
*/
- STATE_01S07, /* Fractional truncation
*/
- STATE_01S08, /* Error saving File DSN
*/
- STATE_01S09, /* Invalid keyword
*/
- STATE_07001, /* Wrong number of parameters
*/
- STATE_07002, /* COUNT field incorrect
*/
- STATE_07005, /* Prepared statement not a cursor-specification
*/
- STATE_07006, /* Restricted data type attribute violation
*/
- STATE_07009, /* Invalid descriptor index
*/
- STATE_07S01, /* Invalid use of default parameter
*/
- STATE_08001, /* Client unable to establish connection
*/
- STATE_08002, /* Connection name in use
*/
- STATE_08003, /* Connection does not exist
*/
- STATE_08004, /* Server rejected the connection
*/
- STATE_08007, /* Connection failure during transaction
*/
- STATE_08S01, /* Communication link failure
*/
- STATE_21S01, /* Insert value list does not match column list
*/
- STATE_21S02, /* Degree of derived table does not match column list
*/
- STATE_22001, /* String data, right-truncated
*/
- STATE_22002, /* Indicator variable required but not supplied
*/
- STATE_22003, /* Numeric value out of range
*/
- STATE_22007, /* Invalid datetime format
*/
- STATE_22008, /* Datetime field overflow
*/
- STATE_22012, /* Division by zero
*/
- STATE_22015, /* Interval field overflow
*/
- STATE_22018, /* Invalid character value for cast specification
*/
- STATE_22019, /* Invalid escape character
*/
- STATE_22025, /* Invalid escape sequence
*/
- STATE_22026, /* String data, length mismatch
*/
- STATE_23000, /* Integrity constraint violation
*/
- STATE_24000, /* Invalid cursor state
*/
- STATE_25000, /* Invalid transaction state
*/
- STATE_25S01, /* Transaction state
*/
- STATE_25S02, /* Transaction is still active
*/
- STATE_25S03, /* Transaction is rolled back
*/
- STATE_28000, /* Invalid authorization specification
*/
- STATE_34000, /* Invalid cursor name
*/
- STATE_3C000, /* Duplicate cursor name
*/
- STATE_3D000, /* Invalid catalog name
*/
- STATE_3F000, /* Invalid schema name
*/
- STATE_40001, /* Serialization failure
*/
- STATE_40002, /* Integrity constraint violation
*/
- STATE_40003, /* Statement completion unknown
*/
- STATE_42000, /* Syntax error or access violation
*/
- STATE_42S01, /* Base table or view already exists
*/
- STATE_42S02, /* Base table or view not found
*/
- STATE_42S11, /* Index already exists
*/
- STATE_42S12, /* Index not found
*/
- STATE_42S21, /* Column already exists
*/
- STATE_42S22, /* Column not found
*/
- STATE_44000, /* WITH CHECK OPTION violation
*/
- STATE_HY000, /* General error
*/
- STATE_HY001, /* Memory allocation error
*/
- STATE_HY003, /* Invalid application buffer type
*/
- STATE_HY004, /* Invalid SQL data type
*/
- STATE_HY007, /* Associated statement is not prepared
*/
- STATE_HY008, /* Operation canceled
*/
- STATE_HY009, /* Invalid use of null pointer
*/
- STATE_HY010, /* Function sequence error
*/
- STATE_HY011, /* Attribute cannot be set now
*/
- STATE_HY012, /* Invalid transaction operation code
*/
- STATE_HY013, /* Memory management error
*/
- STATE_HY014, /* Limit on the number of handles exceeded
*/
- STATE_HY015, /* No cursor name available
*/
- STATE_HY016, /* Cannot modify an implementation row descriptor
*/
- STATE_HY017, /* Invalid use of an automatically allocated descriptor handle
*/
- STATE_HY018, /* Server declined cancel request
*/
- STATE_HY019, /* Non-character and non-binary data sent in pieces
*/
- STATE_HY020, /* Attempt to concatenate a null value
*/
- STATE_HY021, /* Inconsistent descriptor information
*/
- STATE_HY024, /* Invalid attribute value
*/
- STATE_HY090, /* Invalid string or buffer length
*/
- STATE_HY091, /* Invalid descriptor field identifier
*/
- STATE_HY092, /* Invalid attribute/option identifier
*/
- STATE_HY095, /* Function type out of range
*/
- STATE_HY096, /* Invalid information type
*/
- STATE_HY097, /* Column type out of range
*/
- STATE_HY098, /* Scope type out of range
*/
- STATE_HY099, /* Nullable type out of range
*/
- STATE_HY100, /* Uniqueness option type out of range
*/
- STATE_HY101, /* Accuracy option type out of range
*/
- STATE_HY103, /* Invalid retrieval code
*/
- STATE_HY104, /* Invalid precision or scale value
*/
- STATE_HY105, /* Invalid parameter type
*/
- STATE_HY106, /* Fetch type out of range
*/
- STATE_HY107, /* Row value out of range
*/
- STATE_HY109, /* Invalid cursor position
*/
- STATE_HY110, /* Invalid driver completion
*/
- STATE_HY111, /* Invalid bookmark value
*/
- STATE_HYC00, /* Optional feature not implemented
*/
- STATE_HYT00, /* Timeout expired
*/
- STATE_HYT01, /* Connection timeout expired
*/
- STATE_IM001, /* Driver does not support this function
*/
- STATE_IM002, /* Data source name not found and no default driver specified
*/
- STATE_IM003, /* Specified driver could not be loaded
*/
- STATE_IM004, /* Driver's SQLAllocHandle on SQL_HANDLE_ENV failed
*/
- STATE_IM005, /* Driver's SQLAllocHandle on SQL_HANDLE_DBC failed
*/
- STATE_IM006, /* Driver's SQLSetConnectAttr failed
*/
- STATE_IM007, /* No data source or driver specified; dialog prohibited
*/
- STATE_IM008, /* Dialog failed
*/
- STATE_IM009, /* Unable to load translation DLL
*/
- STATE_IM010, /* Data source name too long
*/
- STATE_IM011, /* Driver name too long
*/
- STATE_IM012, /* DRIVER keyword syntax error
*/
- STATE_IM013, /* Trace file error
*/
- STATE_IM014, /* Invalid name of File DSN
*/
- STATE_IM015, /* Corrupt file data source
*/
+ STATE_01000=0,/*! General warning
*/
+ STATE_01001A, /*! Cursor operation conflict || No rows update or deleted (01S03)
*/
+ STATE_01001B, /*! Cursor operation conflict || More than one row updated or
deleted (01S04) */
+ STATE_01002, /*! Disconnect error
*/
+ STATE_01003, /*! NULL value eliminated in set function
*/
+ STATE_01004, /*! String data, right-truncated
*/
+ STATE_01006, /*! Privilege not revoked
*/
+ STATE_01007, /*! Privilege not granted
*/
+ STATE_01S00, /*! Invalid connection string attribute
*/
+ STATE_01S01, /*! Error in row
*/
+ STATE_01S02, /*! Option value changed
*/
+ STATE_01S06, /*! Attempt to fetch before the result set returned the first
rowset */
+ STATE_01S07, /*! Fractional truncation
*/
+ STATE_01S08, /*! Error saving File DSN
*/
+ STATE_01S09, /*! Invalid keyword
*/
+ STATE_07001, /*! Wrong number of parameters
*/
+ STATE_07002, /*! COUNT field incorrect
*/
+ STATE_07005, /*! Prepared statement not a cursor-specification
*/
+ STATE_07006, /*! Restricted data type attribute violation
*/
+ STATE_07009A, /*! Invalid descriptor index || Invalid column number (S1002)
*/
+ STATE_07009B, /*! Invalid descriptor index || Invalid parameter number (S1093)
*/
+ STATE_07S01, /*! Invalid use of default parameter
*/
+ STATE_08001, /*! Client unable to establish connection
*/
+ STATE_08002, /*! Connection name in use
*/
+ STATE_08003, /*! Connection does not exist
*/
+ STATE_08004, /*! Server rejected the connection
*/
+ STATE_08007, /*! Connection failure during transaction
*/
+ STATE_08S01, /*! Communication link failure
*/
+ STATE_21S01, /*! Insert value list does not match column list
*/
+ STATE_21S02, /*! Degree of derived table does not match column list
*/
+ STATE_22001, /*! String data, right-truncated
*/
+ STATE_22002, /*! Indicator variable required but not supplied
*/
+ STATE_22003, /*! Numeric value out of range
*/
+ STATE_22007, /*! Invalid datetime format
*/
+ STATE_22008, /*! Datetime field overflow
*/
+ STATE_22012, /*! Division by zero
*/
+ STATE_22015, /*! Interval field overflow
*/
+ STATE_22018, /*! Invalid character value for cast specification
*/
+ STATE_22019, /*! Invalid escape character
*/
+ STATE_22025, /*! Invalid escape sequence
*/
+ STATE_22026, /*! String data, length mismatch
*/
+ STATE_23000, /*! Integrity constraint violation
*/
+ STATE_24000, /*! Invalid cursor state
*/
+ STATE_25000, /*! Invalid transaction state
*/
+ STATE_25S01, /*! Transaction state
*/
+ STATE_25S02, /*! Transaction is still active
*/
+ STATE_25S03, /*! Transaction is rolled back
*/
+ STATE_28000, /*! Invalid authorization specification
*/
+ STATE_34000, /*! Invalid cursor name
*/
+ STATE_3C000, /*! Duplicate cursor name
*/
+ STATE_3D000, /*! Invalid catalog name
*/
+ STATE_3F000, /*! Invalid schema name
*/
+ STATE_40001, /*! Serialization failure
*/
+ STATE_40002, /*! Integrity constraint violation
*/
+ STATE_40003, /*! Statement completion unknown
*/
+ STATE_42000, /*! Syntax error or access violation
*/
+ STATE_42S01, /*! Base table or view already exists
*/
+ STATE_42S02, /*! Base table or view not found
*/
+ STATE_42S11, /*! Index already exists
*/
+ STATE_42S12, /*! Index not found
*/
+ STATE_42S21, /*! Column already exists
*/
+ STATE_42S22, /*! Column not found
*/
+ STATE_44000, /*! WITH CHECK OPTION violation
*/
+ STATE_HY000, /*! General error
*/
+ STATE_HY001, /*! Memory allocation error
*/
+ STATE_HY003, /*! Invalid application buffer type
*/
+ STATE_HY004, /*! Invalid SQL data type
*/
+ STATE_HY007, /*! Associated statement is not prepared
*/
+ STATE_HY008, /*! Operation canceled
*/
+ STATE_HY009, /*! Invalid use of null pointer
*/
+ STATE_HY010, /*! Function sequence error
*/
+ STATE_HY011, /*! Attribute cannot be set now
*/
+ STATE_HY012, /*! Invalid transaction operation code
*/
+ STATE_HY013, /*! Memory management error
*/
+ STATE_HY014, /*! Limit on the number of handles exceeded
*/
+ STATE_HY015, /*! No cursor name available
*/
+ STATE_HY016, /*! Cannot modify an implementation row descriptor
*/
+ STATE_HY017, /*! Invalid use of an automatically allocated descriptor handle
*/
+ STATE_HY018, /*! Server declined cancel request
*/
+ STATE_HY019, /*! Non-character and non-binary data sent in pieces
*/
+ STATE_HY020, /*! Attempt to concatenate a null value
*/
+ STATE_HY021, /*! Inconsistent descriptor information
*/
+ STATE_HY024, /*! Invalid attribute value
*/
+ STATE_HY090, /*! Invalid string or buffer length
*/
+ STATE_HY091, /*! Invalid descriptor field identifier
*/
+ STATE_HY092A, /*! Invalid attribute/option identifier || Invalid argument value
(S1009) */
+ STATE_HY092B, /*! Invalid attribute/option identifier || Option type out of range
(S1092) */
+ STATE_HY095, /*! Function type out of range
*/
+ STATE_HY096, /*! Invalid information type
*/
+ STATE_HY097, /*! Column type out of range
*/
+ STATE_HY098, /*! Scope type out of range
*/
+ STATE_HY099, /*! Nullable type out of range
*/
+ STATE_HY100, /*! Uniqueness option type out of range
*/
+ STATE_HY101, /*! Accuracy option type out of range
*/
+ STATE_HY103, /*! Invalid retrieval code
*/
+ STATE_HY104, /*! Invalid precision or scale value
*/
+ STATE_HY105, /*! Invalid parameter type
*/
+ STATE_HY106, /*! Fetch type out of range
*/
+ STATE_HY107, /*! Row value out of range
*/
+ STATE_HY109, /*! Invalid cursor position
*/
+ STATE_HY110, /*! Invalid driver completion
*/
+ STATE_HY111, /*! Invalid bookmark value
*/
+ STATE_HYC00, /*! Optional feature not implemented
*/
+ STATE_HYT00, /*! Timeout expired
*/
+ STATE_HYT01, /*! Connection timeout expired
*/
+ STATE_IM001, /*! Driver does not support this function
*/
+ STATE_IM002, /*! Data source name not found and no default driver specified
*/
+ STATE_IM003, /*! Specified driver could not be loaded
*/
+ STATE_IM004, /*! Driver's SQLAllocHandle on SQL_HANDLE_ENV failed
*/
+ STATE_IM005, /*! Driver's SQLAllocHandle on SQL_HANDLE_DBC failed
*/
+ STATE_IM006, /*! Driver's SQLSetConnectAttr failed
*/
+ STATE_IM007, /*! No data source or driver specified; dialog prohibited
*/
+ STATE_IM008, /*! Dialog failed
*/
+ STATE_IM009, /*! Unable to load translation DLL
*/
+ STATE_IM010, /*! Data source name too long
*/
+ STATE_IM011, /*! Driver name too long
*/
+ STATE_IM012, /*! DRIVER keyword syntax error
*/
+ STATE_IM013, /*! Trace file error
*/
+ STATE_IM014, /*! Invalid name of File DSN
*/
+ STATE_IM015, /*! Corrupt file data source
*/
STATE_MAX
};
| Thread |
|---|
| • Connector/ODBC 5 commit: r578 - trunk/SDK/MYSQLPlus/Library | pharvey | 6 Oct |