Udostępnij za pośrednictwem


CDBException::m_nRetCode

Zawiera kod błędu ODBC typu RETCODE zwrócone przez funkcję interfejsu API programowania aplikacji ODBC.

Uwagi

Ten typ obejmuje prefiksem SQL kody zdefiniowane przez ODBC i prefiksem AFX_SQL zdefiniowane przez klasy bazy danych.Dla CDBException, członek ten będzie zawierać jedną z następujących wartości:

  • AFX_SQL_ERROR_API_CONFORMANCE sterownik CDatabase::OpenEx lub CDatabase::Open wywołania nie spełnia wymaganego poziomu zgodności interfejsu API ODBC 1 (SQL_OAC_LEVEL1).

  • AFX_SQL_ERROR_CONNECT_FAIL połączenie źródła danych nie powiodło się.Zostanie przekazany NULLCDatabase na podstawie wskaźnika do konstruktora Twój zestaw rekordów i próba utworzenia połączenia GetDefaultConnect nie powiodło się.

  • AFX_SQL_ERROR_DATA_TRUNCATED żądana więcej danych niż dostarczyły magazyn.Aby uzyskać informacje dotyczące przechowywania danych przewidziano dla zwiększenia CString lub CByteArray typów danych, zobacz nMaxLength argumentu dla RFX_Text i RFX_Binary pod "Makr i Globals."

  • AFX_SQL_ERROR_DYNASET_NOT_SUPPORTED wywołania CRecordset::Open żądanie dynamiczny zestaw wyników nie powiodło się.Zestawy dynamiczne nie są obsługiwane przez sterownik.

  • AFX_SQL_ERROR_EMPTY_COLUMN_LIST próbował otworzyć tabeli (lub została nadana nie można zidentyfikować jako wywołanie procedury lub Zaznacz instrukcji), ale brak kolumn w polu rekordu wywołań funkcji programu exchange (RFX) w sieci DoFieldExchange zastąpić.

  • AFX_SQL_ERROR_FIELD_SCHEMA_MISMATCH typu w funkcji RFX na DoFieldExchange override nie jest zgodny z typem danych kolumny zestawu rekordów.

  • AFX_SQL_ERROR_ILLEGAL_MODE użytkownik o nazwie CRecordset::Update bez wywoływania wcześniej CRecordset::AddNew lub CRecordset::Edit.

  • AFX_SQL_ERROR_LOCK_MODE_NOT_SUPPORTED żądanie Zablokuj rekordy dla aktualizacji nie mogły zostać osiągnięte, ponieważ sterownik ODBC nie obsługuje blokowania.

  • AFX_SQL_ERROR_MULTIPLE_ROWS_AFFECTED użytkownik o nazwie CRecordset::Update lub usunąć dla tabeli bez klucza unikatowego i zmienić wiele rekordów.

  • AFX_SQL_ERROR_NO_CURRENT_RECORD próbował Edytuj lub usuń wcześniej usunięty rekord.Po usunięciu musi przewiń nowego rekordu bieżącego.

  • AFX_SQL_ERROR_NO_POSITIONED_UPDATES żądanie aktualizacji umieszczony na dynamiczny zestaw wyników nie mogły zostać osiągnięte, ponieważ sterownik ODBC nie obsługuje.

  • AFX_SQL_ERROR_NO_ROWS_AFFECTED użytkownik o nazwie CRecordset::Update lub usunąć, ale podczas rozpoczęcia operacji nie można odnaleźć rekordu.

  • AFX_SQL_ERROR_ODBC_LOAD_FAILED próba załadowania ODBC.Biblioteka DLL nie powiodło się; System Windows nie może odnaleźć lub nie można załadować tej biblioteki DLL.Ten błąd jest krytyczny.

  • AFX_SQL_ERROR_ODBC_V2_REQUIRED żądania dynamiczny zestaw wyników nie mogły zostać osiągnięte, ponieważ wymagana jest poziom 2 zgodny sterownik ODBC.

  • AFX_SQL_ERROR_RECORDSET_FORWARD_ONLY próba przewijania nie powiodła się, ponieważ źródło danych nie obsługuje przewijanie do tyłu.

  • AFX_SQL_ERROR_SNAPSHOT_NOT_SUPPORTED wywołania CRecordset::Open żądanie migawki nie powiodło się.Migawki nie są obsługiwane przez sterownik.(To powinno nastąpić jedynie gdy Biblioteka kursorów ODBC — ODBCCURS.Biblioteka DLL — nie jest obecny.)

  • AFX_SQL_ERROR_SQL_CONFORMANCE sterownik CDatabase::OpenEx lub CDatabase::Open wywołania nie spełnia wymaganego poziomu zgodności SQL ODBC "Minimum" (SQL_OSC_MINIMUM).

  • AFX_SQL_ERROR_SQL_NO_TOTAL sterownik ODBC nie może określić całkowity rozmiar CLongBinary wartości danych.Operacji nie można prawdopodobnie, ponieważ nie wstępnie przydzielonych bloku pamięci globalnej.

  • AFX_SQL_ERROR_RECORDSET_READONLY próby aktualizacji rekordów tylko do odczytu lub źródło danych jest tylko do odczytu.Można wykonać żadnych operacji aktualizacji z zestawu rekordów lub CDatabase obiektu jest skojarzony.

  • Wartość SQL_ERROR funkcji nie powiodło się.Komunikat o błędzie zwrócony przez funkcję ODBC SQLError jest przechowywany w m_strError elementu danych.

  • SQL_INVALID_HANDLE funkcji nie powiodło się środowiska nieprawidłowy uchwyt, dojścia połączenia lub oświadczenie.Wskazuje to na błąd programistyczny.Informacje dodatkowe, nie są dostępne z funkcji ODBC SQLError.

Kody prefiksem SQL są zdefiniowane przez ODBC.Kody prefiksem AFX są zdefiniowane w AFXDB.H w MFC\INCLUDE.

Wymagania

Nagłówek: afxdb.h

Zobacz też

Informacje

Klasa CDBException

Wykres hierarchii

Klasa CDatabase

Klasa CLongBinary

Klasa CRecordset