Why SQLite Uses Bytecode
Every SQL database engine works in roughly the same way: It first translates the input SQL text into a "prepared statement". Then it "executes" the prepared statement to generate a result.
SQLite is a C-language library that implements a small , fast , self-contained , high-reliability , full-featured , SQL database engine. SQLite is the most used database engine in the world. SQLite is built into all mobile phones and most computers and comes bundled inside countless other applications that people use…
Visit sqlite.org → On Hacker News May 2013 – May 2026
Databases & Data 43Software Engineering 30Systems & Performance 9Tech Industry & Business 3Web & Frontend 1Society, Policy & Culture 1
Every SQL database engine works in roughly the same way: It first translates the input SQL text into a "prepared statement". Then it "executes" the prepared statement to generate a result.
JSONB is a rewrite of the SQLite JSON functions that, depending on usage patterns, could be several times faster than the original JSON functions. This enhancement has now landed on trunk .
SQLite is a Recommended Storage Format for datasets according to the US Library of Congress . Further information:
SQLite reads and writes small blobs (for example, thumbnail images) 35% faster¹ than the same blobs can be read from or written to individual files on disk using fread() or fwrite().
An SQLite database file with a defined schema often makes an excellent application file format. Here are a dozen reasons why this is so:
WebAssembly , a.k.a. WASM, is a standard defining a low-level programming language suitable (A) as a target for cross-compilation from many other languages and (B) for running via a virtual machine in a browser. Designed with scriptability via JavaScript in mind, it provides a way to compile C code (among others) to…
200 SQL statements per webpage is excessive for client/server database engines like MySQL, PostgreSQL, or SQL Server.
SQLite does not use the Git version control system. SQLite uses Fossil instead, which is a version control system that was specifically designed and written to support SQLite.
Most SQL database engines are implemented as a separate server process. Programs that want to access the database communicate with the server using some kind of interprocess communication (typically TCP/IP) to send requests to the server and to receive back results. SQLite does not work this way. With SQLite, the…
Suppose the OpenDocument file format, and specifically the "ODP" OpenDocument Presentation format, were built around SQLite. Benefits would include:
"Wal2" mode is very similar to "wal" mode. To change a database to wal2 mode, use the command:
SQLite is not directly comparable to client/server SQL database engines such as MySQL, Oracle, PostgreSQL, or SQL Server since SQLite is trying to solve a different problem.
Since its inception on 2000-05-29, SQLite has been implemented in generic C. C was and continues to be the best language for implementing a software library like SQLite. There are no plans to recode SQLite in any other programming language at this time.
This page provides a high-level summary of changes to SQLite. For more detail, see the Fossil checkin logs at https://sqlite.org/src/timeline and https://sqlite.org/src/timeline?t=release . See the chronology a succinct listing of releases.
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .
An SQLite database is highly resistant to corruption. If an application crash, or an operating-system crash, or even a power failure occurs in the middle of a transaction, the partially written transaction should be automatically rolled back the next time the database file is accessed. The recovery process is fully…
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .
SQLite strives to be flexible regarding the datatype of the content that it stores. For example, if a table column has a type of "INTEGER", then SQLite tries to convert anything inserted into that column into an integer. So an attempt to insert the string '123' results in an integer 123 being inserted. But if the…
The document you seek is not available. Please consider one of the links below or use the Search feature on the right-hand side of the menu bar above.
It appears that the clang-11.0.0 compiler mis-compiles sqlite3.c version 3.32.1. I have checked in a change to SQLite that appears to work around the problem. But there might be other bugs. Therefore, use clang-11.0.0 with caution and test your applications carefully!
This is a briefing on SQLite intended for Linux kernel hackers, and especially those working on Linux filesystems.
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .
Beginning with this release, SQLite will not compile on Windows version prior to Windows Vista (circa 2007), due to a switch to using Slim Reader/Writer Locks (SRWLs) which are faster but which are not available on WindowsXP and earlier.
A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site .