SQLite is an in-process library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.
The code for SQLite is in the public domain and is thus free for use for any purpose, commercial or private. SQLite is currently found in more applications than we can count, including several high-profile projects.
SQLite is an embedded SQL database engine. Unlike most other SQL databases, SQLite does not have a separate server process.
SQLite reads and writes directly to ordinary disk files. A complete SQL database with multiple tables, indices, triggers, and views, is contained in a single disk file.
The database file format is cross-platform – you can freely copy a database between 32-bit and 64-bit systems or between big-endian and little-endian architectures.
These features make SQLite a popular choice as an Application File Format.
Think of SQLite not as a replacement for Oracle but as a replacement for fopen() If you need a GUI for database management, you can install NAVICAT.
SQLite is a compact library. With all features enabled, the library size can be less than 300KiB, depending on compiler optimization settings. (Some compiler optimizations such as aggressive function inlining and loop unrolling can cause the object code to be much larger.)
If optional features are omitted, the size of the SQLite library can be reduced below 180KiB.
SQLite can also be made to run in minimal stack space (4KiB) and very little heap (100KiB), making SQLite a popular database engine choice on memory constrained gadgets such as cellphones, PDAs, and MP3 players.
There is a tradeoff between memory usage and speed. SQLite generally runs faster the more memory you give it. Nevertheless, performance is usually quite good even in low-memory environments.
Version 3.8.3:
- Added support for common table expressions and the WITH clause.
- Added the printf() SQL function.
- Added SQLITE_DETERMINISTIC as an optional bit in the 4th argument to the sqlite3_create_function() and related interfaces, providing applications with the ability to create new functions that can be factored out of inner loops when they have constant arguments.
- Add SQLITE_READONLY_DBMOVED error code, returned at the beginning of a transaction, to indicate that the underlying database file has been renamed or moved out from under SQLite.
- Allow arbitrary expressions, including function calls and subqueries, in the filename argument to ATTACH.
- Allow a VALUES clause to be used anywhere a SELECT statement is valid.
- Reseed the PRNG used by sqlite3_randomness(N,P) when invoked with N==0. Automatically reseed after a fork() on unix.
- Enhance the spellfix1 virtual table so that it can search efficiently by rowed.
- Performance enhancements.
- Improvements to the comments in the VDBE byte-code display when running EXPLAIN.
- Add the “%token_class” directive to LEMON parser generator and use it to simplify the grammar.
- Change the LEMON source code to avoid calling C-library functions that OpenBSD considers dangerous. (Ex: sprintf).
- Bug fix: In the command-line shell CSV import feature, do not end a field when an escaped double-quote occurs at the end of a CRLN line.
- SQLITE_SOURCE_ID: “2014-02-03 13:52:03 e816dd924619db5f766de6df74ea2194f3e3b538″
- SHA1 for sqlite3.c: 98a07da78f71b0275e8d9c510486877adc31dbee
- Access the complete release history.
OS X 10.4 or later
Download NowImage may be NSFW.
Clik here to view.
Image may be NSFW.
Clik here to view. Software page:
SQLite 3.8.3 – SQL database connection development library. (Free)