· | AFX_SQL_ERROR_API_CONFORMANCE | 对CDatabase::OpenEx或CDatabase::Open调用的驱动程序不符合要求的ODBC API一致级别1(SQL_OAC_ LEVEL1)。 |
· | AFX_SQL_ERROR_CONNECT_FAIL | 到数据源的连接失败。向记录集构造程序传递一个NULL CDatabase指针,接下来试图创建基于GetDefaultConnect的连接失败。 |
· | AFX_SQL_ERROR_DATA_TRUNCATED | 需要的数据比提供使用的存储空间要多。有关对CString或CByteArray数据类型增加提供了数据存储的信息,请参阅RFX_Text的mMaxLength参数和“宏和全局量”下的RFX_Binary。 |
· | AFX_SQL_ERROR_DYNASET_NOT_SUPPORTED | 询问动态集的CRecordset::Open调用失败。驱动程序不支持动态集。 |
· | AFX_SQL_ERROR_EMPTY_COLUMN_LIST | 试图打开一个表(或者所给内容不能标识为过程调用或SELECT语句),但DoFieldExchange覆盖中记录字段交换(RFX)函数调用没有标识列。 |
· | AFX_SQL_ERROR_FIELD_SCHEMA_MISMATCH | DoFieldExchange覆盖中的RFX函数类型与记录集中的列数据类型不匹配。 |
· | AFX_SQL_ERROR_ILLEGAL_MODE | 在调用CRecordset::Update之前没调用CRecordset::AddNew或CRecordset::Edit。 |
· | AFX_SQL_ERROR_LOCK_MODE_NOT_SUPPORTED | 对更新封锁记录的要求由于ODBC驱动程序不支持封锁而失败。 |
· | AFX_SQL_ERROR_MULTIPLE_ROWS_AFFECTED | 对没有唯一码的表调用CRecordset::Update或Delete,并改变了多条记录。 |
· | AFX_SQL_ERROR_NO_CURRENT_RECORD | 试图编辑或删除一条以前已删除的记录。删除之后必须滚动到一条新的当前记录。 |
· | AFX_SQL_ERROR_POSITIONED_UPDATES | 对动态集的要求由于ODBC驱动程序不支持定位更新而失败。 |
· | AFX_SQL_ERROR_NO_ROWS_AFFECTED | 调用了CRecordset::Update或Delete,但操作开始时找不到记录。 |
· | AFX_SQL_ERROR_ODBC_LOAD_FAILED | 试图装入ODBC.DLL失败;Windows找不到或不能装入这个DLL。这个错误是致命的。 |
· | AFX_SQL_ERROR_ODBC_V2_REQUIRED | 对动态集的请求由于需要2级适配ODBC驱动程序而失败。 |
· | AFX_SQL_ERROR_RECORDSET_FORWARD_ONLY | 试图滚动失败,因为数据源不支持向后滚动。 |
· | AFX_SQL_ERROR_SNAPSHOT_NOT_SUPPORTED | 请求快照的CRecordset::Open调用失败。驱动程序不支持快照(只有在ODBC游标库ODBCCURS.DLL没有时出现这个错误)。 |
· | AFX_SQL_ERROR_SQL_CONFORMANCE | 用于CRecordset::OpenEx或CRecordset::Open调用的驱动程序不符合需要的“最小”ODBC SQL一致级别(SQL_OSC_MININUM)。 |
· | AFX_SQL_ERROR_SQL_NO_TOTAL | ODBC驱动程序不能指定Clong Binary数据值总大小。由于全局内存块不能预分配,操作很可能失败。 |
· | AFX_SQL_ERROR_RECORDSET_READONLY | 试图更新只读记录集或者数据源是只读的。对记录集或它对应的CDatabase对象不能执行任何更新操作。 |
· | SQL_ERROR | 函数失败。由::SQLError返回的错误消息存放在m_strError数据成员中。 |
· | SQL_INVALID_HANDLE | 由于无效环境句柄、连接句柄或语句句柄造成函数失败。这表示有程序错误。::SQLError没有有效的附加信息。 |
SQL前缀代码由ODBC定义。AFX前缀代码在MFC\\INCLUDE中的AFXDB.H内定义。