sqlite/ext/misc
dan f2f8a3a348 Further work on making the recover extension compatible with the .recover command.
FossilOrigin-Name: f2ac315844d8db1bd1c6950a4fef7c459ddd37cc21a8f3daafa5639fad8118e2
2022-09-03 20:07:39 +00:00
..
amatch.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
anycollseq.c
appendvfs.c Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly 2021-06-15 15:15:40 +00:00
blobio.c Fix an error message on the blobread() extension function so that it says 2019-05-27 11:21:43 +00:00
btreeinfo.c Extend the refactoring into extensions. Clean up stray newlines. 2020-06-19 15:24:12 +00:00
carray.c Fix a problem with the CARRAY extension when the SQLITE_TRANSIENT destructor 2021-10-20 13:48:12 +00:00
carray.h Add the usual "#ifdef __cplusplus" magic to header file ext/misc/carray.h. Also update carray.h/carray.c to use SQLITE_API in the usual way. 2021-07-09 11:52:53 +00:00
cksumvfs.c Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly 2021-06-15 15:15:40 +00:00
closure.c Fix various harmless compiler warnings seen with MSVC. 2019-03-20 05:45:03 +00:00
completion.c Extend the refactoring into extensions. Clean up stray newlines. 2020-06-19 15:24:12 +00:00
compress.c The compress() function should not be deterministic since the same input can 2020-01-17 21:12:22 +00:00
csv.c Avoid ignoring the last line of a csv file if the final field is empty and 2022-07-06 15:44:57 +00:00
dbdata.c Further work on making the recover extension compatible with the .recover command. 2022-09-03 20:07:39 +00:00
dbdump.c Extend the refactoring into extensions. Clean up stray newlines. 2020-06-19 15:24:12 +00:00
decimal.c Fix a potential memory leak following OOM in the decimal extension. 2021-05-03 13:24:30 +00:00
eval.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
explain.c Extend the refactoring into extensions. Clean up stray newlines. 2020-06-19 15:24:12 +00:00
fileio.c New defenses against OOM and corrupt database problems in the CLI. 2021-12-16 17:35:27 +00:00
fossildelta.c Fix the fossildelta.c extension so that it will compile on mingw. 2020-01-09 23:07:21 +00:00
fuzzer.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
ieee754.c Remove stray tab characters from auxiliary source code files. 2022-02-21 13:44:51 +00:00
memstat.c
memtrace.c Fix a harmless compiler warning in the memtrace.c extension. 2019-02-05 19:52:39 +00:00
memvfs.c Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly 2021-06-15 15:15:40 +00:00
mmapwarm.c Extend the refactoring into extensions. Clean up stray newlines. 2020-06-19 15:24:12 +00:00
nextchar.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
noop.c Add the new noop_nd() debugging function to the noop.c extension. 2020-01-14 16:33:07 +00:00
normalize.c Fix harmless compiler warnings that surface in newer versions of GCC. 2020-08-10 14:18:00 +00:00
percentile.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
prefixes.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
qpvtab.c Query planner always honors the aConstraintUsage[].omit flag for the 2022-01-27 21:18:14 +00:00
README.md
regexp.c Fix harmless compiler warning seen with MSVC. 2022-07-21 18:37:50 +00:00
remember.c
rot13.c Fix the rot13.c extension to be deterministic. Add the noop.c extension. 2020-01-08 15:43:29 +00:00
scrub.c Extend the refactoring into extensions. Clean up stray newlines. 2020-06-19 15:24:12 +00:00
series.c Minor fix to the ORDER BY elimination logic in generate_series(). 2021-12-14 18:11:46 +00:00
sha1.c Add the "static" qualifier to some internal functions in code for various SQLite extensions. 2021-12-01 11:03:50 +00:00
shathree.c Fix unimportant typos in comment text. 2022-02-25 11:30:29 +00:00
showauth.c
spellfix.c Fix the series.c and spellfix.c extensions to use SQLITE_VTAB_INNOCUOUS 2020-01-21 12:29:02 +00:00
sqlar.c Fix minor compile issues with optional extensions. 2020-05-25 12:49:58 +00:00
stmt.c Use 64-bit memory allocation APIs in the sqlite_stmt virtual table, to avoid 2022-07-11 19:47:57 +00:00
templatevtab.c
totype.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
uint.c Fix harmless compiler warnings. 2020-05-04 19:52:00 +00:00
unionvtab.c Fix various harmless compiler warnings seen with MSVC. 2019-03-20 05:45:03 +00:00
urifuncs.c Fix the urifuncs.c extension (used for testing and debugging only) so that 2020-01-14 16:50:09 +00:00
uuid.c Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set 2020-01-07 19:45:40 +00:00
vfslog.c Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly 2021-06-15 15:15:40 +00:00
vfsstat.c Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly 2021-06-15 15:15:40 +00:00
vtablog.c
vtshim.c
wholenumber.c In the wholenumber virtual table, increase the cost penalty for running 2021-03-19 17:54:43 +00:00
zipfile.c Fix the zipfile extension so that it knows that a zero-length BLOB returns 2022-03-19 12:48:14 +00:00
zorder.c

Miscellaneous Extensions

This folder contains a collection of smaller loadable extensions. See https://www.sqlite.org/loadext.html for instructions on how to compile and use loadable extensions. Each extension in this folder is implemented in a single file of C code.

Each source file contains a description in its header comment. See the header comments for details about each extension. Additional notes are as follows:

  • carray.c — This module implements the carray table-valued function. It is a good example of how to go about implementing a custom table-valued function.

  • csv.c — A virtual table for reading Comma-Separated-Value (CSV) files.

  • dbdump.c — This is not actually a loadable extension, but rather a library that implements an approximate equivalent to the ".dump" command of the command-line shell.

  • json1.c — Various SQL functions and table-valued functions for processing JSON. This extension is already built into the SQLite amalgamation. See https://sqlite.org/json1.html for additional information.

  • memvfs.c — This file implements a custom VFS that stores an entire database file in a single block of RAM. It serves as a good example of how to implement a simple custom VFS.

  • rot13.c — This file implements the very simple rot13() substitution function. This file makes a good template for implementing new custom SQL functions for SQLite.

  • series.c — This is an implementation of the "generate_series" virtual table. It can make a good template for new custom virtual table implementations.

  • shathree.c — An implementation of the sha3() and sha3_query() SQL functions. The file is named "shathree.c" instead of "sha3.c" because the default entry point names in SQLite are based on the source filename with digits removed, so if we used the name "sha3.c" then the entry point would conflict with the prior "sha1.c" extension.

  • unionvtab.c — Implementation of the unionvtab and swarmvtab virtual tables. These virtual tables allow a single large table to be spread out across multiple database files. In the case of swarmvtab, the individual database files can be attached on demand.

  • zipfile.c — A virtual table that can read and write a ZIP archive.