Skip to content

SQLite versions

Gwendal Roué edited this page Sep 19, 2019 · 14 revisions

This wiki page lists SQLite versions and compile options for various Apple SDK.

To access this information on your own device or simulator, run:

let sqliteVersion = String(cString: sqlite3_libversion()!)
let sqliteCompileOptions = DatabaseQueue().inDatabase {
    try! String.fetchAll($0, sql: "PRAGMA COMPILE_OPTIONS").sorted()
}
print("SQLite Version:", sqliteVersion)
print("SQLite Compile Options:", sqliteCompileOptions)

macOS 10.13.5

SQLite Version: 3.19.3
SQLite Compile Options: ["BUG_COMPATIBLE_20160819", "COMPILER=clang-9.0.0", "DEFAULT_CACHE_SIZE=2000", "DEFAULT_CKPTFULLFSYNC", "DEFAULT_JOURNAL_SIZE_LIMIT=32768", "DEFAULT_PAGE_SIZE=4096", "DEFAULT_SYNCHRONOUS=2", "DEFAULT_WAL_SYNCHRONOUS=1", "ENABLE_API_ARMOR", "ENABLE_COLUMN_METADATA", "ENABLE_DBSTAT_VTAB", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_FTS3_TOKENIZER", "ENABLE_FTS4", "ENABLE_FTS5", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_PREUPDATE_HOOK", "ENABLE_RTREE", "ENABLE_SESSION", "ENABLE_SNAPSHOT", "ENABLE_SQLLOG", "ENABLE_UNKNOWN_SQL_FUNCTION", "ENABLE_UPDATE_DELETE_LIMIT", "HAS_CODEC_RESTRICTED", "HAVE_ISNAN", "MAX_LENGTH=2147483645", "MAX_MMAP_SIZE=1073741824", "MAX_VARIABLE_NUMBER=500000", "OMIT_AUTORESET", "OMIT_LOAD_EXTENSION", "STMTJRNL_SPILL=131072", "THREADSAFE=2", "USE_URI"]

iOS 13.0

SQLite Version: 3.28.0
SQLite Compile Options: ["BUG_COMPATIBLE_20160819", "COMPILER=clang-11.0.0", "DEFAULT_CACHE_SIZE=128", "DEFAULT_CKPTFULLFSYNC", "DEFAULT_JOURNAL_SIZE_LIMIT=32768", "DEFAULT_PAGE_SIZE=4096", "DEFAULT_SYNCHRONOUS=2", "DEFAULT_WAL_SYNCHRONOUS=1", "ENABLE_API_ARMOR", "ENABLE_COLUMN_METADATA", "ENABLE_DBSTAT_VTAB", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_FTS3_TOKENIZER", "ENABLE_FTS4", "ENABLE_FTS5", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_PREUPDATE_HOOK", "ENABLE_RTREE", "ENABLE_SESSION", "ENABLE_SNAPSHOT", "ENABLE_SQLLOG", "ENABLE_UNKNOWN_SQL_FUNCTION", "ENABLE_UPDATE_DELETE_LIMIT", "HAS_CODEC_RESTRICTED", "HAVE_ISNAN", "MAX_LENGTH=2147483645", "MAX_MMAP_SIZE=20971520", "MAX_VARIABLE_NUMBER=500000", "OMIT_AUTORESET", "OMIT_LOAD_EXTENSION", "STMTJRNL_SPILL=131072", "SUBSTR_COMPATIBILITY", "THREADSAFE=2", "USE_URI"]

iOS 12.0

