PageRenderTime 57ms CodeModel.GetById 24ms RepoModel.GetById 0ms app.codeStats 0ms

/src/wrappers/database/library/sqlite/externals/sqlite_error_codes.e

http://github.com/tybor/Liberty
Specman e | 1458 lines | 250 code | 39 blank | 1169 comment | 3 complexity | 6573f7d5e2bfc6be1446c7bd8f07cfb9 MD5 | raw file
Possible License(s): GPL-3.0, LGPL-2.1, GPL-2.0

Large files files are truncated, but you can click here to view the full file

  1. note
  2. description: "values of the the sqlite error code"
  3. copyright: "2007 Raphael Mack <mail@raphael-mack.de>"
  4. license: "LGPL v2 or later"
  5. date: "$Date$"
  6. revision "$Revision$"
  7. wrapper_version: "3.4.2"
  8. comments_format: "markdown"
  9. expanded class SQLITE_ERROR_CODES
  10. feature {} -- Result codes
  11. sqlite_ok: INTEGER
  12. -- SQL error or missing database
  13. external "plug_in"
  14. alias "{
  15. location: "generated"
  16. module_name: "plugin"
  17. feature_name: "SQLITE_OK"
  18. }"
  19. end
  20. sqlite_error: INTEGER
  21. -- SQL error or missing database
  22. external "plug_in"
  23. alias "{
  24. location: "generated"
  25. module_name: "plugin"
  26. feature_name: "SQLITE_ERROR"
  27. }"
  28. end
  29. sqlite_internal: INTEGER
  30. -- An internal logic error in SQLite
  31. external "plug_in"
  32. alias "{
  33. location: "generated"
  34. module_name: "plugin"
  35. feature_name: "SQLITE_INTERNAL"
  36. }"
  37. end
  38. sqlite_perm: INTEGER
  39. -- Access permission denied
  40. external "plug_in"
  41. alias "{
  42. location: "generated"
  43. module_name: "plugin"
  44. feature_name: "SQLITE_PERM"
  45. }"
  46. end
  47. sqlite_abort: INTEGER
  48. -- Callback routine requested an abort
  49. external "plug_in"
  50. alias "{
  51. location: "generated"
  52. module_name: "plugin"
  53. feature_name: "SQLITE_ABORT"
  54. }"
  55. end
  56. sqlite_busy: INTEGER
  57. -- The database file is locked
  58. external "plug_in"
  59. alias "{
  60. location: "generated"
  61. module_name: "plugin"
  62. feature_name: "SQLITE_BUSY"
  63. }"
  64. end
  65. sqlite_locked: INTEGER
  66. -- A table in the database is locked
  67. external "plug_in"
  68. alias "{
  69. location: "generated"
  70. module_name: "plugin"
  71. feature_name: "SQLITE_LOCKED"
  72. }"
  73. end
  74. sqlite_nomem: INTEGER
  75. -- A malloc() failed
  76. external "plug_in"
  77. alias "{
  78. location: "generated"
  79. module_name: "plugin"
  80. feature_name: "SQLITE_NOMEM"
  81. }"
  82. end
  83. sqlite_readonly: INTEGER
  84. -- Attempt to write a readonly database
  85. external "plug_in"
  86. alias "{
  87. location: "generated"
  88. module_name: "plugin"
  89. feature_name: "SQLITE_READONLY"
  90. }"
  91. end
  92. sqlite_interrupt: INTEGER
  93. -- Operation terminated by sqlite_interrupt()
  94. external "plug_in"
  95. alias "{
  96. location: "generated"
  97. module_name: "plugin"
  98. feature_name: "SQLITE_INTERRUPT"
  99. }"
  100. end
  101. sqlite_ioerr: INTEGER
  102. -- Some kind of disk I/O error occurred
  103. external "plug_in"
  104. alias "{
  105. location: "generated"
  106. module_name: "plugin"
  107. feature_name: "SQLITE_IOERR"
  108. }"
  109. end
  110. sqlite_corrupt: INTEGER
  111. -- The database disk image is malformed
  112. external "plug_in"
  113. alias "{
  114. location: "generated"
  115. module_name: "plugin"
  116. feature_name: "SQLITE_CORRUPT"
  117. }"
  118. end
  119. sqlite_notfound: INTEGER
  120. -- (Internal Only) Table or record not found
  121. external "plug_in"
  122. alias "{
  123. location: "generated"
  124. module_name: "plugin"
  125. feature_name: "SQLITE_NOTFOUND"
  126. }"
  127. end
  128. sqlite_full: INTEGER
  129. -- Insertion failed because database is full
  130. external "plug_in"
  131. alias "{
  132. location: "generated"
  133. module_name: "plugin"
  134. feature_name: "SQLITE_FULL"
  135. }"
  136. end
  137. sqlite_cantopen: INTEGER
  138. -- Unable to open the database file
  139. external "plug_in"
  140. alias "{
  141. location: "generated"
  142. module_name: "plugin"
  143. feature_name: "SQLITE_CANTOPEN"
  144. }"
  145. end
  146. sqlite_protocol: INTEGER
  147. -- Database lock protocol error
  148. external "plug_in"
  149. alias "{
  150. location: "generated"
  151. module_name: "plugin"
  152. feature_name: "SQLITE_PROTOCOL"
  153. }"
  154. end
  155. sqlite_empty: INTEGER
  156. -- (Internal Only) Database table is empty
  157. external "plug_in"
  158. alias "{
  159. location: "generated"
  160. module_name: "plugin"
  161. feature_name: "SQLITE_EMPTY"
  162. }"
  163. end
  164. sqlite_schema: INTEGER
  165. -- The database schema changed
  166. external "plug_in"
  167. alias "{
  168. location: "generated"
  169. module_name: "plugin"
  170. feature_name: "SQLITE_SCHEMA"
  171. }"
  172. end
  173. sqlite_toobig: INTEGER
  174. -- Too much data for one row of a table
  175. external "plug_in"
  176. alias "{
  177. location: "generated"
  178. module_name: "plugin"
  179. feature_name: "SQLITE_TOOBIG"
  180. }"
  181. end
  182. sqlite_constraint: INTEGER
  183. -- Abort due to constraint violation
  184. external "plug_in"
  185. alias "{
  186. location: "generated"
  187. module_name: "plugin"
  188. feature_name: "SQLITE_CONSTRAINT"
  189. }"
  190. end
  191. sqlite_mismatch: INTEGER
  192. -- Data type mismatch
  193. external "plug_in"
  194. alias "{
  195. location: "generated"
  196. module_name: "plugin"
  197. feature_name: "SQLITE_MISMATCH"
  198. }"
  199. end
  200. sqlite_misuse: INTEGER
  201. -- Library used incorrectly
  202. external "plug_in"
  203. alias "{
  204. location: "generated"
  205. module_name: "plugin"
  206. feature_name: "SQLITE_MISUSE"
  207. }"
  208. end
  209. sqlite_nolfs: INTEGER
  210. -- Uses OS features not supported on host
  211. external "plug_in"
  212. alias "{
  213. location: "generated"
  214. module_name: "plugin"
  215. feature_name: "SQLITE_NOLFS"
  216. }"
  217. end
  218. sqlite_auth: INTEGER
  219. -- Authorization denied
  220. external "plug_in"
  221. alias "{
  222. location: "generated"
  223. module_name: "plugin"
  224. feature_name: "SQLITE_AUTH"
  225. }"
  226. end
  227. sqlite_row: INTEGER
  228. -- sqlite_step() has another row ready
  229. external "plug_in"
  230. alias "{
  231. location: "generated"
  232. module_name: "plugin"
  233. feature_name: "SQLITE_ROW"
  234. }"
  235. end
  236. sqlite_done: INTEGER
  237. -- sqlite_step() has finished executing
  238. external "plug_in"
  239. alias "{
  240. location: "generated"
  241. module_name: "plugin"
  242. feature_name: "SQLITE_DONE"
  243. }"
  244. end
  245. error_message(code: INTEGER): STRING
  246. do
  247. if code=sqlite_ok then Result := once "Successful"
  248. elseif code=sqlite_error then Result := once "SQL error or missing database"
  249. elseif code=sqlite_internal then Result := once "An internal logic error in SQLite"
  250. elseif code=sqlite_perm then Result := once "Access permission denied"
  251. elseif code=sqlite_abort then Result := once "Callback routine requested an abort"
  252. elseif code=sqlite_busy then Result := once "The database file is locked"
  253. elseif code=sqlite_locked then Result := once "A table in the database is locked"
  254. elseif code=sqlite_nomem then Result := once "A malloc() failed"
  255. elseif code=sqlite_readonly then Result := once "Attempt to write a readonly database"
  256. elseif code=sqlite_interrupt then Result := once "Operation terminated by sqlite_interrupt()"
  257. elseif code=sqlite_ioerr then Result := once "Some kind of disk I/O error occurred"
  258. elseif code=sqlite_corrupt then Result := once "The database disk image is malformed"
  259. elseif code=sqlite_notfound then Result := once "Table or record not found"
  260. elseif code=sqlite_full then Result := once "Insertion failed because database is full"
  261. elseif code=sqlite_cantopen then Result := once "Unable to open the database file"
  262. elseif code=sqlite_protocol then Result := once "Database lock protocol error"
  263. elseif code=sqlite_empty then Result := once "Database table is empty"
  264. elseif code=sqlite_schema then Result := once "The database schema changed"
  265. elseif code=sqlite_toobig then Result := once "Too much data for one row of a table"
  266. elseif code=sqlite_constraint then Result := once "Abort due to constraint violation"
  267. elseif code=sqlite_mismatch then Result := once "Data type mismatch"
  268. elseif code=sqlite_misuse then Result := once "Library used incorrectly"
  269. elseif code=sqlite_nolfs then Result := once "Uses OS features not supported on host"
  270. elseif code=sqlite_auth then Result := once "Authorization denied"
  271. elseif code=sqlite_row then Result := once "sqlite_step() has another row ready"
  272. elseif code=sqlite_done then Result := once " sqlite3_step() has finished executing"
  273. else Result := once "unknown return code"
  274. end
  275. end
  276. -- SQLite Result Codes
  277. --
  278. -- Many of the routines in the SQLite C-language Interface
  279. -- <https://www.sqlite.org/c3ref/intro.html> return numeric result codes
  280. -- indicating either success or failure, and in the event of a failure,
  281. -- providing some idea of the cause of the failure. This document strives
  282. -- to explain what each of those numeric result codes means.
  283. --
  284. -- Result Codes versus Error Codes
  285. --
  286. -- "Error codes" are a subset of "result codes" that indicate that
  287. -- something has gone wrong. There are only a few non-error result codes:
  288. -- SQLITE_OK <https://www.sqlite.org/rescode.html#ok>, SQLITE_ROW
  289. -- <https://www.sqlite.org/rescode.html#row>, and SQLITE_DONE
  290. -- <https://www.sqlite.org/rescode.html#done>. The term "error code" means
  291. -- any result code other than these three.
  292. --
  293. -- Primary Result Codes versus Extended Result Codes
  294. -- Result codes are signed 32-bit integers. The least significant 8 bits of
  295. -- the result code define a broad category and are called the "primary
  296. -- result code". More significant bits provide more detailed information
  297. -- about the error and are called the "extended result code"
  298. --
  299. -- Note that the primary result code is always a part of the extended
  300. -- result code. Given a full 32-bit extended result code, the application
  301. -- can always find the corresponding primary result code merely by
  302. -- extracting the least significant 8 bits of the extended result code.
  303. --
  304. -- All extended result codes are also error codes. Hence the terms
  305. -- "extended result code" and "extended error code" are interchangeable.
  306. -- For historic compatibility, the C-language interfaces return primary
  307. -- result codes by default. The extended result code for the most recent
  308. -- error can be retrieved using the sqlite3_extended_errcode()
  309. -- <https://www.sqlite.org/c3ref/errcode.html> interface. The
  310. -- sqlite3_extended_result_codes()
  311. -- <https://www.sqlite.org/c3ref/extended_result_codes.html> interface can
  312. -- be used to put a database connection
  313. -- <https://www.sqlite.org/c3ref/sqlite3.html> into a mode where it returns
  314. -- the extended result codes instead of the primary result codes.
  315. -- Definitions
  316. --
  317. -- All result codes are integers. Symbolic names for all result codes are
  318. -- created using "#define" macros in the sqlite3.h header file. There are
  319. -- separate sections in the sqlite3.h header file for the result code
  320. -- definitions <https://www.sqlite.org/c3ref/c_abort.html> and the extended
  321. -- result code definitions
  322. -- <https://www.sqlite.org/c3ref/c_abort_rollback.html>.
  323. -- Primary result code symbolic names are of the form "SQLITE_XXXXXX" where
  324. -- XXXXXX is a sequence of uppercase alphabetic characters. Extended result
  325. -- code names are of the form "SQLITE_XXXXXX_YYYYYYY" where the XXXXXX part
  326. -- is the corresponding primary result code and the YYYYYYY is an extension
  327. -- that further classifies the result code.
  328. --
  329. -- The names and numeric values for existing result codes are fixed and
  330. -- unchanging. However, new result codes, and especially new extended
  331. -- result codes, might appear in future releases of SQLite.
  332. --
  333. --
  334. -- Primary Result Code List
  335. --
  336. -- The 31 result codes are defined in sqlite3.h
  337. -- <https://www.sqlite.org/c3ref/c_abort.html> and are listed in
  338. -- alphabetical order below:
  339. -- * SQLITE_ABORT <https://www.sqlite.org/rescode.html#abort> (4)
  340. -- * SQLITE_AUTH <https://www.sqlite.org/rescode.html#auth> (23)
  341. -- * SQLITE_BUSY <https://www.sqlite.org/rescode.html#busy> (5)
  342. -- * SQLITE_CANTOPEN <https://www.sqlite.org/rescode.html#cantopen> (14)
  343. -- * SQLITE_CONSTRAINT <https://www.sqlite.org/rescode.html#constraint> (19)
  344. -- * SQLITE_CORRUPT <https://www.sqlite.org/rescode.html#corrupt> (11)
  345. -- * SQLITE_DONE <https://www.sqlite.org/rescode.html#done> (101)
  346. -- * SQLITE_EMPTY <https://www.sqlite.org/rescode.html#empty> (16)
  347. -- * SQLITE_ERROR <https://www.sqlite.org/rescode.html#error> (1)
  348. -- * SQLITE_FORMAT <https://www.sqlite.org/rescode.html#format> (24)
  349. -- * SQLITE_FULL <https://www.sqlite.org/rescode.html#full> (13)
  350. --
  351. --
  352. --
  353. -- * SQLITE_INTERNAL <https://www.sqlite.org/rescode.html#internal> (2)
  354. -- * SQLITE_INTERRUPT <https://www.sqlite.org/rescode.html#interrupt> (9)
  355. -- * SQLITE_IOERR <https://www.sqlite.org/rescode.html#ioerr> (10)
  356. -- * SQLITE_LOCKED <https://www.sqlite.org/rescode.html#locked> (6)
  357. -- * SQLITE_MISMATCH <https://www.sqlite.org/rescode.html#mismatch> (20)
  358. -- * SQLITE_MISUSE <https://www.sqlite.org/rescode.html#misuse> (21)
  359. -- * SQLITE_NOLFS <https://www.sqlite.org/rescode.html#nolfs> (22)
  360. -- * SQLITE_NOMEM <https://www.sqlite.org/rescode.html#nomem> (7)
  361. -- * SQLITE_NOTADB <https://www.sqlite.org/rescode.html#notadb> (26)
  362. -- * SQLITE_NOTFOUND <https://www.sqlite.org/rescode.html#notfound> (12)
  363. -- * SQLITE_NOTICE <https://www.sqlite.org/rescode.html#notice> (27)
  364. --
  365. --
  366. --
  367. -- * SQLITE_OK <https://www.sqlite.org/rescode.html#ok> (0)
  368. -- * SQLITE_PERM <https://www.sqlite.org/rescode.html#perm> (3)
  369. -- * SQLITE_PROTOCOL <https://www.sqlite.org/rescode.html#protocol> (15)
  370. -- * SQLITE_RANGE <https://www.sqlite.org/rescode.html#range> (25)
  371. -- * SQLITE_READONLY <https://www.sqlite.org/rescode.html#readonly> (8)
  372. -- * SQLITE_ROW <https://www.sqlite.org/rescode.html#row> (100)
  373. -- * SQLITE_SCHEMA <https://www.sqlite.org/rescode.html#schema> (17)
  374. -- * SQLITE_TOOBIG <https://www.sqlite.org/rescode.html#toobig> (18)
  375. -- * SQLITE_WARNING <https://www.sqlite.org/rescode.html#warning> (28)
  376. --
  377. --
  378. -- Extended Result Code List
  379. --
  380. -- The 52 extended result codes are defined in sqlite3.h
  381. -- <https://www.sqlite.org/c3ref/c_abort_rollback.html> and are listed in
  382. -- alphabetical order below:
  383. --
  384. -- * SQLITE_ABORT_ROLLBACK
  385. -- <https://www.sqlite.org/rescode.html#abort_rollback> (516)
  386. -- * SQLITE_BUSY_RECOVERY
  387. -- <https://www.sqlite.org/rescode.html#busy_recovery> (261)
  388. -- * SQLITE_BUSY_SNAPSHOT
  389. -- <https://www.sqlite.org/rescode.html#busy_snapshot> (517)
  390. -- * SQLITE_CANTOPEN_CONVPATH
  391. -- <https://www.sqlite.org/rescode.html#cantopen_convpath> (1038)
  392. -- * SQLITE_CANTOPEN_FULLPATH
  393. -- <https://www.sqlite.org/rescode.html#cantopen_fullpath> (782)
  394. -- * SQLITE_CANTOPEN_ISDIR
  395. -- <https://www.sqlite.org/rescode.html#cantopen_isdir> (526)
  396. -- * SQLITE_CANTOPEN_NOTEMPDIR
  397. -- <https://www.sqlite.org/rescode.html#cantopen_notempdir> (270)
  398. -- * SQLITE_CONSTRAINT_CHECK
  399. -- <https://www.sqlite.org/rescode.html#constraint_check> (275)
  400. -- * SQLITE_CONSTRAINT_COMMITHOOK
  401. -- <https://www.sqlite.org/rescode.html#constraint_commithook> (531)
  402. -- * SQLITE_CONSTRAINT_FOREIGNKEY
  403. -- <https://www.sqlite.org/rescode.html#constraint_foreignkey> (787)
  404. -- * SQLITE_CONSTRAINT_FUNCTION
  405. -- <https://www.sqlite.org/rescode.html#constraint_function> (1043)
  406. -- * SQLITE_CONSTRAINT_NOTNULL
  407. -- <https://www.sqlite.org/rescode.html#constraint_notnull> (1299)
  408. -- * SQLITE_CONSTRAINT_PRIMARYKEY
  409. -- <https://www.sqlite.org/rescode.html#constraint_primarykey> (1555)
  410. -- * SQLITE_CONSTRAINT_ROWID
  411. -- <https://www.sqlite.org/rescode.html#constraint_rowid> (2579)
  412. -- * SQLITE_CONSTRAINT_TRIGGER
  413. -- <https://www.sqlite.org/rescode.html#constraint_trigger> (1811)
  414. -- * SQLITE_CONSTRAINT_UNIQUE
  415. -- <https://www.sqlite.org/rescode.html#constraint_unique> (2067)
  416. -- * SQLITE_CONSTRAINT_VTAB
  417. -- <https://www.sqlite.org/rescode.html#constraint_vtab> (2323)
  418. -- * SQLITE_CORRUPT_VTAB
  419. -- <https://www.sqlite.org/rescode.html#corrupt_vtab> (267)
  420. -- * SQLITE_IOERR_ACCESS
  421. -- <https://www.sqlite.org/rescode.html#ioerr_access> (3338)
  422. -- * SQLITE_IOERR_BLOCKED
  423. -- <https://www.sqlite.org/rescode.html#ioerr_blocked> (2826)
  424. -- * SQLITE_IOERR_CHECKRESERVEDLOCK
  425. -- <https://www.sqlite.org/rescode.html#ioerr_checkreservedlock> (3594)
  426. -- * SQLITE_IOERR_CLOSE <https://www.sqlite.org/rescode.html#ioerr_close>
  427. -- (4106)
  428. -- * SQLITE_IOERR_CONVPATH
  429. -- <https://www.sqlite.org/rescode.html#ioerr_convpath> (6666)
  430. -- * SQLITE_IOERR_DELETE
  431. -- <https://www.sqlite.org/rescode.html#ioerr_delete> (2570)
  432. -- * SQLITE_IOERR_DELETE_NOENT
  433. -- <https://www.sqlite.org/rescode.html#ioerr_delete_noent> (5898)
  434. -- * SQLITE_IOERR_DIR_CLOSE
  435. -- <https://www.sqlite.org/rescode.html#ioerr_dir_close> (4362)
  436. --
  437. --
  438. --
  439. -- * SQLITE_IOERR_DIR_FSYNC
  440. -- <https://www.sqlite.org/rescode.html#ioerr_dir_fsync> (1290)
  441. -- * SQLITE_IOERR_FSTAT <https://www.sqlite.org/rescode.html#ioerr_fstat>
  442. -- (1802)
  443. -- * SQLITE_IOERR_FSYNC <https://www.sqlite.org/rescode.html#ioerr_fsync>
  444. -- (1034)
  445. -- * SQLITE_IOERR_GETTEMPPATH
  446. -- <https://www.sqlite.org/rescode.html#ioerr_gettemppath> (6410)
  447. -- * SQLITE_IOERR_LOCK <https://www.sqlite.org/rescode.html#ioerr_lock>
  448. -- (3850)
  449. -- * SQLITE_IOERR_MMAP <https://www.sqlite.org/rescode.html#ioerr_mmap>
  450. -- (6154)
  451. -- * SQLITE_IOERR_NOMEM <https://www.sqlite.org/rescode.html#ioerr_nomem>
  452. -- (3082)
  453. -- * SQLITE_IOERR_RDLOCK
  454. -- <https://www.sqlite.org/rescode.html#ioerr_rdlock> (2314)
  455. -- * SQLITE_IOERR_READ <https://www.sqlite.org/rescode.html#ioerr_read>
  456. -- (266)
  457. -- * SQLITE_IOERR_SEEK <https://www.sqlite.org/rescode.html#ioerr_seek>
  458. -- (5642)
  459. -- * SQLITE_IOERR_SHMLOCK
  460. -- <https://www.sqlite.org/rescode.html#ioerr_shmlock> (5130)
  461. -- * SQLITE_IOERR_SHMMAP
  462. -- <https://www.sqlite.org/rescode.html#ioerr_shmmap> (5386)
  463. -- * SQLITE_IOERR_SHMOPEN
  464. -- <https://www.sqlite.org/rescode.html#ioerr_shmopen> (4618)
  465. -- * SQLITE_IOERR_SHMSIZE
  466. -- <https://www.sqlite.org/rescode.html#ioerr_shmsize> (4874)
  467. -- * SQLITE_IOERR_SHORT_READ
  468. -- <https://www.sqlite.org/rescode.html#ioerr_short_read> (522)
  469. -- * SQLITE_IOERR_TRUNCATE
  470. -- <https://www.sqlite.org/rescode.html#ioerr_truncate> (1546)
  471. -- * SQLITE_IOERR_UNLOCK
  472. -- <https://www.sqlite.org/rescode.html#ioerr_unlock> (2058)
  473. -- * SQLITE_IOERR_WRITE <https://www.sqlite.org/rescode.html#ioerr_write>
  474. -- (778)
  475. -- * SQLITE_LOCKED_SHAREDCACHE
  476. -- <https://www.sqlite.org/rescode.html#locked_sharedcache> (262)
  477. -- * SQLITE_NOTICE_RECOVER_ROLLBACK
  478. -- <https://www.sqlite.org/rescode.html#notice_recover_rollback> (539)
  479. -- * SQLITE_NOTICE_RECOVER_WAL
  480. -- <https://www.sqlite.org/rescode.html#notice_recover_wal> (283)
  481. -- * SQLITE_READONLY_CANTLOCK
  482. -- <https://www.sqlite.org/rescode.html#readonly_cantlock> (520)
  483. -- * SQLITE_READONLY_DBMOVED
  484. -- <https://www.sqlite.org/rescode.html#readonly_dbmoved> (1032)
  485. -- * SQLITE_READONLY_RECOVERY
  486. -- <https://www.sqlite.org/rescode.html#readonly_recovery> (264)
  487. -- * SQLITE_READONLY_ROLLBACK
  488. -- <https://www.sqlite.org/rescode.html#readonly_rollback> (776)
  489. -- * SQLITE_WARNING_AUTOINDEX
  490. -- <https://www.sqlite.org/rescode.html#warning_autoindex> (284)
  491. --
  492. --
  493. -- Result Code Meanings
  494. --
  495. -- The meanings for all 83 result code values are shown below, in numeric
  496. -- order.
  497. --
  498. --
  499. -- (0) SQLITE_OK
  500. --
  501. -- The SQLITE_OK result code means that the operation was successful and
  502. -- that there were no errors. Most other result codes indicate an error.
  503. --
  504. --
  505. -- (1) SQLITE_ERROR
  506. --
  507. -- The SQLITE_ERROR result code is a generic error code that is used when
  508. -- no other more specific error code is available.
  509. --
  510. --
  511. -- (2) SQLITE_INTERNAL
  512. --
  513. -- The SQLITE_INTERNAL result code indicates an internal malfunction. In a
  514. -- working version of SQLite, an application should never see this result
  515. -- code. If application does encounter this result code, it shows that
  516. -- there is a bug in the database engine.
  517. --
  518. -- SQLite does not currently generate this result code. However,
  519. -- application-defined SQL functions
  520. -- <https://www.sqlite.org/c3ref/create_function.html> or virtual tables
  521. -- <https://www.sqlite.org/vtab.html>, or VFSes
  522. -- <https://www.sqlite.org/vfs.html>, or other extensions might cause this
  523. -- result code to be returned.
  524. --
  525. --
  526. -- (3) SQLITE_PERM
  527. --
  528. -- The SQLITE_PERM result code indicates that the requested access mode for
  529. -- a newly created database could not be provided.
  530. --
  531. --
  532. -- (4) SQLITE_ABORT
  533. --
  534. -- The SQLITE_ABORT result code indicates that an operation was aborted
  535. -- prior to completion, usually be application request. See also:
  536. -- SQLITE_INTERRUPT <https://www.sqlite.org/rescode.html#interrupt>.
  537. --
  538. -- If the callback function to sqlite3_exec()
  539. -- <https://www.sqlite.org/c3ref/exec.html> returns non-zero, then
  540. -- sqlite3_exec() will return SQLITE_ABORT.
  541. --
  542. -- If a ROLLBACK <https://www.sqlite.org/lang_transaction.html> operation
  543. -- occurs on the same database connection
  544. -- <https://www.sqlite.org/c3ref/sqlite3.html> as a pending read or write,
  545. -- then the pending read or write may fail with an SQLITE_ABORT or
  546. -- SQLITE_ABORT_ROLLBACK
  547. -- <https://www.sqlite.org/rescode.html#abort_rollback> error.
  548. --
  549. -- In addition to being a result code, the SQLITE_ABORT value is also used
  550. -- as a conflict resolution mode <https://www.sqlite.org/c3ref/c_fail.html>
  551. -- returned from the sqlite3_vtab_on_conflict()
  552. -- <https://www.sqlite.org/c3ref/vtab_on_conflict.html> interface.
  553. --
  554. --
  555. -- (5) SQLITE_BUSY
  556. --
  557. -- The SQLITE_BUSY result code indicates that the database file could not
  558. -- be written (or in some cases read) because of concurrent activity by
  559. -- some other database connection
  560. -- <https://www.sqlite.org/c3ref/sqlite3.html>, usually a database
  561. -- connection in a separate process.
  562. --
  563. -- For example, if process A is in the middle of a large write transaction
  564. -- and at the same time process B attempts to start a new write
  565. -- transaction, process B will get back an SQLITE_BUSY result because
  566. -- SQLite only supports one writer at a time. Process B will need to wait
  567. -- for process A to finish its transaction before starting a new
  568. -- transaction. The sqlite3_busy_timeout()
  569. -- <https://www.sqlite.org/c3ref/busy_timeout.html> and
  570. -- sqlite3_busy_handler() <https://www.sqlite.org/c3ref/busy_handler.html>
  571. -- interfaces and the busy_timeout pragma
  572. -- <https://www.sqlite.org/pragma.html#pragma_busy_timeout> are available
  573. -- to process B to help it deal with SQLITE_BUSY errors.
  574. --
  575. -- An SQLITE_BUSY error can occur at any point in a transaction: when the
  576. -- transaction is first started, during any write or update operations, or
  577. -- when the transaction commits. To avoid encountering SQLITE_BUSY errors
  578. -- in the middle of a transaction, the application can use BEGIN IMMEDIATE
  579. -- <https://www.sqlite.org/lang_transaction.html#immediate> instead of just
  580. -- BEGIN <https://www.sqlite.org/lang_transaction.html> to start a
  581. -- transaction. The BEGIN IMMEDIATE
  582. -- <https://www.sqlite.org/lang_transaction.html#immediate> command might
  583. -- itself return SQLITE_BUSY, but if it succeeds, then SQLite guarantees
  584. -- that no subsequent operations on the same database through the next
  585. -- COMMIT <https://www.sqlite.org/lang_transaction.html> will return
  586. -- SQLITE_BUSY.
  587. --
  588. -- See also: SQLITE_BUSY_RECOVERY
  589. -- <https://www.sqlite.org/rescode.html#busy_recovery> and
  590. -- SQLITE_BUSY_SNAPSHOT <https://www.sqlite.org/rescode.html#busy_snapshot>.
  591. --
  592. -- The SQLITE_BUSY result code differs from SQLITE_LOCKED
  593. -- <https://www.sqlite.org/rescode.html#locked> in that SQLITE_BUSY
  594. -- indicates a conflict with a separate database connection
  595. -- <https://www.sqlite.org/c3ref/sqlite3.html>, probably in a separate
  596. -- process, whereas SQLITE_LOCKED
  597. -- <https://www.sqlite.org/rescode.html#locked> indicates a conflict within
  598. -- the same database connection <https://www.sqlite.org/c3ref/sqlite3.html>
  599. -- (or sometimes a database connection with a shared cache
  600. -- <https://www.sqlite.org/sharedcache.html>).
  601. --
  602. --
  603. -- (6) SQLITE_LOCKED
  604. --
  605. -- The SQLITE_LOCKED result code indicates that a write operation could not
  606. -- continue because of a conflict within the same database connection
  607. -- <https://www.sqlite.org/c3ref/sqlite3.html> or a conflict with a
  608. -- different database connection that uses a shared cache
  609. -- <https://www.sqlite.org/sharedcache.html>.
  610. --
  611. -- For example, a DROP TABLE <https://www.sqlite.org/lang_droptable.html>
  612. -- statement cannot be run while another thread is reading from that table
  613. -- on the same database connection
  614. -- <https://www.sqlite.org/c3ref/sqlite3.html> because dropping the table
  615. -- would delete the table out from under the concurrent reader.
  616. --
  617. -- The SQLITE_LOCKED result code differs from SQLITE_BUSY
  618. -- <https://www.sqlite.org/rescode.html#busy> in that SQLITE_LOCKED
  619. -- indicates a conflict on the same database connection
  620. -- <https://www.sqlite.org/c3ref/sqlite3.html> (or on a connection with a
  621. -- shared cache <https://www.sqlite.org/sharedcache.html>) whereas
  622. -- SQLITE_BUSY <https://www.sqlite.org/rescode.html#busy> indicates a
  623. -- conflict with a different database connection, probably in a different
  624. -- process.
  625. --
  626. --
  627. -- (7) SQLITE_NOMEM
  628. --
  629. -- The SQLITE_NOMEM result code indicates that SQLite was unable to
  630. -- allocate all the memory it needed to complete the operation. In other
  631. -- words, an internal call to sqlite3_malloc()
  632. -- <https://www.sqlite.org/c3ref/free.html> or sqlite3_realloc()
  633. -- <https://www.sqlite.org/c3ref/free.html> has failed in a case where the
  634. -- memory being allocated was required in order to continue the operation.
  635. --
  636. --
  637. -- (8) SQLITE_READONLY
  638. --
  639. -- The SQLITE_READONLY result code is returned when an attempt is made to
  640. -- alter some data for which the current database connection does not have
  641. -- write permission.
  642. --
  643. --
  644. -- (9) SQLITE_INTERRUPT
  645. --
  646. -- The SQLITE_INTERRUPT result code indicates that an operation was
  647. -- interrupted by the sqlite3_interrupt()
  648. -- <https://www.sqlite.org/c3ref/interrupt.html> interface. See also:
  649. -- SQLITE_ABORT <https://www.sqlite.org/rescode.html#abort>
  650. --
  651. --
  652. -- (10) SQLITE_IOERR
  653. --
  654. -- The SQLITE_IOERR result code says that the operation could not finish
  655. -- because the operating system reported an I/O error.
  656. --
  657. -- A full disk drive will normally give an SQLITE_FULL
  658. -- <https://www.sqlite.org/rescode.html#full> error rather than an
  659. -- SQLITE_IOERR error.
  660. --
  661. -- There are many different extended result codes for I/O errors that
  662. -- identify the specific I/O operation that failed.
  663. --
  664. --
  665. -- (11) SQLITE_CORRUPT
  666. --
  667. -- The SQLITE_CORRUPT result code indicates that the database file has been
  668. -- corrupted. See the How To Corrupt Your Database Files
  669. -- <https://www.sqlite.org/lockingv3.html#how_to_corrupt> for further
  670. -- discussion on how corruption can occur.
  671. --
  672. --
  673. -- (12) SQLITE_NOTFOUND
  674. --
  675. -- The SQLITE_NOTFOUND result code is used in two contexts. SQLITE_NOTFOUND
  676. -- can be returned by the sqlite3_file_control()
  677. -- <https://www.sqlite.org/c3ref/file_control.html> interface to indicate
  678. -- that the file control opcode
  679. -- <https://www.sqlite.org/c3ref/c_fcntl_busyhandler.html> passed as the
  680. -- third argument was not recognized by the underlying VFS
  681. -- <https://www.sqlite.org/vfs.html>. SQLITE_NOTFOUND can also be returned
  682. -- by the xSetSystemCall() method of an sqlite3_vfs
  683. -- <https://www.sqlite.org/c3ref/vfs.html> object.
  684. --
  685. -- The SQLITE_NOTFOUND result code is also used internally by the SQLite
  686. -- implementation, but those internal uses are not exposed to the application.
  687. --
  688. --
  689. -- (13) SQLITE_FULL
  690. --
  691. -- The SQLITE_FULL result code indicates that a write could not complete
  692. -- because the disk is full. Note that this error can occur when trying to
  693. -- write information into the main database file, or it can also occur when
  694. -- writing into temporary disk files <https://www.sqlite.org/tempfiles.html>.
  695. --
  696. -- Sometimes applications encounter this error even though there is an
  697. -- abundance of primary disk space because the error occurs when writing
  698. -- into temporary disk files <https://www.sqlite.org/tempfiles.html> on a
  699. -- system where temporary files are stored on a separate partition with
  700. -- much less space that the primary disk.
  701. --
  702. --
  703. -- (14) SQLITE_CANTOPEN
  704. --
  705. -- The SQLITE_CANTOPEN result code indicates that SQLite was unable to open
  706. -- a file. The file in question might be a primary database file or on of
  707. -- several temporary disk files <https://www.sqlite.org/tempfiles.html>.
  708. --
  709. --
  710. -- (15) SQLITE_PROTOCOL
  711. --
  712. -- The SQLITE_PROTOCOL result code indicates a problem with the file
  713. -- locking protocol used by SQLite. The SQLITE_PROTOCOL error is currently
  714. -- only returned when using WAL mode <https://www.sqlite.org/wal.html> and
  715. -- attempting to start a new transaction. There is a race condition that
  716. -- can occur when two separate database connections
  717. -- <https://www.sqlite.org/c3ref/sqlite3.html> both try to start a
  718. -- transaction at the same time in WAL mode
  719. -- <https://www.sqlite.org/wal.html>. The loser of the race backs off and
  720. -- tries again, after a brief delay. If the same connection loses the
  721. -- locking race dozens of times over a span of multiple seconds, it will
  722. -- eventually give up and return SQLITE_PROTOCOL. The SQLITE_PROTOCOL error
  723. -- should appear in practice very, very rarely, and only when there are
  724. -- many separate processes all competing intensely to write to the same
  725. -- database.
  726. --
  727. --
  728. -- (16) SQLITE_EMPTY
  729. --
  730. -- The SQLITE_EMPTY result code is not currently used.
  731. --
  732. --
  733. -- (17) SQLITE_SCHEMA
  734. --
  735. -- The SQLITE_SCHEMA result code indicates that the database schema has
  736. -- changed. This result code can be returned from sqlite3_step()
  737. -- <https://www.sqlite.org/c3ref/step.html> for a prepared statement
  738. -- <https://www.sqlite.org/c3ref/stmt.html> that was generated using
  739. -- sqlite3_prepare() <https://www.sqlite.org/c3ref/prepare.html> or
  740. -- sqlite3_prepare16() <https://www.sqlite.org/c3ref/prepare.html>. If the
  741. -- database schema was changed by some other process in between the time
  742. -- that the statement was prepared and the time the statement was run, this
  743. -- error can result.
  744. --
  745. -- If a prepared statement <https://www.sqlite.org/c3ref/stmt.html> is
  746. -- generated from sqlite3_prepare_v2()
  747. -- <https://www.sqlite.org/c3ref/prepare.html> then the statement is
  748. -- automatically re-prepared if the schema changes, up to
  749. -- SQLITE_MAX_SCHEMA_RETRY
  750. -- <https://www.sqlite.org/compile.html#max_schema_retry> times (default:
  751. -- 50). The sqlite3_step() <https://www.sqlite.org/c3ref/step.html>
  752. -- interface will only return SQLITE_SCHEMA back to the application if the
  753. -- failure persists after these many retries.
  754. --
  755. --
  756. -- (18) SQLITE_TOOBIG
  757. --
  758. -- The SQLITE_TOOBIG error code indicates that a string or BLOB was too
  759. -- large. The default maximum length of a string or BLOB in SQLite is
  760. -- 1,000,000,000 bytes. This maximum length can be changed at compile-time
  761. -- using the SQLITE_MAX_LENGTH
  762. -- <https://www.sqlite.org/limits.html#max_length> compile-time option, or
  763. -- at run-time using the sqlite3_limit
  764. -- <https://www.sqlite.org/c3ref/limit.html>(db,SQLITE_LIMIT_LENGTH
  765. -- <https://www.sqlite.org/c3ref/c_limit_attached.html#sqlitelimitlength>,...)
  766. -- interface. The SQLITE_TOOBIG error results when SQLite encounters a
  767. -- string or BLOB that exceeds the compile-time or run-time limit.
  768. --
  769. -- The SQLITE_TOOBIG error code can also result when an oversized SQL
  770. -- statement is passed into one of the sqlite3_prepare_v2()
  771. -- <https://www.sqlite.org/c3ref/prepare.html> interfaces. The maximum
  772. -- length of an SQL statement defaults to a much smaller value of 1,000,000
  773. -- bytes. The maximum SQL statement length can be set at compile-time using
  774. -- SQLITE_MAX_SQL_LENGTH
  775. -- <https://www.sqlite.org/limits.html#max_sql_length> or at run-time using
  776. -- sqlite3_limit
  777. -- <https://www.sqlite.org/c3ref/limit.html>(db,SQLITE_LIMIT_SQL_LENGTH
  778. -- <https://www.sqlite.org/c3ref/c_limit_attached.html#sqlitelimitsqllength>,...).
  779. --
  780. --
  781. --
  782. -- (19) SQLITE_CONSTRAINT
  783. --
  784. -- The SQLITE_CONSTRAINT error code means that an SQL constraint violation
  785. -- occurred while trying to process an SQL statement. Additional
  786. -- information about the failed constraint can be found by consulting the
  787. -- accompanying error message (returned via sqlite3_errmsg()
  788. -- <https://www.sqlite.org/c3ref/errcode.html> or sqlite3_errmsg16()
  789. -- <https://www.sqlite.org/c3ref/errcode.html>) or by looking at the
  790. -- extended error code <https://www.sqlite.org/rescode.html#extrc>.
  791. --
  792. --
  793. -- (20) SQLITE_MISMATCH
  794. --
  795. -- The SQLITE_MISMATCH error code indicates a datatype mismatch.
  796. --
  797. -- SQLite is normally very forgiving about mismatches between the type of a
  798. -- value and the declared type of the container in which that value is to
  799. -- be stored. For example, SQLite allows the application to store a large
  800. -- BLOB in a column with a declared type of BOOLEAN. But in a few cases,
  801. -- SQLite is strict about types. The SQLITE_MISMATCH error is returned in
  802. -- those few cases when the types do not match.
  803. --
  804. -- The rowid <https://www.sqlite.org/lang_createtable.html#rowid> of a
  805. -- table must be an integer. Attempt to set the rowid
  806. -- <https://www.sqlite.org/lang_createtable.html#rowid> to anything other
  807. -- than an integer (or a NULL which will be automatically converted into
  808. -- the next available integer rowid) results in an SQLITE_MISMATCH error.
  809. --
  810. --
  811. -- (21) SQLITE_MISUSE
  812. --
  813. -- The SQLITE_MISUSE return code might be returned if the application uses
  814. -- any SQLite interface in a way that is undefined or unsupported. For
  815. -- example, using a prepared statement
  816. -- <https://www.sqlite.org/c3ref/stmt.html> after that prepared statement
  817. -- has been finalized <https://www.sqlite.org/c3ref/finalize.html> might
  818. -- result in an SQLITE_MISUSE error.
  819. --
  820. -- SQLite tries to detect misuse and report the misuse using this result
  821. -- code. However, there is no guarantee that the detection of misuse will
  822. -- be successful. Misuse detection is probabilistic. Applications should
  823. -- never depend on an SQLITE_MISUSE return value.
  824. --
  825. -- If SQLite ever returns SQLITE_MISUSE from any interface, that means that
  826. -- the application is incorrectly coded and needs to be fixed. Do not ship
  827. -- an application that sometimes returns SQLITE_MISUSE from a standard
  828. -- SQLite interface because that application contains potentially serious
  829. -- bugs.
  830. --
  831. --
  832. -- (22) SQLITE_NOLFS
  833. --
  834. -- The SQLITE_NOLFS error can be returned on systems that do not support
  835. -- large files when the database grows to be larger than what the
  836. -- filesystem can handle. "NOLFS" stands for "NO Large File Support".
  837. --
  838. --
  839. -- (23) SQLITE_AUTH
  840. --
  841. -- The SQLITE_AUTH error is returned when the authorizer callback
  842. -- <https://www.sqlite.org/c3ref/set_authorizer.html> indicates that an SQL
  843. -- statement being prepared is not authorized.
  844. --
  845. --
  846. -- (24) SQLITE_FORMAT
  847. --
  848. -- The SQLITE_FORMAT error code is not currently used by SQLite.
  849. --
  850. --
  851. -- (25) SQLITE_RANGE
  852. --
  853. -- The SQLITE_RANGE error indices that the parameter number argument to one
  854. -- of the sqlite3_bind <https://www.sqlite.org/c3ref/bind_blob.html>
  855. -- routines or the column number in one of the sqlite3_column
  856. -- <https://www.sqlite.org/c3ref/column_blob.html> routines is out of range.
  857. --
  858. --
  859. -- (26) SQLITE_NOTADB
  860. --
  861. -- When attempting to open a file, the SQLITE_NOTADB error indicates that
  862. -- the file being opened does not appear to be an SQLite database file.
  863. --
  864. --
  865. -- (27) SQLITE_NOTICE
  866. --
  867. -- The SQLITE_NOTICE result code is not returned by any C/C++ interface.
  868. -- However, SQLITE_NOTICE (or rather one of its extended error codes
  869. -- <https://www.sqlite.org/rescode.html#extrc>) is sometimes used as the
  870. -- first argument in an sqlite3_log()
  871. -- <https://www.sqlite.org/c3ref/log.html> callback to indicate that an
  872. -- unusual operation is taking place.
  873. --
  874. --
  875. -- (28) SQLITE_WARNING
  876. --
  877. -- The SQLITE_WARNING result code is not returned by any C/C++ interface.
  878. -- However, SQLITE_WARNING (or rather one of its extended error codes
  879. -- <https://www.sqlite.org/rescode.html#extrc>) is sometimes used as the
  880. -- first argument in an sqlite3_log()
  881. -- <https://www.sqlite.org/c3ref/log.html> callback to indicate that an
  882. -- unusual and possibly ill-advised operation is taking place.
  883. --
  884. --
  885. -- (100) SQLITE_ROW
  886. --
  887. -- The SQLITE_ROW result code returned by sqlite3_step()
  888. -- <https://www.sqlite.org/c3ref/step.html> indicates that another row of
  889. -- output is available.
  890. --
  891. --
  892. -- (101) SQLITE_DONE
  893. --
  894. -- The SQLITE_DONE result code indicates that an operation has completed.
  895. -- The SQLITE_DONE result code is most commonly seen as a return value from
  896. -- sqlite3_step() <https://www.sqlite.org/c3ref/step.html> indicating that
  897. -- the SQL statement has run to completion. But SQLITE_DONE can also be
  898. -- returned by other multi-step interfaces such as sqlite3_backup_step()
  899. -- <https://www.sqlite.org/c3ref/backup_finish.html#sqlite3backupstep>.
  900. --
  901. --
  902. -- (261) SQLITE_BUSY_RECOVERY
  903. --
  904. -- The SQLITE_BUSY_RECOVERY error code is an extended error code
  905. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_BUSY
  906. -- <https://www.sqlite.org/rescode.html#busy> that indicates that an
  907. -- operation could not continue because another process is busy recovering
  908. -- a WAL mode <https://www.sqlite.org/wal.html> database file following a
  909. -- crash. The SQLITE_BUSY_RECOVERY error code only occurs on WAL mode
  910. -- <https://www.sqlite.org/wal.html> databases.
  911. --
  912. --
  913. -- (262) SQLITE_LOCKED_SHAREDCACHE
  914. --
  915. -- The SQLITE_LOCKED_SHAREDCACHE error code is an extended error code
  916. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_LOCKED
  917. -- <https://www.sqlite.org/rescode.html#locked> indicating that the locking
  918. -- conflict has occurred due to contention with a different database
  919. -- connection <https://www.sqlite.org/c3ref/sqlite3.html> that happens to
  920. -- hold a shared cache <https://www.sqlite.org/sharedcache.html> with the
  921. -- database connection to which the error was returned. For example, if the
  922. -- other database connection is holding an exclusive lock
  923. -- <https://www.sqlite.org/lockingv3.html#excl_lock> on the database, then
  924. -- the database connection that receives this error will be unable to read
  925. -- or write any part of the database file unless it has the
  926. -- read_uncommitted pragma
  927. -- <https://www.sqlite.org/pragma.html#pragma_read_uncommitted> enabled.
  928. --
  929. -- The SQLITE_LOCKED_SHARECACHE error code works very much like the
  930. -- SQLITE_BUSY <https://www.sqlite.org/rescode.html#busy> error code except
  931. -- that SQLITE_LOCKED_SHARECACHE is for separate database connections that
  932. -- share a cache whereas SQLITE_BUSY is for the much more common case of
  933. -- separate database connections that do not share the same cache. Also,
  934. -- the sqlite3_busy_handler()
  935. -- <https://www.sqlite.org/c3ref/busy_handler.html> and
  936. -- sqlite3_busy_timeout() <https://www.sqlite.org/c3ref/busy_timeout.html>
  937. -- interfaces do not help in resolving SQLITE_LOCKED_SHAREDCACHE conflicts.
  938. --
  939. --
  940. -- (264) SQLITE_READONLY_RECOVERY
  941. --
  942. -- The SQLITE_READONLY_RECOVERY error code is an extended error code
  943. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_READONLY
  944. -- <https://www.sqlite.org/rescode.html#readonly>. The
  945. -- SQLITE_READONLY_RECOVERY error code indicates that a WAL mode
  946. -- <https://www.sqlite.org/wal.html> database cannot be opened because the
  947. -- database file needs to be recovered and recovery requires write access
  948. -- but only read access is available.
  949. --
  950. --
  951. -- (266) SQLITE_IOERR_READ
  952. --
  953. -- The SQLITE_IOERR_READ error code is an extended error code
  954. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_IOERR
  955. -- <https://www.sqlite.org/rescode.html#ioerr> indicating an I/O error in
  956. -- the VFS <https://www.sqlite.org/vfs.html> layer while trying to read
  957. -- from a file on disk. This error might result from a hardware malfunction
  958. -- or because a filesystem came unmounted while the file was open.
  959. --
  960. --
  961. -- (267) SQLITE_CORRUPT_VTAB
  962. --
  963. -- The SQLITE_CORRUPT_VTAB error code is an extended error code
  964. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CORRUPT
  965. -- <https://www.sqlite.org/rescode.html#corrupt> used by virtual tables
  966. -- <https://www.sqlite.org/vtab.html>. A virtual table
  967. -- <https://www.sqlite.org/vtab.html> might return SQLITE_CORRUPT_VTAB to
  968. -- indicate that content in the virtual table is corrupt.
  969. --
  970. --
  971. -- (270) SQLITE_CANTOPEN_NOTEMPDIR
  972. --
  973. -- The SQLITE_CANTOPEN_NOTEMPDIR error code is no longer used.
  974. --
  975. --
  976. -- (275) SQLITE_CONSTRAINT_CHECK
  977. --
  978. -- The SQLITE_CONSTRAINT_CHECK error code is an extended error code
  979. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CONSTRAINT
  980. -- <https://www.sqlite.org/rescode.html#constraint> indicating that a CHECK
  981. -- constraint <https://www.sqlite.org/lang_createtable.html#ckconst> failed.
  982. --
  983. --
  984. -- (283) SQLITE_NOTICE_RECOVER_WAL
  985. --
  986. -- The SQLITE_NOTICE_RECOVER_WAL result code is passed to the callback of
  987. -- sqlite3_log() <https://www.sqlite.org/c3ref/log.html> when a WAL mode
  988. -- <https://www.sqlite.org/wal.html> database file is recovered.
  989. --
  990. --
  991. -- (284) SQLITE_WARNING_AUTOINDEX
  992. --
  993. -- The SQLITE_WARNING_AUTOINDEX result code is passed to the callback of
  994. -- sqlite3_log() <https://www.sqlite.org/c3ref/log.html> whenever automatic
  995. -- indexing <https://www.sqlite.org/optoverview.html#autoindex> is used.
  996. -- This can serve as a warning to application designers that the database
  997. -- might benefit from additional indexes.
  998. --
  999. --
  1000. -- (516) SQLITE_ABORT_ROLLBACK
  1001. --
  1002. -- The SQLITE_ABORT_ROLLBACK error code is an extended error code
  1003. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_ABORT
  1004. -- <https://www.sqlite.org/rescode.html#abort> indicating that an SQL
  1005. -- statement aborted because the transaction that was active when the SQL
  1006. -- statement first started was rolled back. Pending write operations always
  1007. -- fail with this error when a rollback occurs. A ROLLBACK
  1008. -- <https://www.sqlite.org/lang_transaction.html> will cause a pending read
  1009. -- operation to fail only if the schema was changed within the transaction
  1010. -- being rolled back.
  1011. --
  1012. --
  1013. -- (517) SQLITE_BUSY_SNAPSHOT
  1014. --
  1015. -- The SQLITE_BUSY_SNAPSHOT error code is an extended error code
  1016. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_BUSY
  1017. -- <https://www.sqlite.org/rescode.html#busy> that occurs on WAL mode
  1018. -- <https://www.sqlite.org/wal.html> databases when a database connection
  1019. -- tries to promote a read transaction into a write transaction but finds
  1020. -- that another database connection
  1021. -- <https://www.sqlite.org/c3ref/sqlite3.html> has already written to the
  1022. -- database and thus invalidated prior reads.
  1023. --
  1024. -- The following scenario illustrates how an SQLITE_BUSY_SNAPSHOT error
  1025. -- might arise:
  1026. --
  1027. -- 1. Process A starts a read transaction on the database and does one or
  1028. -- more SELECT statement. Process A keeps the transaction open.
  1029. -- 2. Process B updates the database, changing values previous read by
  1030. -- process A.
  1031. -- 3. Process A now tries to write to the database. But process A's view
  1032. -- of the database content is now obsolete because process B has
  1033. -- modified the database file after process A read from it. Hence
  1034. -- process A gets an SQLITE_BUSY_SNAPSHOT error.
  1035. --
  1036. --
  1037. -- (520) SQLITE_READONLY_CANTLOCK
  1038. --
  1039. -- The SQLITE_READONLY_CANTLOCK error code is an extended error code
  1040. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_READONLY
  1041. -- <https://www.sqlite.org/rescode.html#readonly>. The
  1042. -- SQLITE_READONLY_CANTLOCK error code indicates that SQLite is unable to
  1043. -- obtain a read lock on a WAL mode <https://www.sqlite.org/wal.html>
  1044. -- database because the shared-memory file associated with that database is
  1045. -- read-only.
  1046. --
  1047. --
  1048. -- (522) SQLITE_IOERR_SHORT_READ
  1049. --
  1050. -- The SQLITE_IOERR_SHORT_READ error code is an extended error code
  1051. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_IOERR
  1052. -- <https://www.sqlite.org/rescode.html#ioerr> indicating that a read
  1053. -- attempt in the VFS <https://www.sqlite.org/vfs.html> layer was unable to
  1054. -- obtain as many bytes as was requested. This might be due to a truncated
  1055. -- file.
  1056. --
  1057. --
  1058. -- (526) SQLITE_CANTOPEN_ISDIR
  1059. --
  1060. -- The SQLITE_CANTOPEN_ISDIR error code is an extended error code
  1061. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CANTOPEN
  1062. -- <https://www.sqlite.org/rescode.html#cantopen> indicating that a file
  1063. -- open operation failed because the file is really a directory.
  1064. --
  1065. --
  1066. -- (531) SQLITE_CONSTRAINT_COMMITHOOK
  1067. --
  1068. -- The SQLITE_CONSTRAINT_COMMITHOOK error code is an extended error code
  1069. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CONSTRAINT
  1070. -- <https://www.sqlite.org/rescode.html#constraint> indicating that a
  1071. -- commit hook callback <https://www.sqlite.org/c3ref/commit_hook.html>
  1072. -- returned non-zero that thus caused the SQL statement to be rolled back.
  1073. --
  1074. --
  1075. -- (539) SQLITE_NOTICE_RECOVER_ROLLBACK
  1076. --
  1077. -- The SQLITE_NOTICE_RECOVER_ROLLBACK result code is passed to the callback
  1078. -- of sqlite3_log() <https://www.sqlite.org/c3ref/log.html> when a hot
  1079. -- journal <https://www.sqlite.org/lockingv3.html#hotjrnl> is rolled back.
  1080. --
  1081. --
  1082. -- (776) SQLITE_READONLY_ROLLBACK
  1083. --
  1084. -- The SQLITE_READONLY_ROLLBACK error code is an extended error code
  1085. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_READONLY
  1086. -- <https://www.sqlite.org/rescode.html#readonly>. The
  1087. -- SQLITE_READONLY_ROLLBACK error code indicates that a database cannot be
  1088. -- opened because it has a hot journal
  1089. -- <https://www.sqlite.org/lockingv3.html#hotjrnl> that needs to be rolled
  1090. -- back but cannot because the database is readonly.
  1091. --
  1092. --
  1093. -- (778) SQLITE_IOERR_WRITE
  1094. --
  1095. -- The SQLITE_IOERR_WRITE error code is an extended error code
  1096. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_IOERR
  1097. -- <https://www.sqlite.org/rescode.html#ioerr> indicating an I/O error in
  1098. -- the VFS <https://www.sqlite.org/vfs.html> layer while trying to write
  1099. -- into a file on disk. This error might result from a hardware malfunction
  1100. -- or because a filesystem came unmounted while the file was open. This
  1101. -- error should not occur if the filesystem is full as there is a separate
  1102. -- error code (SQLITE_FULL) for that purpose.
  1103. --
  1104. --
  1105. -- (782) SQLITE_CANTOPEN_FULLPATH
  1106. --
  1107. -- The SQLITE_CANTOPEN_FULLPATH error code is an extended error code
  1108. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CANTOPEN
  1109. -- <https://www.sqlite.org/rescode.html#cantopen> indicating that a file
  1110. -- open operation failed because the operating system was unable to convert
  1111. -- the filename into a full pathname.
  1112. --
  1113. --
  1114. -- (787) SQLITE_CONSTRAINT_FOREIGNKEY
  1115. --
  1116. -- The SQLITE_CONSTRAINT_FOREIGNKEY error code is an extended error code
  1117. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CONSTRAINT
  1118. -- <https://www.sqlite.org/rescode.html#constraint> indicating that a
  1119. -- foreign key constraint <https://www.sqlite.org/foreignkeys.html> failed.
  1120. --
  1121. --
  1122. -- (1032) SQLITE_READONLY_DBMOVED
  1123. --
  1124. -- The SQLITE_READONLY_DBMOVED error code is an extended error code
  1125. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_READONLY
  1126. -- <https://www.sqlite.org/rescode.html#readonly>. The
  1127. -- SQLITE_READONLY_DBMOVED error code indicates that a database cannot be
  1128. -- modified because the database file has been moved since it was opened,
  1129. -- and so any attempt to modify the database might result in database
  1130. -- corruption if the processes crashes because the rollback journal
  1131. -- <https://www.sqlite.org/lockingv3.html#rollback> would not be correctly
  1132. -- named.
  1133. --
  1134. --
  1135. -- (1034) SQLITE_IOERR_FSYNC
  1136. --
  1137. -- The SQLITE_IOERR_FSYNC error code is an extended error code
  1138. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_IOERR
  1139. -- <https://www.sqlite.org/rescode.html#ioerr> indicating an I/O error in
  1140. -- the VFS <https://www.sqlite.org/vfs.html> layer while trying to flush
  1141. -- previously written content out of OS and/or disk-control buffers and
  1142. -- into persistent storage. In other words, this code indicates a problem
  1143. -- with the fsync() system call in unix or the FlushFileBuffers() system
  1144. -- call in windows.
  1145. --
  1146. --
  1147. -- (1038) SQLITE_CANTOPEN_CONVPATH
  1148. --
  1149. -- The SQLITE_CANTOPEN_CONVPATH error code is an extended error code
  1150. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CANTOPEN
  1151. -- <https://www.sqlite.org/rescode.html#cantopen> used only by Cygwin VFS
  1152. -- <https://www.sqlite.org/vfs.html> and indicating that the
  1153. -- cygwin_conv_path() system call failed while trying to open a file. See
  1154. -- also: SQLITE_IOERR_CONVPATH
  1155. -- <https://www.sqlite.org/rescode.html#ioerr_convpath>
  1156. --
  1157. --
  1158. -- (1043) SQLITE_CONSTRAINT_FUNCTION
  1159. --
  1160. -- The SQLITE_CONSTRAINT_FUNCTION error code is not currently used by the
  1161. -- SQLite core. However, this error code is available for use by extension
  1162. -- functions.
  1163. --
  1164. --
  1165. -- (1290) SQLITE_IOERR_DIR_FSYNC
  1166. --
  1167. -- The SQLITE_IOERR_DIR_FSYNC error code is an extended error code
  1168. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_IOERR
  1169. -- <https://www.sqlite.org/rescode.html#ioerr> indicating an I/O error in
  1170. -- the VFS <https://www.sqlite.org/vfs.html> layer while trying to invoke
  1171. -- fsync() on a directory. The unix VFS <https://www.sqlite.org/vfs.html>
  1172. -- attempts to fsync() directories after creating or deleting certain files
  1173. -- to ensure that those files will still appear in the filesystem following
  1174. -- a power loss or system crash. This error code indicates a problem
  1175. -- attempting to perform that fsync().
  1176. --
  1177. --
  1178. -- (1299) SQLITE_CONSTRAINT_NOTNULL
  1179. --
  1180. -- The SQLITE_CONSTRAINT_NOTNULL error code is an extended error code
  1181. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CONSTRAINT
  1182. -- <https://www.sqlite.org/rescode.html#constraint> indicating that a NOT
  1183. -- NULL constraint
  1184. -- <https://www.sqlite.org/lang_createtable.html#notnullconst> failed.
  1185. --
  1186. --
  1187. -- (1546) SQLITE_IOERR_TRUNCATE
  1188. --
  1189. -- The SQLITE_IOERR_TRUNCATE error code is an extended error code
  1190. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_IOERR
  1191. -- <https://www.sqlite.org/rescode.html#ioerr> indicating an I/O error in
  1192. -- the VFS <https://www.sqlite.org/vfs.html> layer while trying to truncate
  1193. -- a file to a smaller size.
  1194. --
  1195. --
  1196. -- (1555) SQLITE_CONSTRAINT_PRIMARYKEY
  1197. --
  1198. -- The SQLITE_CONSTRAINT_PRIMARYKEY error code is an extended error code
  1199. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_CONSTRAINT
  1200. -- <https://www.sqlite.org/rescode.html#constraint> indicating that a
  1201. -- PRIMARY KEY constraint
  1202. -- <https://www.sqlite.org/lang_createtable.html#primkeyconst> failed.
  1203. --
  1204. --
  1205. -- (1802) SQLITE_IOERR_FSTAT
  1206. --
  1207. -- The SQLITE_IOERR_FSTAT error code is an extended error code
  1208. -- <https://www.sqlite.org/rescode.html#pve> for SQLITE_IOERR
  1209. -- <https://www.sqlite.org/rescode.html#ioerr…

Large files files are truncated, but you can click here to view the full file