DISQLite3: Feature Chart

DISQLite3 implements a self-contained, embeddable, zero-configuration SQL database engine for Delphi (Embarcadero / CodeGear / Borland).

DISQLite3 Personal is free to use for personal, educational, and non-commercial use. It is fully functional without restrictions. Compared with DISQLite3 Pro it lacks some advanced functionality and may stay a few versions behind.

DISQLite3 Pro is required for commercial software. It is fully compatible with DISQLite3 Personal – upgrading just needs a simple recompile. It includes all SQLite3 functionality and is regularly updated with latest SQLite developments.

This table lists the features difference in detail:

FeatureDISQLite3 PersonalDISQLite3 Pro
Windows 64-bit support Yes
Support for latest Delphi compilers Yes
SQL-92 Compatible SyntaxYesYes
Single File DatabaseYesYes
Compact, Variable-Length File FormatYesYes
Maximum Database Size2 TB2TB
Maximum Number of TablesUnlimitedUnlimited
Maximum Number of Columns per TableUnlimitedUnlimited
Maximum Length of Column NameUnlimitedUnlimited
Maximum Number of IndexesUnlimitedUnlimited
Maximum Amount of Data per RowUnlimitedUnlimited
Compiles into Application EXE, requires no DLLsYesYes
Indexed Full Text Search with prefix matching (like “run*”) and optional word stemmingYesYes
SQL Parameter Binding (?, :ParamName)YesYes
Database LockingYesYes
Database Transactions and RollbackYesYes
Database Schema PRAGMAsYesYes
Multiple, Simultaneous SELECT OperationsYesYes
Database EncryptionSingle PasswordAny Password
CHECK constraints Yes
SQL ANALYZE command Yes
SQL OR optimization Yes
SQL BETWEEN optimization Yes
SQL LIKE optimization Yes
SQL INSERT allows multiple rows Yes
Default Column ValuesYesYes
Floating-Point SupportYesYes
Date and DateTime FunctionsYesYes
User-Defined Collation Sequences Yes
User-Defined Database Functions and Aggregates Yes
ALTER TABLE SQL Command Yes
Authorization Callback Feature Yes
PRIMARY KEY ColumnsYesYes
Autoincementing PRIMARY KEY columns (may reuse ROWIDs from deleted records)YesYes
AUTOINCREMENT keyword (monotonically increasing ROWIDs, guaranteed to be unique over the entire database lifetime) Yes
VACUUM Clause, Auto-Vacuum Feature Yes
BLOB Literal SQL Syntax X'ABCD' Yes
Incremental BLOB API Yes
CAST ( expr AS type ) Yes
Temporary Tables Yes
Compound SELECTs (UNION, UNION ALL, INTERSECT, EXCEPT) Yes
ON CONFLICT SQL Clause Yes
EXPLAIN SQL Clause Yes
Database Integrity Check Yes
FOREIGN KEY constraints Yes
In-Memory Database Yes
Hot Database Backup Yes
Trace Callback Feature for SQL Logging and Debugging Yes
Commit Transaction Callback Feature Yes
Progress Callback Feature Yes
REINDEX SQL Clause Yes
PRAGMA Database Options Yes
Sub-Queries, Sub-Selects, IN() Operator Yes
Automatic Database Triggers Yes
UTF-8 / Utf8String APIYesYes
UTF-16 / UnicodeString / WideString API Yes
Views, Triggers on Views Yes
ATTACH multiple databases Yes
SQL tracing and performance profiling Yes
Shared Cache between multiple open DB connections Yes
Asynchronous I/O background thread writing Yes
R-Tree index for geospatial data systems Yes
Write-Ahead Logging (WAL) for improved performance and concurrency Yes
Multiple worker threads Yes