What is SQLITE?

SQLite is a lightweight, embedded relational database that stores data in a single cross-platform file. Unlike client-server databases (MySQL, PostgreSQL), SQLite reads and writes directly to disk files, requiring no separate server process. It's built into Android, iOS, macOS, web browsers, and countless applications.

SQLite supports standard SQL, transactions, indexes, and triggers - all in a library smaller than 600KB. Perfect for mobile apps, desktop software, embedded systems, and development/testing. Despite being "lite," SQLite can handle databases up to 281 TB and is ACID-compliant with exceptional reliability.

Did you know? SQLite is used by billions of devices - it's likely in your phone right now!

History

SQLite was created by D. Richard Hipp for use aboard a US Navy destroyer, where a reliable, lightweight database was needed without network dependencies.

Key Milestones

  • 2000: SQLite 1.0 released (public domain)
  • 2004: SQLite 3.0 with improved format
  • 2007: Adopted by iPhone OS
  • 2010: Android uses SQLite extensively
  • 2013: Most deployed database engine
  • Present: Billions of active installations

Key Features

Core Capabilities

  • Serverless: No configuration needed
  • Zero-Config: Works out of the box
  • Single File: Portable database
  • ACID Compliant: Reliable transactions
  • Small Footprint: ~600 KB library
  • Cross-Platform: Works everywhere
  • Public Domain: No licensing

Common Use Cases

Mobile Apps

iOS, Android data storage

Desktop Apps

Configuration, local data

Browsers

Chrome, Firefox storage

Embedded Systems

IoT, devices, appliances

Advantages

  • No server setup required
  • Single portable file
  • Fast and efficient
  • Extremely reliable
  • Public domain (free)
  • Cross-platform
  • Well-tested and stable
  • Full SQL support

Disadvantages

  • Not for high-concurrency writes
  • No user management/permissions
  • Limited for large-scale apps
  • File-based locking
  • Not ideal for network access
  • Less features than PostgreSQL/MySQL

Technical Information

Format Specifications

Specification Details
File Extension .sqlite, .sqlite3, .db
MIME Type application/vnd.sqlite3
Format Type Relational database
Max Size 281 TB
License Public domain
ACID Yes (full compliance)
Encoding UTF-8, UTF-16

Common Tools

  • CLI: sqlite3 command-line
  • GUI: DB Browser for SQLite, DBeaver
  • Languages: Python, Java, C#, JavaScript (all have bindings)
  • Viewers: SQLiteStudio, Navicat