Skip to content

SQLite version (bundled with OS)

Mark Glasgow edited this page Jul 27, 2023 · 39 revisions

What version of SQLite does iOS/macOS come with?

Wondering what version of SQLite you're using? With YapDatabase you can run this code:

print("SQLite version = \(yapdbInstance.sqliteVersion)")

Wondering what SQLite features are available? That depends what version of sqlite you use at runtime. You can use the version of SQLite that comes pre-installed with the OS. Or you can explicitly include your own version of sqlite (in order to ensure a particular feature-set). This decision is largely based on what OS versions you're targeting.

iOS Version SQLite Version enable_fts3 enable_json1 enable_fts5
2.2 3.4.0
3.1.3 3.6.12
4.0.2 3.6.22
4.1.0 3.6.23.2
4.2.0 3.6.23.2
5.1.1 3.7.7
6.0.1 3.7.13
7.0 3.7.13
7.0.6 3.7.13
8.0.2 3.7.13
8.1 3.7.13
8.2 3.8.5
8.4 3.8.5
9.0 3.8.8
9.3 3.8.10.2 1 0 0
9.3.1 3.8.10.2
9.3.5 3.8.10.2
10.0 beta 2 3.13.0
10.0 GM 3.14.0
10.2 3.14.0
10.3.1 3.16.0
10.3.4 3.16.0 1 1 0
11.0 3.19.3
11.4 3.19.3 1 1 1
12.0 3.24.0
12.1 3.24.0
12.5.1 3.24.0 1 1 1
12.5.5 3.24.0 1 1 1
13.0 3.28.0
13.1.3 3.28.0
14.1 3.32.3
14.2 3.32.3
14.4 3.32.3 1 1 1
14.5 3.32.3
14.8 3.32.3 1 1 1
15.0 3.36.0
15.1 3.36.0 1 1 1
15.2 3.36.0
15.4.1 3.37.0 1 1 1
15.6.1 3.37.0 1 1 1
16.0 3.39.0 1 1* 1
16.0.3 3.39.0 1 1* 1
16.5.2 3.39.5 1 1* 1

* JSON1 is built-in by default since sqlite v3.38.0.

macOS Version SQLite Version
10.9 3.7.13
10.10 3.8.5
10.10.3 3.8.5
10.11 3.8.10.2
10.12 3.14.0
10.13 3.19.3
10.14.2 3.24.0
12.4 3.37.0
12.5 3.37.0
12.6 3.37.0
13.2 3.39.5

Feel free to add additional data points to the tables. It's a wiki!