SQLite Version: 3.24.0
SQLite Compile Options: ["BUG_COMPATIBLE_20160819", "COMPILER=clang-10.0.0", "DEFAULT_CACHE_SIZE=128", "DEFAULT_CKPTFULLFSYNC", "DEFAULT_JOURNAL_SIZE_LIMIT=32768", "DEFAULT_PAGE_SIZE=4096", "DEFAULT_SYNCHRONOUS=2", "DEFAULT_WAL_SYNCHRONOUS=1", "ENABLE_API_ARMOR", "ENABLE_COLUMN_METADATA", "ENABLE_DBSTAT_VTAB", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_FTS3_TOKENIZER", "ENABLE_FTS4", "ENABLE_FTS5", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_PREUPDATE_HOOK", "ENABLE_RTREE", "ENABLE_SESSION", "ENABLE_SNAPSHOT", "ENABLE_SQLLOG", "ENABLE_UNKNOWN_SQL_FUNCTION", "ENABLE_UPDATE_DELETE_LIMIT", "HAS_CODEC_RESTRICTED", "HAVE_ISNAN", "MAX_LENGTH=2147483645", "MAX_MMAP_SIZE=20971520", "MAX_VARIABLE_NUMBER=500000", "OMIT_AUTORESET", "OMIT_LOAD_EXTENSION", "STMTJRNL_SPILL=131072", "SUBSTR_COMPATIBILITY", "THREADSAFE=2", "USE_URI"]

iOS 11.4

SQLite Version: 3.19.3
SQLite Compile Options: ["BUG_COMPATIBLE_20160819", "COMPILER=clang-9.1.0", "DEFAULT_CACHE_SIZE=128", "DEFAULT_CKPTFULLFSYNC", "DEFAULT_JOURNAL_SIZE_LIMIT=32768", "DEFAULT_PAGE_SIZE=4096", "DEFAULT_SYNCHRONOUS=2", "DEFAULT_WAL_SYNCHRONOUS=1", "ENABLE_API_ARMOR", "ENABLE_COLUMN_METADATA", "ENABLE_DBSTAT_VTAB", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_FTS3_TOKENIZER", "ENABLE_FTS4", "ENABLE_FTS5", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_PREUPDATE_HOOK", "ENABLE_RTREE", "ENABLE_SESSION", "ENABLE_SNAPSHOT", "ENABLE_SQLLOG", "ENABLE_UNKNOWN_SQL_FUNCTION", "ENABLE_UPDATE_DELETE_LIMIT", "HAS_CODEC_RESTRICTED", "HAVE_ISNAN", "MAX_LENGTH=2147483645", "MAX_MMAP_SIZE=20971520", "MAX_VARIABLE_NUMBER=500000", "OMIT_AUTORESET", "OMIT_LOAD_EXTENSION", "STMTJRNL_SPILL=131072", "SUBSTR_COMPATIBILITY", "THREADSAFE=2", "USE_URI"]

iOS 11.0

SQLite Version: 3.19.3
SQLite Compile Options: ["BUG_COMPATIBLE_20160819", "COMPILER=clang-9.0.0", "DEFAULT_CACHE_SIZE=128", "DEFAULT_CKPTFULLFSYNC", "DEFAULT_JOURNAL_SIZE_LIMIT=32768", "DEFAULT_PAGE_SIZE=4096", "DEFAULT_SYNCHRONOUS=2", "DEFAULT_WAL_SYNCHRONOUS=1", "ENABLE_API_ARMOR", "ENABLE_COLUMN_METADATA", "ENABLE_DBSTAT_VTAB", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_FTS3_TOKENIZER", "ENABLE_FTS4", "ENABLE_FTS5", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_PREUPDATE_HOOK", "ENABLE_RTREE", "ENABLE_SESSION", "ENABLE_SNAPSHOT", "ENABLE_SQLLOG", "ENABLE_UNKNOWN_SQL_FUNCTION", "ENABLE_UPDATE_DELETE_LIMIT", "HAS_CODEC_RESTRICTED", "HAVE_ISNAN", "MAX_LENGTH=2147483645", "MAX_MMAP_SIZE=20971520", "MAX_VARIABLE_NUMBER=500000", "OMIT_AUTORESET", "OMIT_LOAD_EXTENSION", "STMTJRNL_SPILL=131072", "SUBSTR_COMPATIBILITY", "THREADSAFE=2", "USE_URI"]

iOS 10.3.1

