CDBException::m_nRetCode
Enthält einen ODBC-Fehlercode des Typs RETCODE von einer Funktion zurückgegebenen ODBC-Anwendungsprogrammierschnittstelle (APIs).
Hinweise
Dieser Typ enthält die SQL-vorangestellten Code, die von ODBC definiert werden und AFX_SQL-prefixedcodes, die durch die Datenbankklassen definiert werden. Für CDBException enthält dieser Member einen der folgenden Werte:
AFX_SQL_ERROR_API_CONFORMANCE der Treiber für einen CDatabase::OpenEx oder CDatabase::Open Aufruf entspricht nicht benötigte ODBC API-Übereinstimmungsebene 1 an (SQL_OAC_LEVEL1).
AFX_SQL_ERROR_CONNECT_FAIL Verbindung zur Datenquelle beibehalten. Sie haben einen Zeiger NULLCDatabase zu dem Recordsetkonstruktor und der folgenden Versuch, eine Verbindung auf Grundlage GetDefaultConnect zu erstellen ist fehlgeschlagen.
AFX_SQL_ERROR_DATA_TRUNCATED benötigen Sie mehr Daten, als Sie Speicher für bereitgestellt haben. Informationen zum Erhöhen der bereitgestellten Datenspeicherung für CString oder CByteArray Datentypen, finden Sie im nMaxLength-Argument für RFX_Text und RFX_Binary unter "Makros und globalen Werten."
Aufruf AFX_SQL_ERROR_DYNASET_NOT_SUPPORTED A zu CRecordset::Open, das ein Dynaset anfordert, ist fehlgeschlagen. Dynasets werden nicht vom Treiber unterstützt.
AFX_SQL_ERROR_EMPTY_COLUMN_LIST, das Sie versucht haben, eine Tabelle zu öffnen (oder, was Sie haben, nicht als Prozeduraufruf oder SELECT-Anweisung identifiziert werden können), es gibt jedoch keine Spalten, die identifiziert werden in Funktionsaufrufen für den Datensatzfeldaustausch (RFX) in der DoFieldExchange Überschreibung.
AFX_SQL_ERROR_FIELD_SCHEMA_MISMATCH der Typ einer RFX-Funktion in der DoFieldExchange Überschreibung ist nicht mit dem Spaltendatentyp das Recordset kompatibel.
AFX_SQL_ERROR_ILLEGAL_MODE erhalten Sie CRecordset::Update auf, ohne CRecordset::AddNew oder CRecordset::Edit zuvor aufzurufen.
AFX_SQL_ERROR_LOCK_MODE_NOT_SUPPORTED die Anforderung, Datensätze zur Aktualisierung sperren konnte nicht erfüllt werden, da der ODBC-Treiber Sperre nicht unterstützt.
AFX_SQL_ERROR_MULTIPLE_ROWS_AFFECTED erhalten Sie CRecordset::Update oder Löschen für eine Tabelle ohne eindeutigen Schlüssel und geänderte mehrere Datensätze auf.
AFX_SQL_ERROR_NO_CURRENT_RECORD, das Sie versucht haben, einen zuvor gelöschten Datensatz bearbeiten oder löschen. Sie müssen zu einem neuen aktuellen Datensatz nach einem Löschen wechseln.
AFX_SQL_ERROR_NO_POSITIONED_UPDATES das Anforderungen für ein Dynaset konnte nicht erfüllt werden, da der ODBC-Treiber nicht positionierbare Aktualisierungen unterstützt.
AFX_SQL_ERROR_NO_ROWS_AFFECTED erhalten Sie CRecordset::Update oder Löschen auf, aber, als Vorgang gestartet wurde, kann der Datensatz nicht mehr gefunden werden.
AFX_SQL_ERROR_ODBC_LOAD_FAILED versucht, das ODBC.DLL zu laden ist fehlgeschlagen, Windows konnte nicht gefunden oder konnte diese DLL nicht laden. Dieser Fehler ist schwer wiegend.
AFX_SQL_ERROR_ODBC_V2_REQUIRED das Anforderungen für ein Dynaset konnte nicht erfüllt werden, da ein kompatibler ODBC-Treiber der Ebene 2 erforderlich ist.
AFX_SQL_ERROR_RECORDSET_FORWARD_ONLY versucht Bildlauf konnte nicht, da die Datenquelle Rückwärtsscrollen nicht unterstützt.
Aufruf AFX_SQL_ERROR_SNAPSHOT_NOT_SUPPORTED A zu CRecordset::Open, das eine Momentaufnahme anfordert, ist fehlgeschlagen. Momentaufnahmen werden nicht vom Treiber unterstützt. (Dies sollte nur auftreten, wenn die ODBC-Cursorbibliothek - ODBCCURS.DLL - nicht vorhanden ist).
AFX_SQL_ERROR_SQL_CONFORMANCE der Treiber für einen CDatabase::OpenEx oder CDatabase::Open Aufruf stimmt nicht mit der die erforderliche ODBC SQL-Übereinstimmung an, die vom "Minimum" glätten (SQL_OSC_MINIMUM).
AFX_SQL_ERROR_SQL_NO_TOTAL der ODBC-Treiber war nicht möglich, die Gesamtgröße eines CLongBinary Datenwerts anzugeben. Der Vorgang ist wahrscheinlich aus, da ein globaler Speicherblock nicht zugeordnet werden kann.
AFX_SQL_ERROR_RECORDSET_READONLY, das Sie versucht haben, ein schreibgeschütztes Recordset zu aktualisieren, oder die Datenquelle ist schreibgeschützt. Keine Aktualisierungsvorgänge können ausgeführt werden mit dem Recordset oder dem CDatabase-Objekt, die es zugeordnet ist.
SQL_ERROR-Funktion verlassen. Die Fehlermeldung, die von der ODBC-Funktion SQLError zurückgegeben wird, wird im m_strError Datenmember gespeichert.
SQL_INVALID_HANDLE-Funktion ist aufgrund eines ungültigen Umgebungshandles, -Verbindungshandles oder -Anweisungshandles aus. Dies gibt einen Programmierfehler. Keine zusätzliche Informationen ist von der ODBC-Funktion SQLError verfügbar.
Die SQL-vorangestellten Codes werden von ODBC definiert. Die AFX-vorangestellten Code werden in AFXDB.H definiert, - MFC \ im INCLUDE.
Anforderungen
Header: afxdb.h