SQLite 是一个开源的嵌入式关系数据库,广泛应用于各种软件项目中。在执行数据库操作时,SQLite 会返回一个结果代码,以表示操作的成功或失败。这些结果代码是整数,每个代码都对应一个特定的含义。
以下是 SQLite 返回的结果代码及其含义的详细列表:
SQLITE_OK (0):操作成功。
SQLITE_ERROR (1):发生一般错误。
SQLITE_INTERNAL (2):SQLite 内部逻辑错误。
SQLITE_PERM (3):访问被拒绝。
SQLITE_ABORT (4):回调函数请求取消操作。
SQLITE_BUSY (5):数据库文件被锁定。
SQLITE_LOCKED (6):数据库中的表被锁定。
SQLITE_NOMEM (7):malloc() 函数调用失败。
SQLITE_READONLY (8):试图写入只读数据库。
SQLITE_INTERRUPT (9):操作被 sqlite3_interrupt() 函数中断。
SQLITE_IOERR (10):发生磁盘 I/O 错误。
SQLITE_CORRUPT (11):数据库磁盘映像格式错误。
SQLITE_NOTFOUND (12):在 sqlite3_file_control() 中出现未知操作数。
SQLITE_FULL (13):因数据库满而导致插入失败。
SQLITE_CANTOPEN (14):无法打开数据库文件。
SQLITE_PROTOCOL (15):数据库锁定协议错误。
SQLITE_EMPTY (16):数据库为空(仅内部使用)。
SQLITE_SCHEMA (17):数据库模式发生改变。
SQLITE_TOOBIG (18):字符串或 BLOB 超过大小限制。
SQLITE_CONSTRAINT (19):由于约束违例而取消。
SQLITE_MISMATCH (20):数据类型不匹配。
SQLITE_MISUSE (21):库使用不正确。
SQLITE_NOLFS (22):使用了主机不支持的操作系统特性。
SQLITE_AUTH (23):授权失败。
SQLITE_FORMAT (24):未使用。
SQLITE_RANGE (25):传递给 sqlite3_bind() 的第二个参数超出范围。
SQLITE_NOTADB (26):打开的文件不是数据库文件。
SQLITE_NOTICE (27):来自 sqlite3_log() 的通知。
SQLITE_WARNING (28):来自 sqlite3_log() 的警告。
SQLITE_ROW (100):sqlite3_step() 已准备好另一行。
SQLITE_DONE (101):sqlite3_step() 已完成执行。