SQLite Version: 3.16.0
SQLite Compile Options: ["COMPILER=clang-8.1.0", "ENABLE_API_ARMOR", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_RTREE", "ENABLE_UPDATE_DELETE_LIMIT", "HAVE_ISNAN", "MAX_MMAP_SIZE=20971520", "OMIT_AUTORESET", "OMIT_BUILTIN_TEST", "OMIT_LOAD_EXTENSION", "SYSTEM_MALLOC", "THREADSAFE=2"]

iOS 10.2

SQLite Version: 3.14.0
SQLite Compile Options: ["COMPILER=clang-8.0.0 (clang-800.2.34)", "ENABLE_API_ARMOR", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_RTREE", "ENABLE_UPDATE_DELETE_LIMIT", "HAVE_ISNAN", "MAX_MMAP_SIZE=20971520", "OMIT_AUTORESET", "OMIT_BUILTIN_TEST", "OMIT_LOAD_EXTENSION", "SYSTEM_MALLOC", "THREADSAFE=2"]

watchOS 4.3

SQLite Version: 3.19.3
SQLite Compile Options: ["BUG_COMPATIBLE_20160819", "COMPILER=clang-9.1.0", "DEFAULT_CACHE_SIZE=128", "DEFAULT_CKPTFULLFSYNC", "DEFAULT_JOURNAL_SIZE_LIMIT=32768", "DEFAULT_PAGE_SIZE=4096", "DEFAULT_SYNCHRONOUS=2", "DEFAULT_WAL_SYNCHRONOUS=1", "ENABLE_API_ARMOR", "ENABLE_COLUMN_METADATA", "ENABLE_DBSTAT_VTAB", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_FTS3_TOKENIZER", "ENABLE_FTS4", "ENABLE_FTS5", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_PREUPDATE_HOOK", "ENABLE_RTREE", "ENABLE_SESSION", "ENABLE_SNAPSHOT", "ENABLE_SQLLOG", "ENABLE_UNKNOWN_SQL_FUNCTION", "ENABLE_UPDATE_DELETE_LIMIT", "HAS_CODEC_RESTRICTED", "HAVE_ISNAN", "MAX_LENGTH=2147483645", "MAX_MMAP_SIZE=20971520", "MAX_VARIABLE_NUMBER=500000", "OMIT_AUTORESET", "OMIT_LOAD_EXTENSION", "STMTJRNL_SPILL=131072", "SUBSTR_COMPATIBILITY", "THREADSAFE=2", "USE_URI"]

tvOS 12.4

SQLite Version: 3.24.0
SQLite Compile Options: ["BUG_COMPATIBLE_20160819", "COMPILER=clang-10.0.1", "DEFAULT_CACHE_SIZE=128", "DEFAULT_CKPTFULLFSYNC", "DEFAULT_JOURNAL_SIZE_LIMIT=32768", "DEFAULT_PAGE_SIZE=4096", "DEFAULT_SYNCHRONOUS=2", "DEFAULT_WAL_SYNCHRONOUS=1", "ENABLE_API_ARMOR", "ENABLE_COLUMN_METADATA", "ENABLE_DBSTAT_VTAB", "ENABLE_FTS3", "ENABLE_FTS3_PARENTHESIS", "ENABLE_FTS3_TOKENIZER", "ENABLE_FTS4", "ENABLE_FTS5", "ENABLE_JSON1", "ENABLE_LOCKING_STYLE=1", "ENABLE_PREUPDATE_HOOK", "ENABLE_RTREE", "ENABLE_SESSION", "ENABLE_SNAPSHOT", "ENABLE_SQLLOG", "ENABLE_UNKNOWN_SQL_FUNCTION", "ENABLE_UPDATE_DELETE_LIMIT", "HAS_CODEC_RESTRICTED", "HAVE_ISNAN", "MAX_LENGTH=2147483645", "MAX_MMAP_SIZE=20971520", "MAX_VARIABLE_NUMBER=500000", "OMIT_AUTORESET", "OMIT_LOAD_EXTENSION", "STMTJRNL_SPILL=131072", "SUBSTR_COMPATIBILITY", "THREADSAFE=2", "USE_URI"]